summaryrefslogtreecommitdiffstats
path: root/catalog-dao
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-dao')
-rw-r--r--catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/CassandraClient.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/CassandraClient.java b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/CassandraClient.java
index 3bd318c7b8..998c8eacd1 100644
--- a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/CassandraClient.java
+++ b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/CassandraClient.java
@@ -20,6 +20,7 @@
package org.openecomp.sdc.be.dao.cassandra;
import com.datastax.driver.core.Cluster;
+import com.datastax.driver.core.ConsistencyLevel;
import com.datastax.driver.core.Session;
import com.datastax.driver.core.SocketOptions;
import com.datastax.driver.core.policies.ConstantReconnectionPolicy;
@@ -28,6 +29,7 @@ import com.datastax.driver.core.policies.DefaultRetryPolicy;
import com.datastax.driver.core.policies.LoadBalancingPolicy;
import com.datastax.driver.core.policies.TokenAwarePolicy;
import com.datastax.driver.mapping.Mapper;
+import com.datastax.driver.mapping.Mapper.Option;
import com.datastax.driver.mapping.MappingManager;
import fj.data.Either;
import java.util.List;
@@ -167,9 +169,14 @@ public class CassandraClient {
return Either.right(CassandraOperationStatus.CLUSTER_NOT_CONNECTED);
}
try {
- Mapper<T> mapper = manager.mapper(clazz);
+ Mapper<T> mapper = manager.mapper(clazz);
T result = mapper.get(id);
if (result == null) {
+ logger.info("Failed to get by Id [{}], trying again with consistency level ALL", id);
+ result = mapper.get(id, Option.consistencyLevel(ConsistencyLevel.ALL));
+ }
+ if (result == null) {
+ logger.info("Failed to get by Id [{}] with consistency level ALL", id);
return Either.right(CassandraOperationStatus.NOT_FOUND);
}
return Either.left(result);