This is an automated email from the ASF dual-hosted git repository.
sarath pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/atlas.git
The following commit(s) were added to refs/heads/master by this push:
new c177923 ATLAS-3734: Update AtlasPatchRegistry to use graph query
instead index query for retrieving all patch information
c177923 is described below
commit c1779231cfff4a6f6d934a38a5094defed1e07e6
Author: nixonrodrigues <[email protected]>
AuthorDate: Fri Apr 17 10:15:29 2020 +0530
ATLAS-3734: Update AtlasPatchRegistry to use graph query instead index
query for retrieving all patch information
Signed-off-by: Sarath Subramanian <[email protected]>
---
.../repository/patches/AtlasPatchRegistry.java | 24 +++++++++++++---------
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git
a/repository/src/main/java/org/apache/atlas/repository/patches/AtlasPatchRegistry.java
b/repository/src/main/java/org/apache/atlas/repository/patches/AtlasPatchRegistry.java
index a251638..d9ae580 100644
---
a/repository/src/main/java/org/apache/atlas/repository/patches/AtlasPatchRegistry.java
+++
b/repository/src/main/java/org/apache/atlas/repository/patches/AtlasPatchRegistry.java
@@ -25,8 +25,6 @@ import org.apache.atlas.model.patches.AtlasPatch.PatchStatus;
import org.apache.atlas.repository.Constants;
import org.apache.atlas.repository.graphdb.AtlasGraph;
import org.apache.atlas.repository.graphdb.AtlasGraphQuery;
-import org.apache.atlas.repository.graphdb.AtlasIndexQuery;
-import org.apache.atlas.repository.graphdb.AtlasIndexQuery.Result;
import org.apache.atlas.repository.graphdb.AtlasVertex;
import org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2;
import org.apache.atlas.repository.store.graph.v2.AtlasTypeDefGraphStoreV2;
@@ -47,8 +45,10 @@ import java.util.Map;
import static org.apache.atlas.model.patches.AtlasPatch.PatchStatus.FAILED;
import static org.apache.atlas.model.patches.AtlasPatch.PatchStatus.UNKNOWN;
import static org.apache.atlas.repository.Constants.*;
+import static
org.apache.atlas.repository.graphdb.AtlasGraphQuery.ComparisionOperator.EQUAL;
+import static
org.apache.atlas.repository.patches.AtlasPatchHandler.JAVA_PATCH_TYPE;
+import static
org.apache.atlas.repository.store.bootstrap.AtlasTypeDefStoreInitializer.TYPEDEF_PATCH_TYPE;
import static
org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.getEncodedProperty;
-import static
org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.getIndexSearchPrefix;
import static
org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.setEncodedProperty;
import static
org.apache.atlas.repository.store.graph.v2.AtlasTypeDefGraphStoreV2.getCurrentUser;
@@ -168,17 +168,21 @@ public class AtlasPatchRegistry {
}
private static AtlasPatches getAllPatches(AtlasGraph graph) {
- List<AtlasPatch> ret = new ArrayList<>();
- String idxQueryString = getIndexSearchPrefix() + "\"" +
PATCH_ID_PROPERTY_KEY + "\" : (*)";
- AtlasIndexQuery idxQuery = graph.indexQuery(VERTEX_INDEX,
idxQueryString);
+ List<AtlasGraphQuery> orConditions = new ArrayList<>();
+ List<AtlasPatch> ret = new ArrayList<>();
+ AtlasGraphQuery query = graph.query();
+
+ orConditions.add(query.createChildQuery().has(PATCH_TYPE_PROPERTY_KEY,
EQUAL, TYPEDEF_PATCH_TYPE));
+ orConditions.add(query.createChildQuery().has(PATCH_TYPE_PROPERTY_KEY,
EQUAL, JAVA_PATCH_TYPE));
+
+ query.or(orConditions);
try {
- Iterator<Result<Object, Object>> results = idxQuery.vertices();
+ Iterator<AtlasVertex> results = query.vertices().iterator();
while (results != null && results.hasNext()) {
- AtlasVertex patchVertex = results.next().getVertex();
- AtlasPatch patch = toAtlasPatch(patchVertex);
-
+ AtlasVertex patchVertex = results.next();
+ AtlasPatch patch = toAtlasPatch(patchVertex);
ret.add(patch);
}