[
https://issues.apache.org/jira/browse/IGNITE-1371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15071390#comment-15071390
]
Alexey Kuznetsov commented on IGNITE-1371:
------------------------------------------
Igor,
Valentin Kulichenko reviewed your code and we have following points:
1) First of all please merge with latest master or ignite-1.5. In ignite-1.5 we
introduced BinaryMarshaller that should be properly handled in store.
2) Please add more javadocs for Cassandra specific code (for example keyspace,
tblOptions, keyspaceOptions) what for we need them, may be give a link to
Cassandra docs.
3) KeyValuePersistenceSettings.keyspaceOptions - please describe why such
default options were selected? And please move defaults to constant
DFLT_propper_name.
4) CassandraCacheStoreFactory.persistenceSettings lets make these settings not
transient, but serializable and also move all settings classes from util
package to same package as store.
5) Also let's refactor persistence settings to be serializable and more simple
(take a look at JdbsType of CacheJdbcPojoStorefactory) to be just a description
of metadata. Move all serialization logic inside store.
6) Also persistence settings hierarchy looks a bit over engineered a lot of
classes: KeyValuePersistenceSettings, KeyPersistenceSettings,
ValuePersistenceSettings, PojoField, PojoKeyField, PojoValueField ... why we
need such many classes? Is this cassandra specific? Why we need indexes in
PojoValueField? Also may be we could rename classes to be looks like same
classes in JdbcPojoStore? KeyValuePersistenceSettings -> CassandraTypes.
KeyPersistenceSettings -> CassandraKeyType, and so on
7) What for we need PersistenceStrategy? now in Ignite-1.5 we have Binary
marshaller as default marshaller and this marshaller already serialize objects
as bytes, assuming this I think we could drop Serializers that were introduces
(Java and Kryo).
8) Also what is the difference between PRIMITIVE and POJO modes in
PersistenceStrategy?
> Key-Value store (like Cassandra) as CacheStore
> ----------------------------------------------
>
> Key: IGNITE-1371
> URL: https://issues.apache.org/jira/browse/IGNITE-1371
> Project: Ignite
> Issue Type: New Feature
> Components: cache
> Affects Versions: ignite-1.4
> Reporter: Alexandre Boudnik
> Assignee: Igor Rudyak
> Attachments: master_02b59e4_ignite-1371.patch
>
> Original Estimate: 504h
> Remaining Estimate: 504h
>
> It will provide ability to map particular cache holding POJOs to Cassandra
> table. Later it would be generalized to support eventually any any Key-Value
> store.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)