From 968dfdaf9372065f885efb4a94d81b40ce6ec06f Mon Sep 17 00:00:00 2001 From: qqmyers Date: Thu, 19 Dec 2024 12:41:00 -0500 Subject: [PATCH] Apply suggestions from code review Co-authored-by: Philip Durbin --- doc/release-notes/11095-fix-extcvoc-indexing.md | 10 +++++----- .../source/admin/metadatacustomization.rst | 2 +- doc/sphinx-guides/source/installation/config.rst | 2 +- src/main/java/edu/harvard/iq/dataverse/api/Index.java | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/release-notes/11095-fix-extcvoc-indexing.md b/doc/release-notes/11095-fix-extcvoc-indexing.md index 1459b88c122..f4931d81263 100644 --- a/doc/release-notes/11095-fix-extcvoc-indexing.md +++ b/doc/release-notes/11095-fix-extcvoc-indexing.md @@ -1,7 +1,7 @@ -Some External Controlled Vocabulary scripts/configurations, when used on a metadata field that is single valued could result -in indexing failure for the dataset (e.g. when the the script tried to index both the identifier and name of the identified entity for indexing). -Dataverse has been updated to correctly indicate the need for a multi-valued solr field in these cases in the call to /api/admin/index/solr/schema. +Some External Controlled Vocabulary scripts/configurations, when used on a metadata field that is single-valued could result +in indexing failure for the dataset (e.g. when the script tried to index both the identifier and name of the identified entity for indexing). +Dataverse has been updated to correctly indicate the need for a multi-valued Solr field in these cases in the call to /api/admin/index/solr/schema. Configuring the Solr schema and the update-fields.sh script as usually recommended when using custom metadata blocks will resolve the issue. -The overall release notes should include a solr update (which hopefully is required by an update to 9.7.0 anyway) and our standard instructions -should change to recommending use of the udpate-fields.sh script when using custom metadatablocks *and/or external vocabulary scripts*. +The overall release notes should include a Solr update (which hopefully is required by an update to 9.7.0 anyway) and our standard instructions +should change to recommending use of the update-fields.sh script when using custom metadatablocks *and/or external vocabulary scripts*. diff --git a/doc/sphinx-guides/source/admin/metadatacustomization.rst b/doc/sphinx-guides/source/admin/metadatacustomization.rst index eee83260804..2a104354af9 100644 --- a/doc/sphinx-guides/source/admin/metadatacustomization.rst +++ b/doc/sphinx-guides/source/admin/metadatacustomization.rst @@ -585,7 +585,7 @@ These are all defined in the :ref:`:CVocConf <:CVocConf>` setting as a JSON arra The scripts required can be hosted locally or retrieved dynamically from https://gdcc.github.io/ (similar to how dataverse-previewers work). Since external vocabulary scripts can change how fields are indexed (storing an identifier and name and/or values in different languages), -updating the solr schema as described in :ref:`update-solr-schema` should be done after adding new scripts to your configuration. +updating the Solr schema as described in :ref:`update-solr-schema` should be done after adding new scripts to your configuration. Please note that in addition to the :ref:`:CVocConf` described above, an alternative is the :ref:`:ControlledVocabularyCustomJavaScript` setting. diff --git a/doc/sphinx-guides/source/installation/config.rst b/doc/sphinx-guides/source/installation/config.rst index a310e9f96f8..a653a100c89 100644 --- a/doc/sphinx-guides/source/installation/config.rst +++ b/doc/sphinx-guides/source/installation/config.rst @@ -4654,7 +4654,7 @@ The commands below should give you an idea of how to load the configuration, but ``curl -X PUT --upload-file cvoc-conf.json http://localhost:8080/api/admin/settings/:CVocConf`` Since external vocabulary scripts can change how fields are indexed (storing an identifier and name and/or values in different languages), -updating the solr schema as described in :ref:`update-solr-schema` should be done after adding new scripts to your configuration. +updating the Solr schema as described in :ref:`update-solr-schema` should be done after adding new scripts to your configuration. .. _:ControlledVocabularyCustomJavaScript: diff --git a/src/main/java/edu/harvard/iq/dataverse/api/Index.java b/src/main/java/edu/harvard/iq/dataverse/api/Index.java index 0b3e3ac52d1..bc9a8ae692b 100644 --- a/src/main/java/edu/harvard/iq/dataverse/api/Index.java +++ b/src/main/java/edu/harvard/iq/dataverse/api/Index.java @@ -475,7 +475,7 @@ public String getSolrSchema() { */ logger.info("email type detected (" + nameSearchable + ") See also https://github.com/IQSS/dataverse/issues/759"); } - String multivalued = Boolean.toString(datasetFieldType.getSolrField().isAllowedToBeMultivalued()|| cvocTermUriMap.containsKey(datasetFieldType.getId())); + String multivalued = Boolean.toString(datasetFieldType.getSolrField().isAllowedToBeMultivalued() || cvocTermUriMap.containsKey(datasetFieldType.getId())); // sb.append(" \n"); }