1. I have defined primary key - dwId
2. Not defined affinity_key since there is no Forgein Key in table.
3.
CacheConfiguration ccfg = new CacheConfiguration();
ccfg.setName(cacheName);
ccfg.setCacheMode(CacheMode.PARTITIONED);
ccfg.setAtomicityMode(CacheAtomicityMode.ATOMIC);
ccfg.setPeerClassLoadingEnabled(true);
The code i am using is generated from ignite web console.
Code is below.
CacheConfiguration
ccfg=CacheConfigurationInitialize.initCacheConfiguration(
IdbCacheConstants.GROUP_MEMBER_CACHE,
jdbcTypeGroupMember(IdbCacheConstants.GROUP_MEMBER_CACHE));
ArrayList<QueryEntity> qryEntities = new ArrayList<>();
QueryEntity qryEntity = new QueryEntity();
qryEntity.setKeyType("java.lang.Long");
qryEntity.setValueType("com.idb.cache.model.GroupMember");
qryEntity.setTableName("Group_Member");
qryEntity.setKeyFieldName("dwId");
HashSet<String> keyFields = new HashSet<>();
keyFields.add("dwId");
qryEntity.setKeyFields(keyFields);
LinkedHashMap<String, String> fields = new LinkedHashMap<>();
fields.put("dwId", "java.lang.Long");
fields.put("groupCustomerId", "java.lang.Long");
fields.put("customerId", "java.lang.Long");
fields.put("role", "java.lang.String");
fields.put("isPrimary", "java.lang.String");
fields.put("recordValidFromDate", "java.sql.Date");
fields.put("recordValidToDate", "java.sql.Date");
fields.put("recordIsValid", "java.lang.String");
fields.put("recordCreatedTime", "java.sql.Timestamp");
fields.put("recordCreatedBy", "java.lang.String");
fields.put("recordUpdatedTime", "java.sql.Timestamp");
fields.put("recordUpdatedBy", "java.lang.String");
fields.put("dwBatch", "java.lang.Long");
fields.put("dwSourcecode", "java.lang.String");
fields.put("dwTimestamp", "java.sql.Timestamp");
qryEntity.setFields(fields);
HashMap<String, String> aliases = new HashMap<>();
aliases.put("dwId", "DW_Id");
aliases.put("groupCustomerId", "Group_Customer_ID");
aliases.put("customerId", "Customer_ID");
aliases.put("recordValidFromDate", "Record_Valid_From_Date");
aliases.put("recordValidToDate", "Record_Valid_To_Date");
aliases.put("recordIsValid", "Record_Is_Valid");
aliases.put("recordCreatedTime", "Record_Created_Time");
aliases.put("recordCreatedBy", "Record_Created_By");
aliases.put("recordUpdatedTime", "Record_Updated_Time");
aliases.put("recordUpdatedBy", "Record_Updated_By");
aliases.put("dwBatch", "DW_Batch");
aliases.put("dwSourcecode", "DW_SourceCode");
aliases.put("dwTimestamp", "DW_TimeStamp");
qryEntity.setAliases(aliases);
qryEntities.add(qryEntity);
ccfg.setQueryEntities(qryEntities);
return ccfg;
--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/