Special character "=" not allowed in file path but necessary for parquet data with partitions
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.1k
- Forks
- 564
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 29
Description
What happens?
- parquet datasets partitions its data into subsets and stores each subset in key-value pair filenames with an "=", as in
state="MA". However, dataverse does not appear to allow = as a subdirectory name. Moreover it will silently convert "=" in subdirectory paths into periods ".". So, when an unknowing user downloads the parquet file with the hierarchy, it will be a corrupt parquet file that cannot be read in (manually renaming the post-downloaded subdirectory names results in a readable file).
What steps does it take to reproduce the issue? / Which page(s) does it occurs on?
- See my dataverse https://demo.dataverse.org/dataset.xhtml?persistentId=doi%3A10.70122%2FFK2%2FDDNIMS
- See also my file pre-unzipping that I tried to upload, attached.
mwe_parq.zip
When does this issue occur?
- When a parquet format with partitions is uploaded to dataverse.
- One way to avoid the issue entirely is to double-zip (https://github.com/IQSS/dataverse/issues/8029#issuecomment-1572986562) the parquet before uploading so the partitions do not unzip. An example appears in my dataverse. However, that is cumbersome to do manually and it also defeats some of the purpose of partitioning.
What did you expect to happen?
- Allow Dataverse to retain the "=" in a filepath, or at least throw a warning that it changed the filepath.
Which version of Dataverse are you using?
- Latest Harvard Dataverse and Demo Dataverse
Screenshots:
See one in
https://github.com/IQSS/dataverse/issues/9897#issuecomment-2401173085
Are you thinking about creating a pull request for this issue?
I cannot
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no source file, test, or entry point. Start by reproducing the behavior with the linked demo dataset and mwe_parq.zip, then trace file-path handling during upload and download. Done means partition paths retain "=" or Dataverse clearly warns when changing them.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100