Python Client Library Release Notes

  • 3.6.0
    Release Date: January 9, 2019

    Features

    • Breaking Change: Shared Memory layout has changed. Therefore the default SHM Key has changed from `0xA7000000` to `0xA8000000` If you were specifying your own key, it is critical that this be updated for the use of client `3.6.0`

    • Removed the exceptions `BinExistsError`, `BinNotFound` .

    • Increase C client version to 4.4.0.

    • Add support for rack aware configuration.

    Fixes

    • Fix out of date documentation.

  • 3.5.0
    Release Date: November 14, 2018

    Features

    • Increase C client version to 4.3.20.

    • Add Query#execute_background to allow application of record UDFs in the background.

    • Allow passing map policy to map operation helpers.

    • Add CDTWildcard() and CDTInfinite(). These require Aerospike Server 4.3.1.3 or higher.

    • Add map_write_flag constants. These are used in conjuction with the `map_write_flags` entry of map policies and require Aerospike Server version >= 4.3.0.

    • Changes: Remove `use_batch_direct` policy option for `get_many`, `select_many`, `exists_many`. Code using these options will continue to work, but the option will be ignored.

    Fixes

    • Fix memory leak when a query or scan fails due to server error.

    • Fix reference leak when destroying queries or scans.

    • Fix system error when predicate creators are called with invalid arguments.

    • Fix memory corruption caused by deserialization failure.

    • Fix incorrect documentation about use of `aerospike.MAP_WRITE_PARTIAL` and `aerospike.MAP_WRITE_NO_FAIL`.

  • 3.4.2
    Release Date: October 2, 2018

    Features

    • Max bin name length is now 15. For servers prior to 4.2.0 the limit is still 14.

    • Update to C client 4.3.17.

    • .lua files for local aggregation are no longer installed locally with the library.

    Fixes

    • Fix potential memory corruption when parsing invalid GeoJSON.

    • Fix invalid index type being converted to a valid type.

  • 3.4.1
    Release Date: August 15, 2018

    Features

    • Add new Relative CDT operations to the `aerospike_helpers` package. These require server version 4.3.0.2 or newer.

    • Update to C client 4.3.14.

    • Updates to add `write_partial` and `no_fail` entries to map and list policies.

  • 3.4.0
    Release Date: July 11, 2018

    Features

    • Added new package `aerospike_helpers` The packages contains helper functions to make using the aerospike client easier. Initially it contains a subpackage `operations` which contains helper functions for creating the arguments for the `client.operate` and `client.operate_ordered` methods.

    • Add additional ordered list operations.

    • Add Inverted key to certain map operations.

    • Add new map operations.

    • Update to C Client version 4.3.13

    • Added new entry to TLS configuration dictionary `keyfile_pw`

    • Add `fail_on_cluster_change` option to query_policy dictionary

  • 3.3.0
    Release Date: May 24, 2018

    Features

    • Add support for Predicate Expressions during Queries.

    • Update to C Client version 4.3.12

    • Improve installation on Ubuntu 18

    Fixes

    • Fix potential memory corruption when the client is unable to convert a returned object.

  • 3.2.0
    Release Date: May 1, 2018

    Features

    • Update to C Client version 4.3.11

    • Add map_get_by_value_list

    • Add map_get_by_key_list

    • Add auth_mode, and login_timeout_ms as config parameters for the client constructor.

    • Add for_login_only config option as an optional field in the TLS config dictionary.

    Fixes

    • Fix u_int32_t type preventing installation on Alpine.

    • Fix possible crash when client object is created without using a constructor.

  • 3.1.1
    Release Date: March 21, 2018

    Features

    • Update to C Client version 4.3.8

    Fixes

    • Fix error preventing individual policies being set from constructor.

  • 3.1.0
    Release Date: March 14, 2018

    Features

    • Update to C Client version 4.3.6

    • Support LDAP authentication for future server versions. CLIENT-994

    • Add in_doubt to args passed to exceptions internally. This information may be accessed by checking the 5th argument to the exception e.g., e.args[4]

    • Add exists option entry to operate policies

    Fixes

    • Documentation: Add Documentation for default values of policy options.

    • Documentation: Add Missing policy description for POLICY REPLICA SEQUENCE

  • 3.0.2
    Release Date: February 21, 2018

    Features

    • Update to C Client version 4.3.5

    • Add in_doubt to args passed to exceptions internally. This information may be accessed by checking the 5th argument to the exception e.g., e.args[4]

    Fixes

    • Empty record returned from server may cause system error in list_pop, list_pop_range, list_get CLIENT-992

    • Error message overwritten in infonode _CLIENT-991

  • 3.0.1
    Release Date: January 24, 2018

    Features

    • Update to C Client version 4.3.3

    • Add in_doubt property to exception classes.

    Fixes

    • Memory Leak with Query Objects with GeoJSON predicate CLIENT-979

    • Memory leak in list_trim CLIENT-980

    • Reference count leak in get_many, select_many CLIENT-988

  • 3.0.0
    Release Date: January 10, 2018

    Features

    • Update to C Client version 4.3.1.

    • Added a new list increment operation OP_LIST_INCREMENT. It can be used to increase an element of a list by a provided amount.

    • Added the option to specify a specific node to run on a scan on, via a new optional nodename parameter. CLIENT-939

    • Added the option to specify that Query.results and Query.foreach should not return bins, via a new optional parameter options to both methods. CLIENT-915

    • Added aerospike.info_all() to allow sending of an info command to all nodes in the current cluster.

    • Added linearizeread option to read policies. Requires Enterprise server >= 4.0.0. _CLIENT-951

    • Enable aerospike.get_nodes() to run when connected to a TLS enabled server.

    • Enable aerospike.info_node() to function when using a TLS enabled server. View the documentation for the method to see the steps necessary for contacting a TLS enabled server.

    • Add additional policy values which can be specified during client construction, or via arguments to functions.

    • Add stricter typechecking of policy values passed in to constructor.

    • Add finer granularity to constructor policy options, adding support for setting base policies for Read, Write, Operate, Apply, Scan, Batch, Remove, and Query methods individually.

    • Simplified installation on Debian 9.

    • Breaking Change: Removed LDT (Llist) support and related methods.

    • Breaking Change: Methods which create indexes will now raise an error if the specified bin has already been indexed, or if an index with the same name already exists.

    • Breaking Change: Methods which drop indexes, will now raise an error if the named index does not exist.

    • Breaking Change: Shared memory layout has changed, and as such the default shm key has changed to '0xA7000000'. If manually specifiying an shm key, it is crucial to ensure that a separate key is used in order to prevent this version's client from sharing memory with a previous version.

    • Breaking Change: The names of certain policy fields has changed. See the documentation for up to date information. Specifically: 'timeout' has been changed into two separate fields total_timeout and socket_timeout for all policies besides 'admin' and 'info'. Currently timeout will act as an alias for total_timeout, but that should be considered deprecated, and will be removed in the future.

    • Breaking Change: retry as a key in policy dicts has been removed in favor of max_retries, and the default number of retries for read operations is now 2. WARNING: Database writes that are not idempotent (such as an aerospike.increment) should not be retried because the write operation may be performed multiple times if the client timed out previous transaction attempts. It's important to use a distinct policy for non-idempotent writes which sets max_retries = 0;

    • Documentation: Improved Doc strings for Client methods. Thanks to @Dundee for this contribution!

    • Documentation: Added api-changes.md to the github repository to give detailed information on changes between client versions.

    • Documentation: Updated documentation for the client policies to show new field names and defaults.

    • Documentation: Updated the documentation for certain CDT methods - list_get, list_get_range, list_size, map_size, map_get_by_key, map_get_by_key_range, map_get_by_value, map_get_by_value_range, map_get_by_index, map_get_by_index_range, map_get_by_rank, map_get_by_rank_range to accurately specify that the meta argument is currently unused in those methods.

    • Documentation: Update BUILD.md to include downloading the python client. CLIENT-940

    • Documentation: Fix documentation error - OS environment variables are not passed into the python setup.py build --force command. CLIENT-942

    • Documentation: Fix incorrect import of errors in code snippets.

    • Deprecation: client.info has been deprecated. In order to send requests to the entire cluster, the new method client.info_all should be used. In order to send requests to hosts specified in a list, we recommend a loop invoking multiple calls to aerospike.info_node. See the api-changes file for an example of such code.

    • Deprecation: Setting of global policy defaults via entries in the policies dictionary in the constructor config dict has been deprecated. See the constructor documentation for the new recommended method of specifying defaults.

    Fixes

    • Large malloc in UDF exceptions, memory leaks in removebins, and query_apply. _CLIENT-944

    • Fix bugs in queryapply. _CLIENT-945

    • Incorrect values for predicate in query apply causes system error, crash in debug builds of python.

    • getmany, exists_many, select_many crash with byte array keys. _CLIENT-954

    • Invalid key tuple when utilizing batch direct leads to invalid free. CLIENT-955

    • Non integer values passed as arguments to query_apply inside of numeric_range_predicate, will be cast to 0.

    • Allow meta=None to be passed to arguments with an optional metadata dictionary parameter. Setting it to None will have the same effect as not providing the argument.

  • 2.2.3
    Release Date: October 10, 2017

    Fixes

    • Ensures consistent setting of permission bits for pip distributions.

  • 2.2.2
    Release Date: October 5, 2017

    Fixes

    • Add support for C client resolution when compiling on Amazon Linux.

  • 2.2.1
    Release Date: September 22, 2017

    Features

    • Updated to C client version 4.1.8.

    • Allowed setting of the max_socket_idle for all connections instead of only being configurable for TLS connections. Parameter has been moved from the tls config dictionary to the main config dictionary. Although the previous syntax will not raise an exception, it will not set the value.

    • Improved the distribution of the client. Support files will be stored in the same location regardless of whether a binary or source wheel was the source.

    • Changed installation of system Lua files (see README for details).

  • 2.1.3
    Release Date: August 10, 2017

    Fixes

    • Setting usebatch_direct in get_many causes an error. _CLIENT-909

    • Memory corruption caused by long role names in admin methods. CLIENT-910

    • Memory leak in client.info with unicode request strings. CLIENT-912

    • Modify operate_ordered to perform operations in a single transaction.

    • Update the SHM documentation.

    • Update documentation for operate and operate_ordered.

  • 2.1.2
    Release Date: July 18, 2017

    Features

    • Improved compiled wheel compatibility with different versions of OS X.

    • Expose batch policy config options (see documentation). CLIENT-907

  • 2.1.1
    Release Date: June 21, 2017

    Fixes

    • Improved OS X compilation steps. CLIENT-791 CLIENT-904

    • Update setup.py to lock the c client version correctly.

    • Docs - Improved clarity of readme and build instruction files.

  • 2.1.0
    Release Date: May 25, 2017

    Features

    • Add support for TLS on Aerospike EE

    • Add support for IPV6

    • Update C client to version 4.1.6

    Fixes

    • Fix segfault on geojson storage.

    • Fix build on ubuntu 17. (Thanks @mvnm !)

    • Ensure environment variables to be passed to scripts. (Thanks @Myz !)

  • 2.0.13
    Release Date: May 15, 2017

    Fixes

    • Fix issue when trying to register an empty or non-existent lua file. CLIENT-883 CLIENT-884

    • Python 2.7 unicode bin names in select are not returned. CLIENT-485

    • Memory corruption on operation_destroy. CLIENT-885

    • Fix for null fields in exceptions.

    • Fixes for two byte issues, change to always return bytearray for unsupported bytes type.

    • Improved error messages for client constructor.

    • Treat key as bytes if unicode decoding fails. (Thanks @mluscon!)

  • 2.0.12
    Release Date: April 10, 2017

    Fixes

    • Add in missing error codes so the client errors will match what is coming back from the server.

    • Fix build on Alpine Linux (thanks @OndraVoves!)

  • 2.0.11
    Release Date: April 7, 2017

    Features

    • Support configurable scan socket write timeout for python. CLIENT-872

    • Support truncate api for python. CLIENT-855

    Fixes

    • Update to c-client version 4.1.5.

    • Stream UDFs - python udfput() does not update client side udf. _CLIENT-820

    • Query Segfaults when a record contains a Python Blob bin which can not be deserialized. CLIENT-880

    • Calling Map Size on a non existent bin returns a very large number. CLIENT-843

  • 2.0.10
    Release Date: March 22, 2017

    Fixes

    • Update to c-client version 4.1.4.

    • Test logic not reliable. CLIENT-218

    • Segfault on client#info with incorrect arguments. CLIENT-837

    • Python Client can trigger memory violations when calling map* methods with incorrect arguments. _CLIENT-838

    • geocontains_point queries fail when trying to use List or map indexes. _CLIENT-844

    • Memory leak in select() method with tuple of unicode strings. CLIENT-846

    • Python client.list* methods leak memory with string keys. _CLIENT-847

    • Geospatial predicate constructors leak memory. CLIENT-849

  • 2.0.9
    Release Date: March 7, 2017

    Fixes

    • Fix memory allocation of search string when there is a user and multiple hosts. CLIENT-840

  • 2.0.8
    Release Date: February 10, 2017

    Fixes

    • Update to c-client version 4.1.3.

    • Fix memory leak with geojson objects. CLIENT-819

    • Don't ignore errors in the getmany() call. _CLIENT-798

    • Better reporting of errors from the InfoNodeInvoke() call. _CLIENT-818

    • Fix memory leak in bin_strict_type_checking

  • 2.0.7
    Release Date: February 3, 2017

    Features

    • Add aerospike.POLICY_REPLICA_SEQUENCE to the replica policies.

    • Add retry_on_timeout(boolean) to the apply/read/remove/write/operate/batch policies.

    Fixes

    • Correct the documentation for scan.results().

    • Use Py_BuildValue to build geo lists to avoid segfault due to refcounting issues.

    • Check for Unicode string returned from AerospikeGeospatial_DoDumps and handle correctly.

    • Fix the memory leak in map operate.

  • 2.0.6
    Release Date: November 17, 2016

    Features

    • Support cluster name. CLIENT-775

    • Add TTL constants (aerospike.TTL_NAMESPACE_DEFAULT, aerospike.TTL_NEVER_EXPIRE, aerospike.TTL_DONT_UPDATE) which can be used for the ttl value in the meta dict.

    Fixes

    • Fix segfault when calling connect() after closing client.

    • Fix memory leak in operate/operateOrdered methods.

  • 2.0.5
    Release Date: September 8, 2016

    Features

    • Support Durable Delete. Requires future release of Aerospike Server Enterprise Edition.

    Fixes

    • Resolve C client directory when building wheel.

    • Use correct C client bits for different versions of Ubuntu. CLIENT-737

    • Fix scan tests when LDT is not enabled on test namespace. CLIENT-751

  • 2.0.4
    Release Date: July 27, 2016

    Features

    • Sorted map operations

    • Add tend_interval to configuration properties

    • Add max_conns_per_node to configuration parameters

    • Scan_apply now accepts None for arguments

    • Update to C client vs. 4.0.6

    • Allow installation on Ubuntu 16.04

    Fixes

    • Fix leak in serialization code

    • Allow integer keys with value -1 CLIENT-717

    • Info() command can cause segfault CLIENT-732

    • Touch operator does not update ttl properly CLIENT-743

  • 2.0.3
    Release Date: April 15, 2016

    Features

    • Geo predicates (geo_within_geojson_region, geo_within_radius, geo_contains_geojson_point, geo_contains_point) now allow an optional index_type parameter to allow querying lists/maps of geo objects.

    • Add new aerospike.INDEX_GEO2DSPHERE index type to allow creation of secondary indexes on GeoJSON data.

    Fixes

    • Calling connect() twice on client causes seg fault. CLIENT-691

    • client.exists() gives an exception when record doesn't exist. CLIENT-697

  • 2.0.2
    Release Date: March 11, 2016

    Features

    • client.operate_ordered(ns, set, key) function which performs multiple bin operations on a record with a given key, with the results being returned as a list of (bin-name, result) tuples. CLIENT-651

    Fixes

    • Wrong error message for empty Lua file registration. Now returns AEROSPIKE_ERR_LUA_FILE_NOT_FOUND with a message stating the file is empty. CLIENT-664

    • Allow integer values for aerocircle queries. CLIENT-688

    • Fix memory leak in operate method when using Unicode Strings. CLIENT-690

    • Incorporate PR-110 for typo fix in README.rst from @raftelti.

    • Incorporate PR-100 for scan apply fix from @hawka to allow empty py_args to client.can_apply().

    • Incorporate PR-113 to terminate a scan if callback raises an exception from @RonRothman.

  • 2.0.1
    Release Date: February 24, 2016

    Features

    • aerospike.calc_digest(ns, set, key) function added to get the digest for a key without requiring a client connection.

    Fixes

    • get_many() with list of 25000 keys or more would seg fault. Switch to heap allocation for requests >20000 keys.

    • Change maximum number of objects that can be serialized from 1024 to 4096 and raise an exception if this limit is bypassed.

    • aerospike.null was implemented as a type incorrectly. This caused pympler to crash after loading aerospike module.

    • Use C client version 4.0.2 which includes a memory leak fix for as_operations_new().

  • 2.0.0
    Release Date: February 17, 2016

    This release adds support for Python 3.

    Features

    Fixes

    • Fixed a bug where boolean items in a list got cast to integers by list operations. CLIENT-632

    • Fixed issue #92 wrong exception raised by aerospike.LList.find_first. CLIENT-607

    • Fixed enterprise edition tests. CLIENT-642

  • 1.0.58
    Release Date: December 31, 2015

    This release adds support for geospatial index and query, a feature requiring Aerospike server >= 3.7.0.

    Features

    Fixes

    • Fixed case where a wrong exception was thrown for error status 160. CLIENT-600

    • Fixed a bug where as_geojson was not casting back to aerospike.GeoJSON. CLIENT-628

  • 1.0.57
    Release Date: December 9, 2015

    Features

    • Added aerospike.null to be used for removing bins with write operations. Using this value with an aerospike.Client.put is equivalent to calling aerospike.Client.remove_bin on that bin.

    • Added a config param strict_types (default True) for controlling whether the client does type checking for write operations. CLIENT-582, CLIENT-574

    • Updated the documentation for multi-ops and regarding seed nodes.

    Fixes

    • Fixed issue 91, allowing -1L as a valid bin value. CLIENT-598

    • Fixed the client to respect an explicit lua user_path in its config. CLIENT-597

    • Fixed the touch operation in aerospike.Client.operate to not require bin or val. CLIENT-584

    • Allow bin names to be null-terminated bytearrays. CLIENT-581

    • Fixed false-negative tests. CLIENT-602

  • 1.0.56
    Release Date: November 24, 2015

    Features

    Fixes

    • Fixed issue issue 85 - installer error in environments where the user does not have permission to copy system Lua files to the correct directory. Thanks @RonRothman.

    • Fixed issue issue 82 - vary the shared-memory cluster tending key by host; added shm_key(). CLIENT-71.

    • Fixed a bug occuring in get_nodes when the cluster had one node. CLIENT-566

    • Fixed a bug in client config when the host address is a unicode string. CLIENT-556

    • Fixed issue issue 88 - expanded the function signature for loggers.

    • Fixed increment() to require an integer value. CLIENT-571

    • Fixed a parsing bug in info(). CLIENT-118

    • Fixed an incorrect exception raised for callback function errors. CLIENT-555

    • Fixed tests containing the deprecated scan_info to use job_info. CLIENT-573

    • Fixed an inaccurate geospatial test.

    • Fixed typos in the API documentation. Thanks @tigran-a.

  • 1.0.55
    Release Date: October 21, 2015

    Features

    • Configuration support for connection pool size. CLIENT-277

    Fixes

    • Fixed the way the installer creates the Lua system path on OS X.

  • 1.0.54
    Release Date: October 18, 2015

    Features

    Fixes

    • Fixed issue 77, crash when an arg of a UDF is a bytearray. CLIENT-517

    • Status code AEROSPIKE_ERR_SERVER raises an aerospike.exception.ServerError. CLIENT-535, CLIENT-552.

    • Fixed a bug where the POLICY_KEY_SEND policy was not being followed. CLIENT-518

    • Fixed behavior regarding the system lua files in the installer and client. CLIENT-544

  • 1.0.53
    Release Date: October 6, 2015

    Features

    • Upgraded to C client 3.1.24.

    • Implemented Issue 66, supporting separate serialization for different instances of aerospike.Client CLIENT-234

    • Implemented support for geospatial features. Added an aerospike.GeoJSON class to wrap GeoJSON data, enabling its proper serialization. Support for building geo2dsphere indexes on bins with GeoJSON data, and for queries over that data using the geo_within predicate. Requires a near-future version of the server. CLIENT-267

    Fixes

    • Fixed a bug where bins containing as_double type data were incorrectly freed after a put. CLIENT-496

  • 1.0.52
    Release Date: September 10, 2015

    This release collects several bug fixes for the batch read methods. If you make use of them please upgrade your client. See release 1.0.50 for more information about the way the batch read methods have changed.

    Fixes

    • Fixed a memory leak in the batch read methods. AER-4367

    • Fixed Issue 76 - batch-read methods get_many, exists_many, and select_many to return a 4-tuple key component. AER-4358

    • Fixed the batch read methods to accept digest keys in their keys parameter. AER-4038

  • 1.0.50
    Release Date: September 8, 2015

    Features

    • Upgraded to C client 3.1.22.

    • Support for the batch-index API. AER-3908

    • Batch methods are changing in a non-backward compatible way. In order to support batch-reads from multiple namespaces, get_many, exists_many, and select_many now return a list of records, each fitting the record tuple format.

    • Added job_info, a unified method for tracking the status of scan and query jobs. Added corresponding aerospike.JOB_STATUS_* constants.

    • Deprecated scan_info.

    • Support for secondary index record UDF (query_apply). Requires a future release of the server. AER-3981

    • Support for a native double data type. Python float bin values will convert to and from as_double. Requires server version >= 3.6.0. AER-4239

    • Added the privilege aerospike.PRIV_READ_WRITE_UDF.

    • New examples for query_apply and get_many.

    • Ensure that the examples work with Aerospike Enterprise Edition. AER-3707

    • Cleaned up and clarified documentation. Thanks @tivvit for your help.

    Fixes

  • 1.0.49
    Release Date: July 31, 2015

    Features

    • Added support for Debian 8. AER-4134

    Fixes

    • Fixed Issue 67. AER-4110

    • Added better type checks for increment/append/prepend/operate. AER-4129

    • Another (hopefully final) pass at fixing Issue 53. Thanks to @jholliman for all his help.

  • 1.0.48
    Release Date: July 10, 2015

    Fixes

    • Fixed Issue 53 by adding a wheel binary distribution package for OS X.

    • Fixed upgrade problems on Linux distributions.

  • 1.0.47
    Release Date: July 9, 2015

    Features

    Fixes

    • Fixed Issue 63 - thanks @pauloborges for pull request 64.

    • Fixed bug in deserialization of random bytes. AER-3904

    • Fixed bug where queries failed to return records which contained LDTs. Thanks @arthurprs for reporting this. AER-3914

    • Throw an exception when trying to set an integer value greater than sys.maxsize. AER-3831

  • 1.0.44
    Release Date: May 19, 2015

    Features

    Fixes

  • 1.0.43
    Release Date: April 21, 2015

    Features

    • Allow for a `None` as the set value for index creation methods. Support scans and queries against a namespace alone (with the set given as None). AER-3462

    • Consistent Unicode Handling. This is a change in how string values are returned. Both `str` and `unicode` values are converted by the client into UTF-8 encoded strings for storage on the aerospike server. Read methods such as get, Query, Scan and operate will return that data as UTF-8 encoded str values. To get a unicode you will need to manually decode the string.

    • Fixed errors in the example scripts.

    Fixes

    • Fixed Issue 49 - udf_put() hangs. AER-3537

    • Fixed a segfault which happened while scanning a namespace with `None` given for the set. AER-3464

    • Fixed Issue 50 - test harness skips running security methods against community edition.

  • 1.0.42
    Release Date: April 3, 2015

    Features

    • Upgraded to C client 3.1.11.

    • Added support for indexing complex types (lists, map) and for querying against those secondary indexes. Those will become fully available with a near-future release of Aerospike server.

    Fixes

    • Raise a clear exception when bins are created with a name longer than 14 characters.

    • Allow Scan and Query objects to be reused.

    • Raise an exception when trying to perform operations on an unconnected client (rather than segfaulting).

  • 1.0.41
    Release Date: March 24, 2015

    Features

    • Implemented support for global policies through the client config.

    Fixes

    • An AS_BYTES_BLOB will be set to a bytesarray if no deserializer is set.

    • The signatures for the following methods have been modified to make them more consistent. get_nodes(), info, info_node.

  • 1.0.40
    Release Date: March 19, 2015

    Features

    • Enhanced automatic serialization of unsupported types using cPickle.

    • Support for user-provided serializer/deserializer methods as an alternative to automatic serialization.

    • Added Sphinx documentation to doc/. See doc/README.md for instructions.

    • The python client documentation is hosted on readthedocs.

    • The signatures for the following methods have been modified to make them more consistent. udf_put, udf_list, udf_remove, udf_list (was udf_getRegistered), index_string_create, index_integer_create, index_remove.

    Fixes

  • 1.0.38
    Release Date: March 6, 2015

    Features

    • Upgraded to the C client 3.1.8. Requires server version >= 3.5.3

    Fixes

    • Fixed Issue 38

    • Fixed Issue 40

    • Fixed Issue 41. The increment() method is modified to reflect the behavior of the C client (aka upsert)

    • Fixed bugs where batch-operations were not showing the digest part of the key tuple

  • 1.0.37
    Release Date: February 19, 2015

    Features

    • Upgraded to the C client 3.1.2

    • Removed dependency on Lua as a prerequisite

    • CentOS 7 support

    • Large Data Types added

    • API expanded for documentation and examples

    Fixes

    • Fixed Issue 32. Unicode strings work as input to the various methods.

    • keyword args for put() changed to ‘meta’ (not ‘metadata’) and 'bins' (not 'record') for API consistency.

  • 1.0.36
    Release Date: January 22, 2015

    Features

    • Expanded the API documentation

    • Tied the Python client to a specific version of the C client (currently 3.0.94)

    Fixes

    • Fixed bug in Unicode string handling

  • 1.0.35
    Release Date: January 8, 2015

    Features

    • query.apply() requires a list for UDF function arguments

    • Added support for queries without a predicate

    Fixes

    • Fixed Issue 30

    • Fixed bug with secondary index creation on a multi-node cluster

  • 1.0.34
    Release Date: December 31, 2014

    Features

    • Added bin operations client.append(), prepend(), increment()

    • Added Issue 16 Record multi-ops using client.operate()

    Fixes

  • 1.0.33
    Release Date: December 19, 2014

    Features

    • Added Issue 9 - Batch read functionality.

    Fixes

    • Fixed Issue 20 Query operation does not stop when False returned.

    • Fixed Issue 29 Storing an array causing problems with duplicated items.

    • Memory leak fixes.

    • Renamed info() call to info_many, for all nodes in the cluster.

    • Policy changes to map C client closely.

  • 1.0.27
    Release Date: September 29, 2014

    Fixes

    • Returning False from a callback function to scan.foreach() will abort scan.

    • Fix Issue 15 on unicode.

    • Add support for digests in key tuples.

    • Add support for fedora20. Add missing dependency to zlib.

  • 1.0.21
    Release Date: September 18, 2014

    Fixes

    • Fixed issue where unicode strings could not be stored in bins.

  • 1.0.20
    Release Date: September 16, 2014

    Fixes

    • Fixed memory leak and corruption issue with Unicode strings.

  • 1.0.19
    Release Date: September 16, 2014

    Fixes

    • Removed bad prints

  • 1.0.18
    Release Date: September 15, 2014

    Fixes

    • Fixed handling of policies for client.get() operation

  • 1.0.17
    Release Date: September 15, 2014

    Features

    • Added ability to project bins on a read using `client.select(key, bins)`.

  • 1.0.16
    Release Date: September 15, 2014

    Fixes

    • Fixed memory leak w/ scan operation.

  • 1.0.15
    Release Date: September 4, 2014

    Fixes

    • Fixed memory leak w/ bins containing bytearray values.

  • 1.0.14
    Release Date: September 3, 2014

    Fixes

    • Fixed memory leak w/ keys

  • 1.0.13
    Release Date: September 3, 2014

    Features

    • Added .travis.yml for TravisCI.org

    • Enhanced benchmarks and examples

    Fixes

    • Removed an erroneous free

  • 1.0.12
    Release Date: August 19, 2014

    Features

    • Added support for Unicode strings

    • Aerospike Admin API added

    • Improved support for aggregations

  • 1.0.3
    Release Date: July 15, 2014

    Features

    • Introduced Aerospike Python Client

    • Support for single record (eg, put(), get(), exist(), select(), remove()) calls.

    • Support for user-defined functions.

    • Support for scans, queries and aggregations.