diff options
-rw-r--r-- | aai-traversal/pom.xml | 47 | ||||
-rw-r--r-- | aai-traversal/src/main/java/org/onap/aai/dbgraphgen/ModelBasedProcessing.java | 39 | ||||
-rw-r--r-- | pom.xml | 6 | ||||
-rw-r--r-- | version.properties | 2 |
4 files changed, 51 insertions, 43 deletions
diff --git a/aai-traversal/pom.xml b/aai-traversal/pom.xml index 5544ae7..69f42ff 100644 --- a/aai-traversal/pom.xml +++ b/aai-traversal/pom.xml @@ -26,7 +26,7 @@ <parent> <groupId>org.onap.aai.traversal</groupId> <artifactId>traversal</artifactId> - <version>1.14.0-SNAPSHOT</version> + <version>1.14.1-SNAPSHOT</version> </parent> <groupId>org.onap.aai.traversal</groupId> <artifactId>aai-traversal</artifactId> @@ -43,17 +43,17 @@ <!-- End of the jacoco plugin properties --> - <!-- Default docker registry that maven fabric plugin will try to pull + <!-- Default docker registry that maven fabric plugin will try to pull from --> <docker.registry>docker.io</docker.registry> <!-- Specifying the docker push registry where the image should be pushed --> - <!-- This value should be overwritten at runtime to wherever need to be + <!-- This value should be overwritten at runtime to wherever need to be pushed to --> <docker.push.registry>localhost:5000</docker.push.registry> <aai.docker.version>1.0.0</aai.docker.version> - <!-- Location where assembly of our scripts, resources and main jar will - be held Check the ${project.artifactId}/src/main/assembly/descriptor.xml + <!-- Location where assembly of our scripts, resources and main jar will + be held Check the ${project.artifactId}/src/main/assembly/descriptor.xml for more info --> <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/</aai.build.directory> <aai.docker.version>1.0.0</aai.docker.version> @@ -61,14 +61,14 @@ <aai.base.image>alpine</aai.base.image> <aai.base.image.version>1.13.4</aai.base.image.version> - <!-- Nexus Proxy Properties and Snapshot Locations Ideally this can be + <!-- Nexus Proxy Properties and Snapshot Locations Ideally this can be overwritten at runtime per internal environment specific values at runtime --> <nexusproxy>https://nexus.onap.org</nexusproxy> <site.path>/content/sites/site/org/onap/aai/traversal/${project.artifactId}/${project.version}</site.path> <release.path>/content/repositories/releases/</release.path> <snapshot.path>/content/repositories/snapshots/</snapshot.path> - <!-- This will be used for the docker images as the default format of maven + <!-- This will be used for the docker images as the default format of maven build has issues --> <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format> @@ -91,7 +91,7 @@ <schema.version.api.default>v29</schema.version.api.default> <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29</schema.version.list> <schema.uri.base.path>/aai</schema.uri.base.path> - + <!-- versions --> <spring.boot.version>2.4.13</spring.boot.version> <spring.version>5.3.13</spring.version> @@ -115,7 +115,7 @@ <skipITs>true</skipITs> </properties> <profiles> - <!-- Docker profile to be used for building docker image and pushing to + <!-- Docker profile to be used for building docker image and pushing to nexus --> <profile> <id>docker</id> @@ -559,8 +559,8 @@ <groupId>com.jayway.jsonpath</groupId> <artifactId>json-path</artifactId> </dependency> - <!-- Do not use activemq-all because they force you to use a specific logging - and they shade it so you can't simply exclude it and when you deploy the + <!-- Do not use activemq-all because they force you to use a specific logging + and they shade it so you can't simply exclude it and when you deploy the jar, you will notice failure --> <dependency> <groupId>org.apache.activemq</groupId> @@ -618,7 +618,7 @@ </exclusion> </exclusions> </dependency> - <!-- Do not use the jersey-client since jersey client 1.0 version clashes + <!-- Do not use the jersey-client since jersey client 1.0 version clashes with jersey 2 which we are using --> <!-- Use this to make http requests instead of jersey 1.0 client --> <dependency> @@ -646,10 +646,10 @@ </exclusion> </exclusions> </dependency> - <!-- Explicitly stating the security spring framework and exclude the bouncy - castle since that is somehow overwriting our p12 file decryption that's built - into java security This will cause the password is incorrect This needs to - be added back if org.bouncy castle dependency sneaks backs in and causing + <!-- Explicitly stating the security spring framework and exclude the bouncy + castle since that is somehow overwriting our p12 file decryption that's built + into java security This will cause the password is incorrect This needs to + be added back if org.bouncy castle dependency sneaks backs in and causing issues with the two way ssl --> <dependency> <groupId>org.springframework.security</groupId> @@ -808,13 +808,10 @@ <type>pom</type> <scope>import</scope> </dependency> - <!-- Keeping guava at 19 is necessary here, since the janusgraph-cql driver in version - 2.3 has a dependency on it. Remove this override, once we are using janusgraph > 0.2.3/tinkerpop > 3.2.3 - --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> - <version>19.0</version> + <version>25.0-jre</version> </dependency> </dependencies> </dependencyManagement> @@ -992,29 +989,24 @@ <plugin> <artifactId>exec-maven-plugin</artifactId> <groupId>org.codehaus.mojo</groupId> + <version>1.6.0</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> + <version>2.10.4</version> </plugin> <plugin> - <groupId>com.mycila</groupId> - <artifactId>license-maven-plugin</artifactId> - </plugin> - - <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <runOrder>alphabetical</runOrder> </configuration> </plugin> - <plugin> <groupId>org.codehaus.groovy.maven</groupId> <artifactId>gmaven-plugin</artifactId> </plugin> - <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> @@ -1071,7 +1063,6 @@ </execution> </executions> </plugin> - <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> diff --git a/aai-traversal/src/main/java/org/onap/aai/dbgraphgen/ModelBasedProcessing.java b/aai-traversal/src/main/java/org/onap/aai/dbgraphgen/ModelBasedProcessing.java index aa4fdad..005d3dc 100644 --- a/aai-traversal/src/main/java/org/onap/aai/dbgraphgen/ModelBasedProcessing.java +++ b/aai-traversal/src/main/java/org/onap/aai/dbgraphgen/ModelBasedProcessing.java @@ -26,6 +26,8 @@ import com.google.common.util.concurrent.TimeLimiter; import com.google.common.util.concurrent.UncheckedTimeoutException; import java.util.*; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal; @@ -44,6 +46,8 @@ import org.onap.aai.introspection.Introspector; import org.onap.aai.introspection.Loader; import org.onap.aai.introspection.exceptions.AAIUnknownObjectException; import org.onap.aai.logging.ErrorLogHelper; +import org.onap.aai.parsers.exceptions.AAIIdentityMapParseException; +import org.onap.aai.parsers.exceptions.AmbiguousMapAAIException; import org.onap.aai.query.builder.QueryBuilder; import org.onap.aai.schema.enums.PropertyMetadata; import org.onap.aai.serialization.db.DBSerializer; @@ -380,7 +384,7 @@ public class ModelBasedProcessing { } List<ResultSet> resultList = new ArrayList<>(); - TimeLimiter limiter = new SimpleTimeLimiter(); + TimeLimiter limiter = SimpleTimeLimiter.create(Executors.newCachedThreadPool()); try { resultList = limiter.callWithTimeout(new AaiCallable<List<ResultSet>>() { @@ -389,10 +393,17 @@ public class ModelBasedProcessing { modelInvId_f, modelName_f, topNodeType_f, startNodeFilterArrayOfHashes_f, apiVer_f); } - }, timeLimitSec, TimeUnit.SECONDS, true); - } catch (AAIException ae) { - // Re-throw AAIException so we get can tell what happened internally - throw ae; + }, timeLimitSec, TimeUnit.SECONDS); + } catch (ExecutionException ex) { + if(ex.getCause() instanceof AAIIdentityMapParseException) { + throw (AAIIdentityMapParseException) ex.getCause(); + } + if(ex.getCause() instanceof AmbiguousMapAAIException) { + throw (AmbiguousMapAAIException) ex.getCause(); + } + if(ex.getCause() instanceof AAIException) { + throw (AAIException) ex.getCause(); + } } catch (UncheckedTimeoutException ute) { throw new AAIException("AAI_6140", "Query Processing Limit exceeded. (limit = " + timeLimitSec + " seconds)"); @@ -1036,7 +1047,7 @@ public class ModelBasedProcessing { } List<ResultSet> resultList = new ArrayList<>(); - TimeLimiter limiter = new SimpleTimeLimiter(); + TimeLimiter limiter = SimpleTimeLimiter.create(Executors.newCachedThreadPool()); try { resultList = limiter.callWithTimeout(new AaiCallable<List<ResultSet>>() { public List<ResultSet> process() throws AAIException { @@ -1044,11 +1055,17 @@ public class ModelBasedProcessing { startNodeFilterArrayOfHashes_f, apiVer_f, secondaryFilterCutPoint_f, secondaryFilterHash_f); } - }, timeLimitSec, TimeUnit.SECONDS, true); - - } catch (AAIException ae) { - // Re-throw AAIException so we get can tell what happened internally - throw ae; + }, timeLimitSec, TimeUnit.SECONDS); + } catch (ExecutionException ex) { + if(ex.getCause() instanceof AAIIdentityMapParseException) { + throw (AAIIdentityMapParseException) ex.getCause(); + } + if(ex.getCause() instanceof AmbiguousMapAAIException) { + throw (AmbiguousMapAAIException) ex.getCause(); + } + if(ex.getCause() instanceof AAIException) { + throw (AAIException) ex.getCause(); + } } catch (UncheckedTimeoutException ute) { throw new AAIException("AAI_6140", "Query Processing Limit exceeded. (limit = " + timeLimitSec + " seconds)"); @@ -26,11 +26,11 @@ <parent> <groupId>org.onap.aai.aai-common</groupId> <artifactId>aai-parent</artifactId> - <version>1.14.0</version> + <version>1.14.1</version> </parent> <groupId>org.onap.aai.traversal</groupId> <artifactId>traversal</artifactId> - <version>1.14.0-SNAPSHOT</version> + <version>1.14.1-SNAPSHOT</version> <name>aai-traversal</name> <packaging>pom</packaging> <modules> @@ -41,7 +41,7 @@ Nexus Proxy Properties and Snapshot Locations Ideally this can be overwritten at runtime per internal environment specific values at runtime --> - <aai.common.version>1.14.0</aai.common.version> + <aai.common.version>1.14.1</aai.common.version> <nexusproxy>https://nexus.onap.org</nexusproxy> <site.path>/content/sites/site/org/onap/aai/traversal/${project.artifactId}/${project.version}</site.path> <release.path>/content/repositories/releases/</release.path> diff --git a/version.properties b/version.properties index 5dfb2dd..654a031 100644 --- a/version.properties +++ b/version.properties @@ -5,7 +5,7 @@ major_version=1 minor_version=14 -patch_version=0 +patch_version=1 base_version=${major_version}.${minor_version}.${patch_version} |