Overview:
This release supports ORCiD schema v2.0 in accordance with their roadmap: https://members.orcid.org/api/news/xsd-20-update. It also fixes a bug on the file landing page, allowing users to request access to restricted files.
- Support ORCiD schema v2.0
- Fix a bug on the file landing page preventing users from requesting access to restricted files from that page
- Include additional Postgres drivers to support newer versions of Postgres with recommended drivers
For the complete list of issues, see the 4.8.3 milestone in Github.
For help with upgrading, installing, or general questions please email support@dataverse.harvard.edu.
Installation:
If this is a new installation, please see our Installation Guide.
Upgrade:
If you are upgrading from v4.x, you must upgrade to each intermediate version before installing this version. When upgrading from the previous version, you will need to do the following:
- Undeploy the previous version.
- /glassfish4/bin/asadmin list-applications
- /glassfish4/bin/asadmin undeploy dataverse
- Stop glassfish and remove the generated directory, start
- service glassfish stop
- remove the generated directory: rm -rf /usr/local/glassfish4/glassfish/domains/domain1/generated
- service glassfish start
- Deploy this version.
- /glassfish4/bin/asadmin deploy dataverse-4.8.3.war
If you previously had ORCiD authentication configured, please note that we have upgraded to the v2.0 API in this release. To be in sync with their upgrade policy, you must update the ORCiD authentication provider information, see http://guides.dataverse.org/en/4.8.3/installation/oauth2.html#dataverse-side .
Using the v2.0 orcid.json file, http://guides.dataverse.org/en/4.8.3/_downloads/orcid.json , enter the client id and secret and then update the provider information:
curl -X POST -H 'Content-type: application/json' --upload-file orcid.json http://localhost:8080/api/admin/authenticationProviders
After updating this information, restart glassfish.
If you are upgrading from v3.x, you will need to perform a migration to v4.x since our application was redesigned and the database schema are completely different. This is a significant undertaking. Please contact us (support at dataverse.org) before beginning. Also refer to our migration google group for additional support and information: https://groups.google.com/forum/#!forum/dataverse-migration-wg
IMPORTANT: If you are running TwoRavens with your dataverse:
Make sure the two applications are using the same version of the "pre-processed statistics" R code. Compare the 2 files:
On the TwoRavens side:
.../dataexplore/rook/preprocess/preprocess.R
On the Dataverse side:
.../applications/dataverse-4.8.3/WEB-INF/classes/edu/harvard/iq/dataverse/rserve/scripts/preprocess.R
If they are different, replace the Dataverse copy with the TwoRavens copy (i.e., the TwoRavens version wins!).
And, also, remove all the already-generated pre-processed fragments in your Dataverse file directory, for example:
cd [files directory]
rm -f `find . -name '*.prep'`
If the two copies are the same, you don't need to do any of this.
Please note that this is a temporary measure, we are working on a fix that will make the two applications resolve code version conflicts like this automatically.
TROUBLESHOOTING NOTE:
Potential issue with the PostgreSQL JDBC driver version incompatibility causing the Dataverse timer to malfunction.
Dataverse uses the EJB timer perform scheduled tasks: harvesting from remote servers and keeping the local OAI sets and metadata expor
ts updated. We've discovered that this timer may stop working if the version of the JDBC driver used by Glassfish is no longer in sync
with the version of the PostgreSQL database. The symptoms: if your scheduled harvests are no longer running and there are error messa
ges in the server.log with the following lines in them:
Internal Exception: java.io.StreamCorruptedException: invalid stream header ...
Exception Description: Could not deserialize object from byte array ...
it most likely means that your GDBC driver needs to be upgraded. For example, if you are running the version 9.3 of PostgresQL, make s
ure you have the driver postgresql-9.3-1104.jdbc4.jar in your /glassfish/lib directory. The correct version of the d
river for your version of PostgreSQL can be found at https://jdbc.postgresql.org/download.html. If you have an older driver in glassf
ish/lib, stop Glassfish, remove the old driver and replace it with the new version. We recommend that you remove the entire contents o
f /glassfish/domains/domain1/generated/ before starting Glassfish again.