The defaultns:portal1 and its related rootTab resources in the applicationMetadata model no longer appear to be used for anything, but triples are still loaded for them from firsttime data. In the past this was innocuous, but now it interferes with process of reloading the firsttime data at each restart and causes not only unncessary updates but ominous warnings in the log that would be best avoided.
The main issues looks to stem from the fact that while the blank node for the Portal resource is correctly renamed to a URI resource using VIVO's default namespace, the root tab resource connected to it is not. This leaves a number of triples with blank nodes that cause the isIsomorphicWith() test to fail (even though it should be a true isomorphism test that treats blank nodes as variables). The following update that essentially removes and re-adds the same triples is harmless, but in the process the RDFService implementation prints warnings about single-triple blank node deletions, because these are generally unexpected and in other situations can lead to data loss because the blank node is treated as a variable in the deletion.
It seems like the best thing to do would be to remove these triples entirely from the firsttime RDF files and confirm that existing triples are deleted during the first restart under the new code. This should cause the ugly warning messages to occur only once and not on every startup.
Brian Lowe (Migrated from VIVO-1970) said:
The defaultns:portal1 and its related rootTab resources in the applicationMetadata model no longer appear to be used for anything, but triples are still loaded for them from firsttime data. In the past this was innocuous, but now it interferes with process of reloading the firsttime data at each restart and causes not only unncessary updates but ominous warnings in the log that would be best avoided.
The main issues looks to stem from the fact that while the blank node for the Portal resource is correctly renamed to a URI resource using VIVO's default namespace, the root tab resource connected to it is not. This leaves a number of triples with blank nodes that cause the isIsomorphicWith() test to fail (even though it should be a true isomorphism test that treats blank nodes as variables). The following update that essentially removes and re-adds the same triples is harmless, but in the process the RDFService implementation prints warnings about single-triple blank node deletions, because these are generally unexpected and in other situations can lead to data loss because the blank node is treated as a variable in the deletion.
It seems like the best thing to do would be to remove these triples entirely from the firsttime RDF files and confirm that existing triples are deleted during the first restart under the new code. This should cause the ugly warning messages to occur only once and not on every startup.