Revision history for Cassandra-Client 0.19 2022/03/03 * Fix bug with multiple async requests returning result for other requests * Update tests to prefer Cassandra 4.x 0.18 2020/11/12 * Improve SASL interface 0.17 2020/07/21 * Added idempotency awareness to allow for write retries 0.16 2019/02/08 * Fix issue in the requirements list 0.15 2019/02/08 * Implement stricter timeout checks in case nodes go away * The client now defaults to protocol version 4. A backwards-compatible protocol_version argument was added. * Fix a bug that would stop prepare() from working * Address performance issue executing DDL on a single-node cluster * Add statistics hook to get timing information about queries * Switch promises library to AnyEvent::XSPromises 0.14 2017/11/27 * Refactor a series of (for now) undocumented APIs * Encoder rewritten in XS, for performance * Support connecting to Cassandra via IPv6 * Implement exponential backoff for connection failures * Avoid deep recursion when executing many queries concurrently 0.13 2017/07/05 * Fix a critical bug in the INET type decoder. If you run 0.12, upgrade immediately! * Add back 32bit support 0.12 2017/06/27 * Decoder rewritten in XS, for performance * Temporarily drops support for 32bit Perl. It will come back in a future version. 0.11 2017/06/12 * Stricter and faster reference checks * Deduplicate parallel prepare() calls for the same query * Deal with some of Perl's special variables like $" * Avoid leaking file descriptors in some cases * Support for User-Defined Types (UDT) * Support for the 'Tuple' data type 0.10 2017/01/30 * Add a retry policy implementation for generic request failures * Throttler: finally fix the feedback mechanism * Rework shutdown() to not need asynchronous code * Rework the pool management logic * Support for UTF-8 authentication data * Convenience method row_hashes() on a ResultSet * Basic TLS support * Make sure file handles always get closed when shutdown() is called 0.09 2016/11/15 * Fix support for Perl 5.20 and later * Fix a class of memory leaks caused by recursion using closures * Add support for TIME/DATE/TINYINT/SMALLINT data types added in CQL 3.3 * Avoid SIGPIPE when we connect to localhost but Cassandra is not present * Add support for named parameters 0.08 2016/10/25 * Change event loop implementation to EV * Redesign wait_for_schema_agreement, to actually wait for the schema agreement * Support for proper retry settings * Handle request backlogs by queueing them or failing them early * Add stack traces to asynchronous queries with errors * Fix handling of nested types, like list>> 0.07 2016/10/10 * Experimental support for client-side throttling * No more Perl 5.8 support -- 5.10 is now required * Addresses an error that can occur when a query is retried against a node that doesn't know that query * Fix a rare issue causing random "Request timed out" when utf8-flagged data is passed to non-utf8 types (ascii, blob) 0.06 2016/09/26 * Hopefully fixes support for Perl 5.8 * Addresses a documentation hole about the 'timestamp' type * Support for the 'varint' type * Support for the 'decimal' type * Addresses an issue that occurred when both the AnyEvent and synchronous options were used * Some refactoring to allow for future changes 0.05 2016/09/06 * Updates Makefile.PL to list the correct requirements 0.04 2016/09/05 * First version, released on an unsuspecting world.