diff --git a/docs/configs/janusgraph-cfg.md b/docs/configs/janusgraph-cfg.md
index ef199e3020..c7b2d34f43 100644
--- a/docs/configs/janusgraph-cfg.md
+++ b/docs/configs/janusgraph-cfg.md
@@ -27,6 +27,8 @@ Configuration options that modify JanusGraph's caching behavior
| cache.db-cache-time | Default expiration time, in milliseconds, for entries in the database-level cache. Entries are evicted when they reach this age even if the cache has room to spare. Set to 0 to disable expiration (cache entries live forever or until memory pressure triggers eviction when set to 0). | Long | 10000 | GLOBAL_OFFLINE |
| cache.redis-cache-connectTimeout | Timeout during connecting to any Redis server. | Integer | 1000 | MASKABLE |
| cache.redis-cache-keepAlive | Enables TCP keepAlive for connection. | Boolean | true | MASKABLE |
+| cache.redis-cache-lease-ms | If the lock is not available then the current thread becomes disabled for thread scheduling purposes and lies dormant until the lock has been acquired. If the lock is acquired, it is held until unlock is invoked, or until leaseTime milliseconds have passed since the lock was granted - whichever comes first | Integer | 2000 | MASKABLE |
+| cache.redis-cache-lock-wait-ms | The maximum time (in millisec) to aquire the lock. | Integer | 1000 | MASKABLE |
| cache.redis-cache-lock-watchdog-ms | This prevents against infinity locked locks due to Redisson client crush or any other reason when lock can't be released in proper way. | Long | 600000 | MASKABLE |
| cache.redis-cache-mastername | Master server name used by Redis Sentinel servers and master change monitoring task. | String | mymaster | MASKABLE |
| cache.redis-cache-password | Password for Redis authentication. | String | password | MASKABLE |
diff --git a/janusgraph-all/pom.xml b/janusgraph-all/pom.xml
index 57912d3982..6649c27ac1 100644
--- a/janusgraph-all/pom.xml
+++ b/janusgraph-all/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-all
diff --git a/janusgraph-backend-testutils/pom.xml b/janusgraph-backend-testutils/pom.xml
index 82ac83f9f8..6957f40289 100644
--- a/janusgraph-backend-testutils/pom.xml
+++ b/janusgraph-backend-testutils/pom.xml
@@ -4,7 +4,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-backend-testutils
diff --git a/janusgraph-berkeleyje/pom.xml b/janusgraph-berkeleyje/pom.xml
index 797fb7e670..7f5b856a8a 100644
--- a/janusgraph-berkeleyje/pom.xml
+++ b/janusgraph-berkeleyje/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-berkeleyje
diff --git a/janusgraph-bigtable/pom.xml b/janusgraph-bigtable/pom.xml
index 6d1aae5a1a..f90a7ebaf9 100644
--- a/janusgraph-bigtable/pom.xml
+++ b/janusgraph-bigtable/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-bigtable
diff --git a/janusgraph-core/pom.xml b/janusgraph-core/pom.xml
index e071f65fc9..c6684f706d 100644
--- a/janusgraph-core/pom.xml
+++ b/janusgraph-core/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-core
diff --git a/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/ExpirationKCVSRedisCache.java b/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/ExpirationKCVSRedisCache.java
index dd1932be95..b292cd76ee 100644
--- a/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/ExpirationKCVSRedisCache.java
+++ b/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/ExpirationKCVSRedisCache.java
@@ -42,6 +42,8 @@
import java.util.logging.Logger;
import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.CACHE_KEYSPACE_PREFIX;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_LOCK_LEASE_MS;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_LOCK_WAIT_MS;
import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_MAX_CACHE_SIZE;
/**
@@ -56,10 +58,12 @@ public class ExpirationKCVSRedisCache extends KCVSCache {
private RMapCache> redisIndexKeys;
private static Logger logger = Logger.getLogger("janusgraph-redis-logger");
private static FSTConfiguration fastConf = FSTConfiguration.createDefaultConfiguration();
+ private Configuration configuration;
public ExpirationKCVSRedisCache(final KeyColumnValueStore store, String metricsName, final long cacheTimeMS,
final long invalidationGracePeriodMS, Configuration configuration) {
super(store, metricsName);
+ this.configuration = configuration;
Preconditions.checkArgument(cacheTimeMS > 0, "Cache expiration must be positive: %s", cacheTimeMS);
Preconditions.checkArgument(System.currentTimeMillis() + 1000L * 3600 * 24 * 365 * 100 + cacheTimeMS > 0, "Cache expiration time too large, overflow may occur: %s", cacheTimeMS);
this.cacheTimeMS = cacheTimeMS;
@@ -101,7 +105,7 @@ private EntryList get(KeySliceQuery query, Callable valueLoader) thro
redisCache.fastPutAsync(query, fastConf.asByteArray(entries), this.cacheTimeMS, TimeUnit.MILLISECONDS);
RLock lock = redisIndexKeys.getLock(query.getKey());
try {
- lock.tryLock(1, 3, TimeUnit.SECONDS);
+ lock.tryLock(this.configuration.get(REDIS_CACHE_LOCK_WAIT_MS), this.configuration.get(REDIS_CACHE_LOCK_LEASE_MS), TimeUnit.MILLISECONDS);
ArrayList queryList = redisIndexKeys.get(query.getKey());
if (queryList == null)
queryList = new ArrayList<>();
@@ -154,7 +158,7 @@ public Map getSlice(final List keys, fina
redisCache.fastPutAsync(ksqs[i], fastConf.asByteArray(subresult), this.cacheTimeMS, TimeUnit.MILLISECONDS);
RLock lock = redisIndexKeys.getLock(ksqs[i].getKey());
try {
- lock.tryLock(3, 10, TimeUnit.SECONDS);
+ lock.tryLock(this.configuration.get(REDIS_CACHE_LOCK_WAIT_MS), this.configuration.get(REDIS_CACHE_LOCK_LEASE_MS), TimeUnit.MILLISECONDS);
ArrayList queryList = redisIndexKeys.get(ksqs[i].getKey());
if (queryList == null)
queryList = new ArrayList<>();
diff --git a/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/RedissonCache.java b/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/RedissonCache.java
index 6053a4be81..2851f78b7c 100644
--- a/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/RedissonCache.java
+++ b/janusgraph-core/src/main/java/org/janusgraph/diskstorage/keycolumnvalue/cache/RedissonCache.java
@@ -25,12 +25,24 @@
import org.slf4j.LoggerFactory;
import java.util.Arrays;
+import java.util.Objects;
-import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.*;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_CONNECTION_TIME_OUT;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_KEEP_ALIVE;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_LOCK_WATCHDOG_TIMEOUT_MS;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_MASTER_NAME;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_PASSWORD;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_SENTINEL_URLS;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_SERVER_MODE;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_SERVER_URL;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CACHE_USERNAME;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_CLIENT_NAME;
+import static org.janusgraph.graphdb.configuration.GraphDatabaseConfiguration.REDIS_DATABASE_ID;
public class RedissonCache {
private static final Logger log = LoggerFactory.getLogger(RedissonCache.class);
+ private static RedissonClient client;
private static final String REDIS_URL_PREFIX = "redis://";
private static final String COMMA = ",";
private static final String SENTINEL = "sentinel";
@@ -41,41 +53,51 @@ public class RedissonCache {
private static long watchdogTimeoutInMS;
public static RedissonClient getRedissonClient(Configuration configuration) {
- redisServerMode = configuration.get(REDIS_CACHE_SERVER_MODE);
- connectTimeout = configuration.get(REDIS_CACHE_CONNECTION_TIME_OUT);
- keepAlive = configuration.get(REDIS_CACHE_KEEP_ALIVE);
- watchdogTimeoutInMS = configuration.get(REDIS_CACHE_LOCK_WATCHDOG_TIMEOUT_MS);
- log.info("Creating connection for redis:{}", redisServerMode);
- Config config = new Config();
- switch (redisServerMode) {
- case SENTINEL:
- config.setLockWatchdogTimeout(watchdogTimeoutInMS)
- .useSentinelServers()
- .setDatabase(configuration.get(REDIS_DATABASE_ID))
- .setClientName(configuration.get(REDIS_CLIENT_NAME))
- .setReadMode(ReadMode.MASTER_SLAVE)
- .setCheckSentinelsList(false)
- .setConnectTimeout(connectTimeout)
- .setKeepAlive(keepAlive)
- .setMasterName(configuration.get(REDIS_CACHE_MASTER_NAME))
- .addSentinelAddress(formatUrls(configuration.get(REDIS_CACHE_SENTINEL_URLS).split(COMMA)))
- .setUsername(configuration.get(REDIS_CACHE_USERNAME))
- .setPassword(configuration.get(REDIS_CACHE_PASSWORD));
- break;
- case STANDALONE:
- config.setLockWatchdogTimeout(watchdogTimeoutInMS)
- .useSingleServer()
- .setClientName(configuration.get(REDIS_CLIENT_NAME))
- .setAddress(formatUrls(configuration.get(REDIS_CACHE_SERVER_URL).split(COMMA))[0])
- .setConnectTimeout(connectTimeout)
- .setKeepAlive(keepAlive)
- .setUsername(configuration.get(REDIS_CACHE_USERNAME))
- .setPassword(configuration.get(REDIS_CACHE_PASSWORD));
- break;
- default:
- throw new JanusGraphConfigurationException("Invalid redis server mode");
+ synchronized (RedissonCache.class) {
+ if (Objects.isNull(client)) {
+ redisServerMode = configuration.get(REDIS_CACHE_SERVER_MODE);
+ connectTimeout = configuration.get(REDIS_CACHE_CONNECTION_TIME_OUT);
+ keepAlive = configuration.get(REDIS_CACHE_KEEP_ALIVE);
+ watchdogTimeoutInMS = configuration.get(REDIS_CACHE_LOCK_WATCHDOG_TIMEOUT_MS);
+ log.info("Creating connection for redis:{}", redisServerMode);
+ Config config = new Config();
+ switch (redisServerMode) {
+ case SENTINEL:
+ config.setLockWatchdogTimeout(watchdogTimeoutInMS)
+ .useSentinelServers()
+ .setDatabase(configuration.get(REDIS_DATABASE_ID))
+ .setClientName(String.join("-",configuration.get(REDIS_CLIENT_NAME),"janusgraph"))
+ .setReadMode(ReadMode.MASTER_SLAVE)
+ .setCheckSentinelsList(false)
+ .setConnectTimeout(connectTimeout)
+ .setIdleConnectionTimeout(5_000)
+ .setMasterConnectionMinimumIdleSize(10)
+ .setMasterConnectionPoolSize(20)
+ .setSlaveConnectionMinimumIdleSize(10)
+ .setSlaveConnectionPoolSize(20)
+ .setKeepAlive(keepAlive)
+ .setMasterName(configuration.get(REDIS_CACHE_MASTER_NAME))
+ .addSentinelAddress(formatUrls(configuration.get(REDIS_CACHE_SENTINEL_URLS).split(COMMA)))
+ .setUsername(configuration.get(REDIS_CACHE_USERNAME))
+ .setPassword(configuration.get(REDIS_CACHE_PASSWORD));
+ break;
+ case STANDALONE:
+ config.setLockWatchdogTimeout(watchdogTimeoutInMS)
+ .useSingleServer()
+ .setClientName(configuration.get(REDIS_CLIENT_NAME))
+ .setAddress(formatUrls(configuration.get(REDIS_CACHE_SERVER_URL).split(COMMA))[0])
+ .setConnectTimeout(connectTimeout)
+ .setKeepAlive(keepAlive)
+ .setUsername(configuration.get(REDIS_CACHE_USERNAME))
+ .setPassword(configuration.get(REDIS_CACHE_PASSWORD));
+ break;
+ default:
+ throw new JanusGraphConfigurationException("Invalid redis server mode");
+ }
+ client = Redisson.create(config);
+ }
}
- return Redisson.create(config);
+ return client;
}
private static String[] formatUrls(String[] urls) throws IllegalArgumentException {
diff --git a/janusgraph-core/src/main/java/org/janusgraph/graphdb/configuration/GraphDatabaseConfiguration.java b/janusgraph-core/src/main/java/org/janusgraph/graphdb/configuration/GraphDatabaseConfiguration.java
index e58a7e28e2..be7039dd00 100644
--- a/janusgraph-core/src/main/java/org/janusgraph/graphdb/configuration/GraphDatabaseConfiguration.java
+++ b/janusgraph-core/src/main/java/org/janusgraph/graphdb/configuration/GraphDatabaseConfiguration.java
@@ -418,6 +418,17 @@ public boolean apply(@Nullable String s) {
"Maximum cache (map) size in redis, set 0 to unbound, default value is 100. Keys are evicted based on LFU mode.",
ConfigOption.Type.MASKABLE, 100);
+ public static final ConfigOption REDIS_CACHE_LOCK_WAIT_MS = new ConfigOption<>(CACHE_NS,"redis-cache-lock-wait-ms",
+ "The maximum time (in millisec) to aquire the lock.",
+ ConfigOption.Type.MASKABLE, 1000);
+
+
+ public static final ConfigOption REDIS_CACHE_LOCK_LEASE_MS = new ConfigOption<>(CACHE_NS,"redis-cache-lease-ms",
+ "If the lock is not available then the current thread becomes disabled for thread scheduling purposes " +
+ "and lies dormant until the lock has been acquired. If the lock is acquired, it is held until unlock is invoked, " +
+ "or until leaseTime milliseconds have passed since the lock was granted - whichever comes first",
+ ConfigOption.Type.MASKABLE, 2000);
+
/**
* The size of the database level cache.
* If this value is between 0.0 (strictly bigger) and 1.0 (strictly smaller), then it is interpreted as a
diff --git a/janusgraph-cql/pom.xml b/janusgraph-cql/pom.xml
index 5e9ccb84dc..211fbc2c26 100644
--- a/janusgraph-cql/pom.xml
+++ b/janusgraph-cql/pom.xml
@@ -4,7 +4,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
janusgraph-cql
diff --git a/janusgraph-dist/pom.xml b/janusgraph-dist/pom.xml
index d357005e44..67bad8b740 100644
--- a/janusgraph-dist/pom.xml
+++ b/janusgraph-dist/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
pom
diff --git a/janusgraph-doc/pom.xml b/janusgraph-doc/pom.xml
index ad26204cbf..e0d67a4fe3 100644
--- a/janusgraph-doc/pom.xml
+++ b/janusgraph-doc/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
pom
diff --git a/janusgraph-driver/pom.xml b/janusgraph-driver/pom.xml
index 024b28e544..ce7d03f83f 100644
--- a/janusgraph-driver/pom.xml
+++ b/janusgraph-driver/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-driver
diff --git a/janusgraph-es/pom.xml b/janusgraph-es/pom.xml
index 8cb96f7703..6e5772304b 100644
--- a/janusgraph-es/pom.xml
+++ b/janusgraph-es/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-es
diff --git a/janusgraph-examples/example-berkeleyje/pom.xml b/janusgraph-examples/example-berkeleyje/pom.xml
index 6585fe993d..43bb887ba8 100644
--- a/janusgraph-examples/example-berkeleyje/pom.xml
+++ b/janusgraph-examples/example-berkeleyje/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-berkeleyje
diff --git a/janusgraph-examples/example-common/pom.xml b/janusgraph-examples/example-common/pom.xml
index c65f5ce6e0..28d27bf1e0 100644
--- a/janusgraph-examples/example-common/pom.xml
+++ b/janusgraph-examples/example-common/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-common
diff --git a/janusgraph-examples/example-cql/pom.xml b/janusgraph-examples/example-cql/pom.xml
index 0ed4d687aa..477469e77c 100644
--- a/janusgraph-examples/example-cql/pom.xml
+++ b/janusgraph-examples/example-cql/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-cql
diff --git a/janusgraph-examples/example-hbase/pom.xml b/janusgraph-examples/example-hbase/pom.xml
index 016216d0f2..e1018a59e4 100644
--- a/janusgraph-examples/example-hbase/pom.xml
+++ b/janusgraph-examples/example-hbase/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-hbase
diff --git a/janusgraph-examples/example-remotegraph/pom.xml b/janusgraph-examples/example-remotegraph/pom.xml
index a91d59c884..8e6916f938 100644
--- a/janusgraph-examples/example-remotegraph/pom.xml
+++ b/janusgraph-examples/example-remotegraph/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-remotegraph
diff --git a/janusgraph-examples/example-tinkergraph/pom.xml b/janusgraph-examples/example-tinkergraph/pom.xml
index 6ec390f6cf..f036029b33 100644
--- a/janusgraph-examples/example-tinkergraph/pom.xml
+++ b/janusgraph-examples/example-tinkergraph/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph-examples
- 0.6.02
+ 0.6.03
../pom.xml
example-tinkergraph
diff --git a/janusgraph-examples/pom.xml b/janusgraph-examples/pom.xml
index 79d677a0b2..2eae8f5947 100644
--- a/janusgraph-examples/pom.xml
+++ b/janusgraph-examples/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-examples
diff --git a/janusgraph-grpc/pom.xml b/janusgraph-grpc/pom.xml
index c2813ad38f..dfc5cebb00 100644
--- a/janusgraph-grpc/pom.xml
+++ b/janusgraph-grpc/pom.xml
@@ -4,7 +4,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
janusgraph-grpc
JanusGraph-gRPC: gRPC Components for JanusGraph
diff --git a/janusgraph-hadoop/pom.xml b/janusgraph-hadoop/pom.xml
index 7de7bfeba5..3d525bd4b6 100644
--- a/janusgraph-hadoop/pom.xml
+++ b/janusgraph-hadoop/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-hadoop
diff --git a/janusgraph-hbase/pom.xml b/janusgraph-hbase/pom.xml
index 0dcd8caddd..6a9a0a9c98 100644
--- a/janusgraph-hbase/pom.xml
+++ b/janusgraph-hbase/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
janusgraph-hbase
JanusGraph-HBase: Distributed Graph Database
diff --git a/janusgraph-inmemory/pom.xml b/janusgraph-inmemory/pom.xml
index 48146094f2..560a7fda5e 100644
--- a/janusgraph-inmemory/pom.xml
+++ b/janusgraph-inmemory/pom.xml
@@ -4,7 +4,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-inmemory
diff --git a/janusgraph-lucene/pom.xml b/janusgraph-lucene/pom.xml
index 47733fd64d..40c9f385a8 100644
--- a/janusgraph-lucene/pom.xml
+++ b/janusgraph-lucene/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-lucene
diff --git a/janusgraph-server/pom.xml b/janusgraph-server/pom.xml
index e457a948de..06f122ed05 100644
--- a/janusgraph-server/pom.xml
+++ b/janusgraph-server/pom.xml
@@ -4,7 +4,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
janusgraph-server
JanusGraph-Server: Server Components for JanusGraph
diff --git a/janusgraph-solr/pom.xml b/janusgraph-solr/pom.xml
index c8088831dc..a4b5f89b8a 100644
--- a/janusgraph-solr/pom.xml
+++ b/janusgraph-solr/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-solr
diff --git a/janusgraph-test/pom.xml b/janusgraph-test/pom.xml
index 0c7b35c2cb..09e853b801 100644
--- a/janusgraph-test/pom.xml
+++ b/janusgraph-test/pom.xml
@@ -3,7 +3,7 @@
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
../pom.xml
janusgraph-test
diff --git a/pom.xml b/pom.xml
index 6b92c60a35..e3ef6d53a9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
4.0.0
org.janusgraph
janusgraph
- 0.6.02
+ 0.6.03
pom
3.0.0