forked from thobbs/phpcassa
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
189 lines (153 loc) · 5.89 KB
/
CHANGES
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
Changelog
=========
Changes in 1.0.a.2
------------------
This addresses a few bugs in the 1.0.a.2 release only.
Bugfixes
^^^^^^^^
- Fix autoloading issues in older versions of PHP 5.3
- Fix ConsistencyLevel reference in Batch\Mutator
- Fix BooleanType unpacking
- Fix Thrift C extension for PHP 5.4
- Add php5-dev, g++ to debian build dependencies
Changes in 1.0.a.1
------------------
This release introduces several major changes to phpcassa:
- PHP namespaces are now used for phpcassa and thrift classes
- Many classes or functions that were once part of columnfamily.php
are now in their own classes and modules
- An autoload.php file has been added for bootstrapping the autoloader
for phpcassa and Thrift classes; this *must* be used for imports to
work correctly
- Full batch operation support has been added
- CompositeType support has been added
- Alternate formats for inserting and fetching data may now
be used
- Super column families should be handled with the new phpcassa\SuperColumnFamily
class. Any $super_column parameters have been removed from methods
in ColumnFamily.
- Parameters related to column slices are now handled by a single ColumnSlice
parameter; in most cases, parameter order has changed slightly for these
methods, so check the documentation carefully
- FloatType, DoubleType, and BooleanType are now supported
- Thrift has been upgraded to 0.8.0
To help make the upgrade process easier and to demonstrate some of the new
features, an examples/ directory has been created with full, working
examples.
Additionally, test coverage has been greatly improved, so a few miscellaneous
bugs have likely been resolved recently.
Changes in 0.8.a.2
------------------
This release upgrades the bundled version of Thrift
to 0.7.0, which fixes several issues with 32bit
environments.
Features
^^^^^^^^
- Add drop_index() to SystemManager
- Order multiget_count() results by the order of the input
keys
- Allow for overriding the ConnectionPool error_log mechanism
for custom error handling
Bugfixes
^^^^^^^^
- Handle multiget() requests with responses that are
larger than $buffer_size correctly
- Don't ignore the $pool_size parameter in the ConnectionPool
constructor
- Pass data intended for UTF8Type values unaltered to Thrift.
This fixes issues with corruption of some utf8 data, but the
user is now responsible for ensuring the data is encoded
correctly.
- Fix corruption of timestamps in 32bit environments by
upgrading to Thrift 0.7.0
Changes in 0.8.a.1
------------------
This release adds support for Cassandra 0.8. This release is
backwards compatible with Cassandra 0.7, and supports a cluster
with a mixture of nodes running 0.7 and 0.8.
Features
^^^^^^^^
- Added ColumnFamily.add() and remove_counter() to work with 0.8
counters.
- Support for the 0.8 column family attribute key_validation_class.
Keys may now be automatically packed and upacked, similar to column
names and values.
- Addition of sysmanager.php and the SystemManager class. This class
makes it much easier to dynamically create, alter, and drop keyspaces,
column families, and secondary indexes.
- New ConnectionPools are no longer automatically filled upon creation.
The method ConnectionPool.fill() was added as an alternative way to
supply this functionality.
Bugfixes
^^^^^^^^
- Handle NotFoundException and other Exceptions cleanly in ConnectionPool.
Previously, these could result in a slow drain of connections from the
pool.
- The default ColumnFamily buffer_size has been lowered from 8096 to 1024.
Deprecated
^^^^^^^^^^
- The ColumnFamily constructor arguments $autopack_names and $autopack_values
are deprecated. Use set_autopack_names() and
set_autopack_values() after creating the ColumnFamily instead.
- The ColumnFamily constructor argument $buffer_size has been deprecated.
The public attribute $buffer_size should be set instead.
- The ColumnFamily constructor arguments $read_consistency_level
and $write_consistency_level have been deprecated.
The public attributes of the same names should be set instead. Both
attributes still default to ConsistencyLevel ONE.
- The ConnectionPool constructor argument $framed_transport is deprecated;
framed transport will be assumed in later versions.
- The ConnectionPool constructor argument $max_retries is deprecated;
adjust the public attribue of the same name instead.
- The ConnectionPool constructor argument $recycle is deprecated;
adjust the public attribue of the same name instead.
Changes in 0.7.a.4
------------------
The bundled Thrift library has been updated to a post-0.6 trunk
version. An important bugfix was made in Thrift which greatly
improves performance.
Bugfixes
^^^^^^^^
- Credentials were not properly passed through Thrift, causing
any authorization attempts to fail.
Features
^^^^^^^^
- Added the ConnectionPool class to connection.php. This allows
for better failover and loadbalancing of operations. See the
documentation for the ConnectionPool class when upgrading from
0.7.a.3 or earlier.
Deprecated
^^^^^^^^^^
- The Connection class in connection.php has been replaced by
ConnectionPool and is now deprecated.
Changes in 0.7.a.3
------------------
Bugfixes
^^^^^^^^
- Typo in throwing IncompatibleAPIException
- remove() on super column families did not pack names correctly
- CassandraUtil::uuid3() param name should be $node not $null
Features
^^^^^^^^
- Use remove() Thrift API call instead of batch_mutate() when possible
- Allow a microsecond timestamp to be passed in for v1 UUID creation
- Log connection errors with error_log()
Deprecated
^^^^^^^^^^
None
Changes in 0.7.a.2
------------------
Bugfixes
^^^^^^^^
- Fix server revival bug
- Remove print statement from Connection on connection failure
Features
^^^^^^^^
- Add an import() method for UUIDs to CassandraUtil to convert binary UUID
representations back into UUID objects
Deprecated
^^^^^^^^^^^^
None
Changes in 0.7.a1
-----------------
Initial release