Skip to content

Commit

Permalink
Implement support for JanusGraph 0.2.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Alexander Patrikalakis committed Jul 18, 2018
1 parent be51ad2 commit 0219ddc
Show file tree
Hide file tree
Showing 9 changed files with 55 additions and 60 deletions.
40 changes: 18 additions & 22 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,54 +2,50 @@ language: java
sudo: required
dist: trusty
jdk:
- oraclejdk8
- openjdk8
cache:
directories:
- "${HOME}/.m2"
env:
matrix:
#32 minutes
#32 minutes
- MODULE="MultiStoreTest" CATEGORY="MultiDynamoDBStoreTestCategory"
#22 minutes
#22 minutes
- MODULE="MultiVertexCentricQuery" CATEGORY="IsolateMultiVertexCentricQuery"
#17.5 minutes
- MODULE="SingleGraphTest" CATEGORY="SingleDynamoDBGraphTestCategory"
#17.3 minutes
- MODULE="SingleStoreTest" CATEGORY="SingleDynamoDBStoreTestCategory"
#16.5 minutes
- MODULE="MultiLargeJointIndexRetrieval" CATEGORY="IsolateMultiLargeJointIndexRetrieval"
#15.7 minutes
- MODULE="MultiOLAPTest" CATEGORY="MultiDynamoDBOLAPTestCategory"
#15.7 minutes - currently MultiOLAPTest is flaky
# - MODULE="MultiOLAPTest" CATEGORY="MultiDynamoDBOLAPTestCategory"
#13.5 minutes
- MODULE="MultiGraphTest" CATEGORY="MultiDynamoDBGraphTestCategory"
#11.8 minutes
- MODULE="MultiEdgesExceedCacheSize" CATEGORY="IsolateMultiEdgesExceedCacheSize"
#12 minutes
#12 minutes
- MODULE="SingleIdAuthorityLogStore" CATEGORY="SingleIdAuthorityLogStoreCategory"
#11 minutes
#11 minutes
- MODULE="MultiIdAuthorityLogStore" CATEGORY="MultiIdAuthorityLogStoreCategory"
#9 minutes
#9 minutes
- MODULE="SingleOLAPTest" CATEGORY="SingleDynamoDBOLAPTestCategory"
#8.7 minutes
#8.7 minutes
- MODULE="MultiConcurrentGetSliceAndMutate" CATEGORY="IsolateMultiConcurrentGetSliceAndMutate"
#8.5 minutes
#8.5 minutes
- MODULE="RemainingTestsCategory" CATEGORY="IsolateRemainingTestsCategory"
#6.5 minutes
#6.5 minutes
- MODULE="MultiConcurrentGetSlice" CATEGORY="IsolateMultiConcurrentGetSlice"
#6.4 minutes
#6.4 minutes
- MODULE="SingleConcurrentGetSliceAndMutate" CATEGORY="IsolateSingleConcurrentGetSliceAndMutate"
#4.8 minutes
#6 minutes
- MODULE="GraphSimpleLogTest" CATEGORY="GraphSimpleLogTestCategory"
#4.8 minutes
- MODULE="SingleConcurrentGetSlice" CATEGORY="IsolateSingleConcurrentGetSlice"
#3.2
#3.2 minutes
- MODULE="SingleMultiWriteStoreTestCategory" CATEGORY="SingleDynamoDBMultiWriteStoreTestCategory"
#2.8 minutes
#2.8 minutes
- MODULE="MultiMultiWriteStoreTestCategory" CATEGORY="MultiDynamoDBMultiWriteStoreTestCategory"
#To be added
- MODULE="GraphSimpleLogTest" CATEGORY="GraphSimpleLogTestCategory"
addons:
apt:
packages:
- oracle-java8-installer
branches:
only:
- 1.0.0
Expand All @@ -64,5 +60,5 @@ script:
#- aws cloudformation validate-template --region us-west-2 --template-body `pwd | sed -e 's/\//\/\//g' -e 's/^/file:\//' -e 's/$/\/\/dynamodb-janusgraph-tables-multiple\.yaml/'`
notifications:
email:
- [email protected]
- [email protected]
- [email protected]
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ account in the same region.
multiple-item model based on graph size and utilization.
* Test graph locally with DynamoDB Local.
* Integrated with JanusGraph metrics.
* JanusGraph 0.2.0 and TinkerPop 3.2.6 compatibility.
* JanusGraph 0.2.1 and TinkerPop 3.2.9 compatibility.
* Upgrade compatibility from Titan 1.0.0.

