Hello,

It seems I found the root cause of the issue. Could you please try the
following workaround?

1. create your own CacheStoreFactory

public class CustomCassandraCacheStoreFactory extends
CassandraCacheStoreFactory {
    private final String persistenceSettingsXml;

    public CustomCassandraCacheStoreFactory(String persistenceSettingsXml) {
        this.persistenceSettingsXml = persistenceSettingsXml;
    }

    @Override public CassandraCacheStore create() {
        setPersistenceSettings(new
KeyValuePersistenceSettings(persistenceSettingsXml));
        return super.create();
    }
}


2. configure Ignite cache as follows

CacheConfiguration<String, Integer> configuration = new CacheConfiguration<>();

configuration.setName("test-cache");
configuration.setIndexedTypes(String.class, POJOExample.class);
DataSource dataSource = new DataSource();
dataSource.setContactPoints("111.111.111.111"); // Here, I am
basically putting my remote server addresses.
RoundRobinPolicy robinPolicy = new RoundRobinPolicy();
dataSource.setLoadBalancingPolicy(robinPolicy);
dataSource.setReadConsistency("ONE");
dataSource.setWriteConsistency("ONE");



*String persistenceSettingsXml = FileUtils.readFileToString(new
File(persistenceSettingsConfig), "utf-8");CassandraCacheStoreFactory
cacheStoreFactory = new
CustomCassandraCacheStoreFactory(persistenceSettingsXml);cacheStoreFactory.setDataSource(dataSource);*

configuration.setCacheStoreFactory(cacheStoreFactory);
configuration.setWriteThrough(true);
configuration.setReadThrough(true);
configuration.setWriteBehindEnabled(true);


Thanks!

ср, 25 июл. 2018 г. в 21:19, okiesong <yjsong0...@gmail.com>:

> Hi, so I have provided my code structures, just in case my POJOExample.java
> looks as below; this is used for key-value setting for persistence setting
> for Cassandra. Thanks once again!
>
> POJOExample.java
> public class POJOExample implements Serializable{
>
>
>     @QuerySqlField(index=true, descending = true,
> orderedGroups={@QuerySqlField.Group(name = "sample_idx", order = 0)})
>     private String id;
>
>     @QuerySqlField(orderedGroups={@QuerySqlField.Group(name = "sample_idx",
> order = 1)})
>     private String name;
>
>
>     public ClientMatchRecord(String name, String id) {
>         this.bu1_id = bu1_id;
>         this.bu1_name = bu1_name;
>
>     }
>
>     public String getid() {
>         return id;
>     }
>
>     public void setid(String id) {
>         this.id = id;
>     }
>
>     public String getname() {
>         return name;
>     }
>
>     public void setname(String name) {
>         this.name = name;
>     }
>
>
> }
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to