...
- VIVO 1.11.0
- with logging patch
- with developer properties "loggingRDFService" enabled (see details below)
- with inferencing disabled
- Java -version: 11.0.6
- JAVA_OPTS="${JAVA_OPTS} -Xms2G -Xmx8G -XX:MaxNewSize=2G"
...
The following procedure was taken for each of the test runs:
- Stop VIVO
- Clear triple store prior to test
- Clear Tomcat logs
- Start VIVO
- Log in as vivo_root
- Verify no content in VIVO
- Site Admin -> Add or Remove RDF Data
- From local download: openvivo.ttl
After upload has completed, analyze the VIVO log(s)
- Total time for ingest determined by "grepping" for "ingest" in the vivo.all.log(s)
There should be two lines, like the following:
No Format 2020-02-26 22:45:18,938 INFO [RDFUploadController] Start ingest: 2020-02-27T03:45:18.937813Z 2020-02-27 00:08:27,242 INFO [RDFUploadController] Stop ingest: 2020-02-27T05:08:27.242238Z, total time: PT1H23M8.304425S
- Time for each method invoked on the RDFService implementation
- The attached script is run over a concatenation of all vivo.all.log files created during the ingest process
The script produces a report of total times for each RDFService method, like the following:
No Format calls sec sec/call method ================================================== 8502 483.01 0.0568 changeSetUpdate 1389889 1895.31 0.0014 sparqlConstructQuery 7056 16.72 0.0024 sparqlSelectQuery 4261 3.52 0.0008 sparqlAskQuery 14 0.04 0.0029 isEquivalentGraph Total time: 2398.603 sec (~39 mins, or ~0 hrs)
Enabling developer properties
Update file `$VIVO_HOME/config/developer.properties`, ensuring the following options are enabled/uncommented
Code Block developer.enabled = true developer.loggingRDFService.enable = true developer.loggingRDFService.queryRestriction = .* developer.loggingRDFService.stackRestriction = .*