forked from matkor/libcassandra
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
65 lines (51 loc) · 2.41 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
List of TODOs:
--------------------------------------------------
TODO: Agree on general rules of arg passing
--------------------------------------------------
TODO: Agree on library versioning system with SONAMEs
Currently we have:
Configuration summary for libcassandra version 0.1
Consider:
0.7.0.1
Cassandra line version . cassandra bugfix version. libcassandra interface_version . bugfix version
--------------------------------------------------
TODO: Agree on avoiding pointers.
Describe state of each used pointer, including resposible or not for deallocating pointed object
Use references to pass/access instaed of pointers. Like:
org::apache::cassandra::CassandraClient *getCassandra();
becomes:
org::apache::cassandra::CassandraClient & getCassandra();
Switch use to boost::shared_ptr instead (not std::tr1::shared_ptr as Thrift generated code seems to use boost::shared_ptr)
where there is no other option.
--------------------------------------------------
TODO: Consider switching args order to:
(CF, row_key, ... ) ?
PRO: More logical to final user ?
CON: Thrift natural is row_key first.
--------------------------------------------------
TODO: Implement default quorum for reads and writes used when no quorum level is passed.
--------------------------------------------------
TODO: Regen libgenthrift for current 0.7.x
(quorum levels TWO, THREE).
--------------------------------------------------
TODO: Consider not installing libgenthrift as shared lib ?
Is it for internal libcassandra use only ?
Do we need installed include/libgenthrift ?
Is libgenthrift going to be used by anything else than libcassandra ?
--------------------------------------------------
TODO: Review and merge batch mutations from
https://github.com/axs-mvd/libcassandra
--------------------------------------------------
TODO: Review and merge ttl from
https://github.com/maxcom/libcassandra
--------------------------------------------------
TODO: Check and validate split Makefile.ams to standard DIRS layout
--------------------------------------------------
TODO: Write client aware of cassandra nodes, trying next ones whan first on list is not available
--------------------------------------------------
TODO: Write higher level client, able to connect to many hosts in cluster ?
Far future.
Transparently dealing with nodes downs/ups (if possible).
Allowing async queries ?
Connection pool.
Connection pool with priority on localhost ?