Fixed Dependency HELL

This commit is contained in:
Andrew Shvayka 2018-05-17 00:18:22 +03:00
parent 2a58bd318a
commit ada50b5d73
3 changed files with 12 additions and 4 deletions

View File

@ -16,14 +16,17 @@
package org.thingsboard.server.dao.cassandra; package org.thingsboard.server.dao.cassandra;
import com.datastax.driver.core.*; import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.ConsistencyLevel;
import com.datastax.driver.core.HostDistance;
import com.datastax.driver.core.PoolingOptions;
import com.datastax.driver.core.ProtocolOptions.Compression; import com.datastax.driver.core.ProtocolOptions.Compression;
import com.datastax.driver.core.Session;
import com.datastax.driver.mapping.DefaultPropertyMapper; import com.datastax.driver.mapping.DefaultPropertyMapper;
import com.datastax.driver.mapping.Mapper; import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.MappingConfiguration; import com.datastax.driver.mapping.MappingConfiguration;
import com.datastax.driver.mapping.MappingManager; import com.datastax.driver.mapping.MappingManager;
import com.datastax.driver.mapping.PropertyAccessStrategy; import com.datastax.driver.mapping.PropertyAccessStrategy;
import com.datastax.driver.mapping.PropertyMapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -149,10 +152,13 @@ public abstract class AbstractCassandraCluster {
} else { } else {
session = cluster.connect(); session = cluster.connect();
} }
// For Cassandra Driver version 3.5.0
DefaultPropertyMapper propertyMapper = new DefaultPropertyMapper(); DefaultPropertyMapper propertyMapper = new DefaultPropertyMapper();
propertyMapper.setPropertyAccessStrategy(PropertyAccessStrategy.FIELDS); propertyMapper.setPropertyAccessStrategy(PropertyAccessStrategy.FIELDS);
MappingConfiguration configuration = MappingConfiguration.builder().withPropertyMapper(propertyMapper).build(); MappingConfiguration configuration = MappingConfiguration.builder().withPropertyMapper(propertyMapper).build();
mappingManager = new MappingManager(session, configuration); mappingManager = new MappingManager(session, configuration);
// For Cassandra Driver version 3.0.0
// mappingManager = new MappingManager(session);
break; break;
} catch (Exception e) { } catch (Exception e) {
log.warn("Failed to initialize cassandra cluster due to {}. Will retry in {} ms", e.getMessage(), initRetryInterval); log.warn("Failed to initialize cassandra cluster due to {}. Will retry in {} ms", e.getMessage(), initRetryInterval);

View File

@ -103,6 +103,8 @@ commitlog_directory: target/embeddedCassandra/commitlog
hints_directory: target/embeddedCassandra/hints hints_directory: target/embeddedCassandra/hints
cdc_raw_directory: target/embeddedCassandra/cdc
# policy for data disk failures: # policy for data disk failures:
# stop: shut down gossip and Thrift, leaving the node effectively dead, but # stop: shut down gossip and Thrift, leaving the node effectively dead, but
# can still be inspected via JMX. # can still be inspected via JMX.

View File

@ -42,9 +42,9 @@
<mockito.version>1.9.5</mockito.version> <mockito.version>1.9.5</mockito.version>
<rat.version>0.10</rat.version> <rat.version>0.10</rat.version>
<cassandra.version>3.5.0</cassandra.version> <cassandra.version>3.5.0</cassandra.version>
<cassandra-unit.version>3.0.0.1</cassandra-unit.version> <cassandra-unit.version>3.3.0.2</cassandra-unit.version>
<takari-cpsuite.version>1.2.7</takari-cpsuite.version> <takari-cpsuite.version>1.2.7</takari-cpsuite.version>
<guava.version>20.0</guava.version> <guava.version>21.0</guava.version>
<caffeine.version>2.6.1</caffeine.version> <caffeine.version>2.6.1</caffeine.version>
<commons-lang3.version>3.4</commons-lang3.version> <commons-lang3.version>3.4</commons-lang3.version>
<commons-validator.version>1.5.0</commons-validator.version> <commons-validator.version>1.5.0</commons-validator.version>