## Getting Started
Expand Down
8 changes: 3 additions & 5 deletions dynamodb-janusgraph-storage-backend-cfn.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -565,16 +565,14 @@ Resources:
- - "#!/bin/bash\n"
- "export SDKMAN_DIR=/usr/local/sdkman && curl -s https://get.sdkman.io | bash && source /usr/local/sdkman/bin/sdkman-init.sh\n"
- "echo 'export SDKMAN_DIR=/usr/local/sdkman; source /usr/local/sdkman/bin/sdkman-init.sh' > /etc/profile.d/sdkman.sh\n"
- "yum update -y -q -e 0 && yum upgrade -y -q -e 0 && yum install -y java-1.8.0-openjdk > /home/ec2-user/yumupdates.log\n"
- "yum update -y -q -e 0 && yum upgrade -y -q -e 0 && yum install -y -q java-1.8.0-openjdk-devel > /home/ec2-user/yumupdates.log\n"
- "yum remove -y java-1.7.0-openjdk > /home/ec2-user/yumremovejava7.log\n"
- "java -version > /home/ec2-user/java-version-before-sdkmvn.log\n"
- "sdk install java < /dev/null\n"
- "sdk current java > /home/ec2-user/java-version-from-sdkman.log\n"
- "sdk install maven < /dev/null && set -x\n"
- "mvn -version > /home/ec2-user/maven-installation-settings.log\n"
- "export GREMLIN_SERVER_USERNAME='ec2-user'\n"
- "export LOG_DIR=/var/log/gremlin-server\n"
- "export SERVER_DIRNAME=dynamodb-janusgraph-storage-backend-1.2.0\n"
- "export SERVER_DIRNAME=dynamodb-janusgraph-storage-backend-1.3.0\n"
- "export SERVER_ZIP=${SERVER_DIRNAME}.zip\n"
- "export PACKAGES_DIR=/usr/local/packages\n"
- "export INSTALL_DIR=${PACKAGES_DIR}/${SERVER_DIRNAME}\n"
Expand Down Expand Up @@ -621,7 +619,7 @@ Outputs:
- Fn::GetAtt:
- WebServerInstance
- PublicDnsName
- " /usr/local/packages/dynamodb-janusgraph-storage-backend-1.2.0/bin/gremlin.sh"
- " /usr/local/packages/dynamodb-janusgraph-storage-backend-1.3.0/bin/gremlin.sh"
Description: Use this remote shell to interact with the graph.
GremlinServerEndpoint:
Value:
Expand Down
19 changes: 10 additions & 9 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.amazonaws</groupId>
<artifactId>dynamodb-janusgraph-storage-backend</artifactId>
<version>1.2.0</version>
<version>1.3.0</version>
<packaging>jar</packaging>
<name>Amazon DynamoDB Storage Backend for JanusGraph</name>
<url>https://github.com/awslabs/dynamodb-janusgraph-storage-backend</url>
<description>The Amazon DynamoDB Storage Backend for JanusGraph: Distributed Graph Database allows JanusGraph graphs to use DynamoDB as a storage backend.</description>
<scm>
<url>[email protected]:awslabs/dynamodb-janusgraph-storage-backend.git</url>
<tag>jg0.2.0-1.2.0</tag>
<tag>jg0.2.1-1.3.0</tag>
</scm>
<properties>
<default.test.jvm.opts>-Xms256m -Xmx1280m -XX:+HeapDumpOnOutOfMemoryError</default.test.jvm.opts>
Expand All @@ -18,18 +18,19 @@
<dynamodb-local.port>4567</dynamodb-local.port>
<dynamodb-local.endpoint>http://localhost:${dynamodb-local.port}</dynamodb-local.endpoint>
<jdk.version>1.8</jdk.version>
<aws.java.sdk.version>1.11.336</aws.java.sdk.version>
<aws.java.sdk.version>1.11.369</aws.java.sdk.version>
<jackson.version>2.6.6</jackson.version>
<janusgraph.version>0.2.0</janusgraph.version>
<tinkerpop.version>3.2.6</tinkerpop.version>
<janusgraph.version>0.2.1</janusgraph.version>
<tinkerpop.version>3.2.9</tinkerpop.version>
<dependency.plugin.version>3.0.2</dependency.plugin.version>
<maven.assembly.plugin.version>3.1.0</maven.assembly.plugin.version>
<maven.compiler.plugin.version>3.6.2</maven.compiler.plugin.version>
<maven.surefire.version>2.20</maven.surefire.version>
<maven.failsafe.version>2.20</maven.failsafe.version>
<maven.resources.plugin.version>3.0.2</maven.resources.plugin.version>
<maven.resources.plugin.version>3.1.0</maven.resources.plugin.version>
<exec.maven.plugin.version>1.6.0</exec.maven.plugin.version>
<download.maven.plugin.version>1.2.1</download.maven.plugin.version>
<download.maven.plugin.version>1.4.1</download.maven.plugin.version>
<log4j.version>1.2.17</log4j.version>
<slf4j.version>1.7.12</slf4j.version>
<opencsv.version>3.8</opencsv.version>
<metrics3.version>3.0.1</metrics3.version>
Expand All @@ -52,7 +53,7 @@
<developers>
<developer>
<name>Alexander Patrikalakis</name>
<email>[email protected]</email>
<email>[email protected]</email>
<url>https://www.linkedin.com/in/amcpatrix/en</url>
</developer>
<developer>
Expand Down Expand Up @@ -171,7 +172,7 @@
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<version>${log4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
Expand Down
4 changes: 2 additions & 2 deletions src/test/resources/get-recent-al-amis.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.
# Copyright 2017-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License").
# You may not use this file except in compliance with the License.
Expand All @@ -23,7 +23,7 @@ aws ec2 describe-regions --query 'Regions[*].[RegionName]' | sed -e '/\[/d' -e '
--region ${region} \
--owners amazon \
--filters "Name=root-device-type,Values=ebs" "Name=name,Values=amzn-ami-*" \
--query 'Images[? CreationDate > `'${LATER_THAN_DATE}'` && !contains(Name, `minimal`) && !contains(Name, `nat`)].[ImageId, ImageLocation]' |\
--query 'Images[? CreationDate>`'${LATER_THAN_DATE}'` && !contains(Name, `minimal`) && !contains(Name, `nat`) && !contains(Name, `ecs-optimized`) && !contains(Name, `beta`)].[ImageId, ImageLocation]' |\
grep "\"" |\
sed -e 's/^[ ]*\(.*\)[ ]*$/\1/' -e '/\"$/s/$/%/' |\
tr "\n" "@" |\
Expand Down
2 changes: 1 addition & 1 deletion src/test/resources/gremlin-server-service.sh
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@
# 2b) If you're running Ubuntu: update-rc.d gremlin-server defaults
#
# You have to SET the Gremlin Server installation directory here:
SVR="/usr/local/packages/dynamodb-janusgraph-storage-backend-1.2.0"
SVR="/usr/local/packages/dynamodb-janusgraph-storage-backend-1.3.0"
SVR_LOG="/var/log/gremlin-server"
# Specify the user to run Gremlin Server as:
SVR_USER="ec2-user"
Expand Down
6 changes: 3 additions & 3 deletions src/test/resources/install-gremlin-server.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ mvn -q -T 1C install -Dmaven.test.skip=true -DskipTests=true $MVN_OPT_PARAMS
# |
# -pom.xml
# -server - WORKDIR
# |-janusgraph-0.2.0-hadoop2 - JANUSGRAPH_VANILLA_SERVER_DIRNAME
# |-janusgraph-0.2.1-hadoop2 - JANUSGRAPH_VANILLA_SERVER_DIRNAME
# |-dynamodb-janusgraph-storage-backend-X.Y.Z - JANUSGRAPH_DYNAMODB_SERVER_DIRNAME
# |-dynamodb-janusgraph-storage-backend-X.Y.Z.zip - JANUSGRAPH_DYNAMODB_SERVER_ZIP
# |
Expand All @@ -68,7 +68,7 @@ export ARTIFACT_NAME=`mvn -q -Dexec.executable="echo" -Dexec.args='${project.art
export JANUSGRAPH_DYNAMODB_HOME=${PWD}
export JANUSGRAPH_DYNAMODB_TARGET=${JANUSGRAPH_DYNAMODB_HOME}/target
export JANUSGRAPH_VERSION=`mvn -q -Dexec.executable="echo" -Dexec.args='${janusgraph.version}' $MVN_OPT_PARAMS --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec`
#Extract the DYNAMODB version from the pom.
#Extract the DynamoDB version from the pom.
export DYNAMODB_PLUGIN_VERSION=`mvn -q -Dexec.executable="echo" -Dexec.args='${project.version}' $MVN_OPT_PARAMS --non-recursive org.codehaus.mojo:exec-maven-plugin:1.3.1:exec`
export JANUSGRAPH_VANILLA_SERVER_DIRNAME=janusgraph-${JANUSGRAPH_VERSION}-hadoop2
export JANUSGRAPH_VANILLA_SERVER_ZIP=${JANUSGRAPH_VANILLA_SERVER_DIRNAME}.zip
Expand Down Expand Up @@ -98,7 +98,7 @@ mvn test -q -Pdownload-janusgraph-server-zip $MVN_OPT_PARAMS > /dev/null 2>&1

#verify
pushd target
wget https://github.com/JanusGraph/janusgraph/releases/download/v0.2.0/KEYS
wget https://github.com/JanusGraph/janusgraph/releases/download/v0.2.1/KEYS
popd
gpg --import target/KEYS
gpg --verify src/test/resources/${JANUSGRAPH_VANILLA_SERVER_ZIP}.asc server/${JANUSGRAPH_VANILLA_SERVER_ZIP}
Expand Down
17 changes: 0 additions & 17 deletions src/test/resources/janusgraph-0.2.0-hadoop2.zip.asc

This file was deleted.

17 changes: 17 additions & 0 deletions src/test/resources/janusgraph-0.2.1-hadoop2.zip.asc
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAABCgAGBQJbRBwgAAoJEGa4X/FBgCuo2g0P/22eRdKbB7WmcaobiS5YGeSp
RMlvJoOpflJvJ5elpm/MjJfDj0Il1wDCmmE24BuPQX1kzk/crjIb+XC4RB8P3K6I
j0xOrO+eztQ4/W+wOlqzV1bAED6JqY5hZWgkMRyQumB9155p3UCwO126JV3UpJDz
Vtbn1R8mjIxVZxpP75EBfDiqQG4Xjc+y/1tsBaJaHdAwkNLXxcb4qWji4pYUF3mb
AvfEB9xZlJ8T/e9u6PY4NhlsGE54YuPFDIx2t3b6DUW7dcg3V1411aA13NaYrH6N
Yn3QatjwQ/Rzb4n/asojuzmfjMm2BLnWHgX9IP+Mjhcbce4+5IbRJhoe446VPFiI
YLDpxWDlY3aYopTk0fTDaGClcDlUZtXeCSNN8OnGz0x97af8jragxyNG9N6jxNYt
H8bHNM6kQrJvTj6YD4WXfyHlXLokb+BlVvMAYBMdzQ3JIp7eX4WXFdueEcoo1zWS
7nD5lN5cDSxW/M9QAmRtmQy8AzDFEHPJQM4K3XY4/B18FyyehuMU9sklMHmGOmRm
hgx99KjU5ApMZxUBlDqat56eYBanLScUen4agHV17PHwJ73Xb765uvLFWqi0BUe2
5K9F+xI6n9UEAx7/sNTQJgJQJ73WguK9+4zf0pcXeU4oACLUyOmIB7AuW5EuXf5e
02U5gcOFHUlxruqyTLUF
=VvSg
-----END PGP SIGNATURE-----

0 comments on commit 0219ddc

Please sign in to comment.