cassandra-python-driver v1.0.0 Release Notes
-
Jan 29, 2014
๐ Bug Fixes
- โฑ Prevent leak of Scheduler thread (even with proper shutdown)
- Correctly handle ignored hosts, which are common with the DCAwareRoundRobinPolicy
- Hold strong reference to prepared statement while executing it to avoid garbage collection
- โ Add NullHandler logging handler to the cassandra package to avoid warnings about there being no configured logger
- ๐ Fix bad handling of nodes that have been removed from the cluster
- Properly escape string types within cql collections
- ๐ Handle setting the same keyspace twice in a row
- Avoid race condition during schema agreement checks that could result in schema update queries returning before all nodes had seen the change
- Preserve millisecond-level precision in datetimes when performing inserts with simple (non-prepared) statements
- Properly defunct connections when libev reports an error by setting errno instead of simply logging the error
- ๐ Fix endless hanging of some requests when using the libev reactor
- Always start a reconnection process when we fail to connect to a newly bootstrapped node
- Generators map to CQL lists, not key sequences
- Always defunct connections when an internal operation fails
- Correctly break from handle_write() if nothing was sent (asyncore reactor only)
- Avoid potential double-erroring of callbacks when a connection becomes defunct
๐ Features
- โ Add default query timeout to
Session
- โ Add timeout parameter to
Session.execute()
- โ Add
WhiteListRoundRobinPolicy
as a load balancing policy option - ๐ Support for consistency level
LOCAL_ONE
- ๐ Make the backoff for fetching traces exponentially increasing and configurable
Other
- ๐ป Raise Exception if
TokenAwarePolicy
is used against a cluster using theMurmur3Partitioner
if the murmur3 C extension has not been compiled - โ Add encoder mapping for
OrderedDict
- ๐ Use timeouts on all control connection queries
- ๐ป Benchmark improvements, including command line options and eay multithreading support
- ๐ Reduced lock contention when using the asyncore reactor
- Warn when non-datetimes are used for 'timestamp' column values in prepared statements
- โ Add requirements.txt and test-requirements.txt
- โ TravisCI integration for running unit tests against Python 2.6, Python 2.7, and PyPy