Skip to content

Commit c290e40

Browse files
committed
Merge branch 'develop' into 6467-optimize-permission-lookups-for-a-user
2 parents c05e592 + 69ebed2 commit c290e40

56 files changed

Lines changed: 1389 additions & 264 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

conf/solr/schema.xml

Lines changed: 40 additions & 38 deletions
Large diffs are not rendered by default.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Extension of API `{id}/versions` and `{id}/versions/{versionId}` with an optional ``excludeMetadataBlocks`` parameter,
2+
that specifies whether the metadataBlocks should be listed in the output. It defaults to ``false``, preserving backward
3+
compatibility. (Note that for a dataset with a large number of versions and/or metadataBlocks having the metadata blocks
4+
included can dramatically increase the volume of the output). See also [the guides](https://dataverse-guide--10778.org.readthedocs.build/en/10778/api/native-api.html#list-versions-of-a-dataset), #10778, and #10171.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
### Backward Incompatible Changes
2+
3+
The [Show Role](https://dataverse-guide--11116.org.readthedocs.build/en/11116/api/native-api.html#show-role) API endpoint was returning 401 Unauthorized when a permission check failed. This has been corrected to return 403 Forbidden instead. That is, the API token is known to be good (401 otherwise) but the user lacks permission (403 is now sent). See also the [API Changelog](https://dataverse-guide--11116.org.readthedocs.build/en/11116/api/changelog.html), #10340, and #11116.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
### Json Printer Bug fix
2+
3+
DatasetFieldTypes in MetadataBlock response that are also a child of another DatasetFieldType were being returned twice. The child DatasetFieldType was included in the "fields" object as well as in the "childFields" of it's parent DatasetFieldType. This fix suppresses the standalone object so only one instance of the DatasetFieldType is returned (in the "childFields" of its parent).
4+
This fix changes the Json output of the API `/api/dataverses/{dataverseAlias}/metadatablocks`
5+
6+
## Backward Incompatible Changes
7+
8+
The Json response of API call `/api/dataverses/{dataverseAlias}/metadatablocks` will no longer include the DatasetFieldTypes in "fields" if they are children of another DatasetFieldType. The child DatasetFieldType will only be included in the "childFields" of it's parent DatasetFieldType.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Support for legacy configuration of a PermaLink PID provider, e.g. using the :Protocol,:Authority, and :Shoulder settings, is fixed.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
### Flyway Script added to Fix File Access Requests when upgrading from Dataverse 6.0
2+
3+
Database update script added to prevent duplicate keys when upgrading from V6.0
4+
This script will delete access requests made after the initial request and will set the initial request to "Created"
5+
6+
See: https://github.com/IQSS/dataverse/issues/10714
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
This release enhances how numerical and date fields are indexed in Solr. Previously, all fields were indexed as English text (text_en), but with this update:
2+
3+
* Integer fields are indexed as `plong`
4+
* Float fields are indexed as `pdouble`
5+
* Date fields are indexed as `date_range` (`solr.DateRangeField`)
6+
7+
Specifically, the following fields were updated:
8+
9+
- coverage.Depth
10+
- coverage.ObjectCount
11+
- coverage.ObjectDensity
12+
- coverage.Redshift.MaximumValue
13+
- coverage.Redshift.MinimumValue
14+
- coverage.RedshiftValue
15+
- coverage.SkyFraction
16+
- coverage.Spectral.CentralWavelength
17+
- coverage.Spectral.MaximumWavelength
18+
- coverage.Spectral.MinimumWavelength
19+
- coverage.Temporal.StartTime
20+
- coverage.Temporal.StopTime
21+
- dateOfCollectionEnd
22+
- dateOfCollectionStart
23+
- dateOfDeposit
24+
- distributionDate
25+
- dsDescriptionDate
26+
- journalPubDate
27+
- productionDate
28+
- resolution.Redshift
29+
- targetSampleActualSize
30+
- timePeriodCoveredEnd
31+
- timePeriodCoveredStart
32+
33+
This change enables range queries when searching from both the UI and the API, such as `dateOfDeposit:[2000-01-01 TO 2014-12-31]` or `targetSampleActualSize:[25 TO 50]`.
34+
35+
Dataverse administrators must update their Solr schema.xml (manually or by rerunning `update-fields.sh`) and reindex all datasets.
36+
37+
Additionally, search result highlighting is now more accurate, ensuring that only fields relevant to the query are highlighted in search results. If the query is specifically limited to certain fields, the highlighting is now limited to those fields as well.
38+
39+
## Upgrade Instructions
40+
41+
7\. Update Solr schema.xml file. Start with the standard v6.5 schema.xml, then, if your installation uses any custom or experimental metadata blocks, update it to include the extra fields (step 7a).
42+
43+
Stop Solr (usually `service solr stop`, depending on Solr installation/OS, see the [Installation Guide](https://guides.dataverse.org/en/6.5/installation/prerequisites.html#solr-init-script)).
44+
45+
```shell
46+
service solr stop
47+
```
48+
49+
Replace schema.xml
50+
51+
```shell
52+
wget https://raw.githubusercontent.com/IQSS/dataverse/v6.5/conf/solr/schema.xml
53+
cp schema.xml /usr/local/solr/solr-9.4.1/server/solr/collection1/conf
54+
```
55+
56+
Start Solr (but if you use any custom metadata blocks, perform the next step, 7a first).
57+
58+
```shell
59+
service solr start
60+
```
61+
62+
7a\. For installations with custom or experimental metadata blocks:
63+
64+
Before starting Solr, update the schema to include all the extra metadata fields that your installation uses. We do this by collecting the output of the Dataverse schema API and feeding it to the `update-fields.sh` script that we supply, as in the example below (modify the command lines as needed to reflect the names of the directories, if different):
65+
66+
```shell
67+
wget https://raw.githubusercontent.com/IQSS/dataverse/v6.5/conf/solr/update-fields.sh
68+
chmod +x update-fields.sh
69+
curl "http://localhost:8080/api/admin/index/solr/schema" | ./update-fields.sh /usr/local/solr/solr-9.4.1/server/solr/collection1/conf/schema.xml
70+
```
71+
72+
Now start Solr.
73+
74+
8\. Reindex Solr
75+
76+
Below is the simplest way to reindex Solr:
77+
78+
```shell
79+
curl http://localhost:8080/api/admin/index
80+
```
81+
82+
The API above rebuilds the existing index "in place". If you want to be absolutely sure that your index is up-to-date and consistent, you may consider wiping it clean and reindexing everything from scratch (see [the guides](https://guides.dataverse.org/en/latest/admin/solr-search-index.html)). Just note that, depending on the size of your database, a full reindex may take a while and the users will be seeing incomplete search results during that window.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Bug Fix:
2+
OAI Client harvesting now uses the correct granularity while re-run a partial harvest (using the `from` parameter). The correct granularity comes from the `Identify` verb request.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fix a bug with My Data where listing dataverses for a user with only rights on harvested dataverses would result in a server error response.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
### Demo/Eval Container Tutorial
2+
3+
The demo/eval container tutorial has been updated to use the Permalink PID provider instead of the FAKE DOI Provider. See also #11107.

0 commit comments

Comments
 (0)