Liran Zelkha has uploaded a new change for review. Change subject: core: Fix templates search query ......................................................................
core: Fix templates search query This patch improves the performance of the SearchQuery mechanism for the vm_templates view Change-Id: I0ef77348bc6126f5b038e40d949de6d5804def5f Bug-Url: https://bugzilla.redhat.com/1057561 Signed-off-by: [email protected] <[email protected]> --- M backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SyntaxChecker.java M backend/manager/modules/searchbackend/src/test/java/org/ovirt/engine/core/searchbackend/SyntaxCheckerTest.java 2 files changed, 16 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/95/24095/1 diff --git a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SyntaxChecker.java b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SyntaxChecker.java index 434051a..9d20685 100644 --- a/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SyntaxChecker.java +++ b/backend/manager/modules/searchbackend/src/main/java/org/ovirt/engine/core/searchbackend/SyntaxChecker.java @@ -932,6 +932,10 @@ tableNameWithOutTags, primeryKey, syntax.getSearchFrom(), innerQuery); } + } else if (primeryKey.equals("vmt_guid") && wherePhrase.length() == 0) { + inQuery = StringFormat + .format("(SELECT * FROM %1$s ", + tableNameWithOutTags); } else if (primeryKey.equals("vmt_guid") && wherePhrase.length() > 0 && wherePhrase.toString().contains("storage_pool_name") && whereBuilder.size() == 1) { inQuery = StringFormat diff --git a/backend/manager/modules/searchbackend/src/test/java/org/ovirt/engine/core/searchbackend/SyntaxCheckerTest.java b/backend/manager/modules/searchbackend/src/test/java/org/ovirt/engine/core/searchbackend/SyntaxCheckerTest.java index aecc0ad..4a4cb4c 100644 --- a/backend/manager/modules/searchbackend/src/test/java/org/ovirt/engine/core/searchbackend/SyntaxCheckerTest.java +++ b/backend/manager/modules/searchbackend/src/test/java/org/ovirt/engine/core/searchbackend/SyntaxCheckerTest.java @@ -111,4 +111,16 @@ query); } + @Test + public void testTemplates() { + SyntaxChecker chkr = new SyntaxChecker(100); + + ISyntaxChecker curSyntaxChecker = SyntaxCheckerFactory.createBackendSyntaxChecker("foo"); + + SyntaxContainer res = curSyntaxChecker.analyzeSyntaxState("Templates: ", true); + String query = chkr.generateQueryFromSyntaxContainer(res, true); + Assert.assertEquals( + "SELECT * FROM ((SELECT * FROM vm_templates_view ) ORDER BY name ASC ) as T1 OFFSET (1 -1) LIMIT 0", + query); + } } -- To view, visit http://gerrit.ovirt.org/24095 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I0ef77348bc6126f5b038e40d949de6d5804def5f Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: ovirt-engine-3.3 Gerrit-Owner: Liran Zelkha <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
