From cc6e836d945da8a39ffddf8b4de63d5eb688840e Mon Sep 17 00:00:00 2001 From: Graham Triggs Date: Mon, 16 Oct 2017 15:48:03 +0100 Subject: [PATCH] [VIVO-1402] Improve search page performance by rewriting OPTIONAL query for person information --- .../searchresult/VIVOIndividualSearchResult.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/VIVOIndividualSearchResult.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/VIVOIndividualSearchResult.java index d12b6dda..3c20552e 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/VIVOIndividualSearchResult.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/web/templatemodels/searchresult/VIVOIndividualSearchResult.java @@ -22,10 +22,12 @@ public class VIVOIndividualSearchResult extends IndividualSearchResult { + "SELECT DISTINCT ?email ?title \n" + "WHERE { \n" + " ?subject obo:ARG_2000028 ?vIndividual . \n" - + " OPTIONAL { ?vIndividual vcard:hasEmail ?vEmail . \n" + + " OPTIONAL { ?subject obo:ARG_2000028 ?vIndividual . \n" + + " ?vIndividual vcard:hasEmail ?vEmail . \n" + " ?vEmail vcard:email ?email . \n" + " } \n" - + " OPTIONAL { ?vIndividual vcard:hasTitle ?vTitle . \n" + + " OPTIONAL { ?subject obo:ARG_2000028 ?vIndividual .\n" + + " ?vIndividual vcard:hasTitle ?vTitle . \n" + " ?vTitle vcard:title ?title . \n" + " } \n" + "} " ;