...
The procedure here describes testing an upgrade from an earlier version of VIVO. If you have questions, please post to vivo-tech@googlegroups.com
What has changed
Jena 3 improves Jena's RDF 1.1 compatibility. Specifically, literal values are always stored internally with datatypes. "Untyped" string literals are the same as the identical value typed as xsd:string. See the following document for more information
...
As a result, we recommend that input process for VIVO do not include xsd:string datatypes on literals. While they may be correct, and will result in the literal value being typed as xsd:string internally, export processes will not include the xsd:string on output.
In RDF 1.0, a type could not be asserted with a language identifier. In RDF 1.1, a type can be asserted with a language identifier. Untyped input with language identifiers were left as untyped internally in RDF 1.0. In RDF 1.1, untyped input with language identifiers are assumed to have type rdf:langString. Exports from VIVO for triples with language tags will never include the rdf:langString datatype. Literal values with language tags are always assumed to be rdf:langString.
As a result, we recommend that input process for VIVO do not include datatypes on triples with language types. While asserting rdf:langString is correct, and will result in the literal value being typed as rdf:langString internally, export processes will not include the rdf:langString on output.
Code, tools, parsers, utilities based on RDF 1.0 should not be used with Vitro and VIVO 1.10. All code, tools, parsers, and utilities must support RDF 1.1.
On start-up of version 1.10, the triple store is checked to insure that it has been upgraded. If untyped literals are found in the triple store, an error message will appear in the browser and the application will not start. The test applies only to the content store. It is possible that your content store could pass this test, but your configuration triple store remains incompatible with Jens Jena 3 and RDF 1.1. In such a case, your application may become unstable. The procedure below will upgrade both your configuration triple store and your content triple store.
Upgrade procedure
It is required that you reload any SDB and TDB triple stores when upgrading to Jena 3 using the procedure and tools described below.
Warning | ||
---|---|---|
| ||
VIVO/Vitro uses two triple stores – a configuration triple store typically stored using TDB in <vivo home dir>/tdbModels, and a content triple store typically stored using SDB in MySQL. The procedures described below assume that you are running this standard configuration. If you are not, you will need a custom procedure for upgrading your triple stores. |
Step 1: Shutdown Tomcat
Use your local procedure for shutting down Tomcat. Tomcat must be shut down for the upgrade process to proceed.
Step 2: Install VIVO 1.10
Download 1.10 beta 10 beta from GitHub. Follow the instructions for installing VIVO. Stop prior to starting Tomcat.
Step 3: Export the triple stores
Warning |
---|
|
...
jena2tools will then extract the contents of the available triple stores, and dump them to <vivo home dir>/dumps in TriG format.
Step 4: Inspect the dumps
Check <vivo home dir>/dumps to confirm that the triple stores have been exported. Inpect the dump files to insure they contain the data from your triple stores.
Step 5: Empty your triple stores
Drop all tables in your SDB database as named in your runtime.properties. You may drop your database and recreate it as empty, just as you would for creating a new VIVO install. jena3tools must find an empty database (no tables) as named in your runtime.properties and will recreate your SDB triple store as tables in the named database using the triples produced by jena2tools and stored in <vivo home dir>/dumps/content.trig
Delete all files in <vivo home dir>/tdbModels. Jena3tools will rebuilt your rebuild your configuration tdbModels based on the content created by jena2tools and stored in <vivo home dir>/dumps/configuration.trig
Step 6: Import the triple stores
Having exported your Jena 2 triple stores, you can reload them using jena3tools, also available with VIVO 1.10, specifying the import command.
...
jena3tools will be present in <vivo home dir>/bin when you install the 1.1010 beta. 0 beta. Alternatively, it can be downloaded from GitHub.
Step 7: Start Tomcat
Using your normal procedure, start Tomcat. Perform your usual start-up tests – login, view pages, conduct searches, examine visualizations, perform queries. Please report your findings to vivo-tech@googlegroups.com
Testing notes
When starting Tomcat, does Vitro / VIVO start as expected?
The most important thing to test is the upgrade process of Jena 2 to Jena 3. After upgrading, does the application behave as expected? Can you see everything in VIVO, log in, edit content, etc.When restarting the application server, does Vitro / VIVO start as expected? In particular, when you make no changes to the RDF file graphs, does the application start without isomorphism failures and reloading RDF? (It may be the case that it does so on the first time you start)use the system admin pages, see visualizations, conduct searches, etc.
Reporting
If you are testing the Vitro / VIVO alpha beta release, can I please ask that you report your findings - good or bad. In all cases, can you say:
- What version of Vitro / VIVO you upgraded from?
- What storage was used for the content triple store (SDB or TDB)?
- Did it work as expected? If not, what happened?
Please report your findings on the vivo-tech@googlegroups.com mailing list.
Files
https://github.com/vivo-project/VIVO/releases
...