Skip to content

Latest commit

 

History

History
307 lines (202 loc) · 17.4 KB

Changelog.md

File metadata and controls

307 lines (202 loc) · 17.4 KB

3.4.10

Fixes

  • Restore backward compatibility to session handler. Thanks @koleo!
  • Fix increment using floating point values.
  • Use correct C client bits for various Ubuntu builds.
  • Update to 4.0.7 version of C client.
  • Fix seg fault when configuration has "shm" option.
  • Update composer to reflect PHP7 support

3.4.9

Features

  • Support PHP 7

3.4.8

Features

  • Added Aersospike::operateOrdered API which takes the same parameters as Aerospike::operate but returns an indexed array of results, rather than a key-value associative array. CLIENT-652
  • Added support for Geospatial index using GeoJSON. CLIENT-542 Requires server >= 3.7.0

Fixes

  • Use session.gc_maxlifetime for the session timeout (was session.cache_expire). CLIENT-705

3.4.7

Features

  • Upgraded to C client 4.0.2.
  • Added list operations as standalone methods. CLIENT-561 Requires server >= 3.7.0
  • Added list operators for operate(). CLIENT-646 Requires server >= 3.7.0
  • isConnected() now testing the client’s connections to the nodes. CLIENT-624
  • Allow the Aerospike class to be extendable. CLIENT-648
  • Added a compression_threshold client config parameter. CLIENT-627
  • Added OPT_SCAN_INCLUDELDT option for scan(). CLIENT-610

3.4.6

Features

  • Secondary-index record UDFs using queryApply(). CLIENT-299
  • Enable shared-memory cluster tending through the constructor config. CLIENT-595
  • Added the config params max_threads, thread_pool_size. CLIENT-296
  • Removed the deprecated method createIndex(). Use addIndex(). CLIENT-585
  • Cleaned up the client documentation. Thanks @sergeyklay for your help.
  • Issues #72, #73, #74. Thanks @sergeyklay again!

Fixes

  • Fixed shared-memory cluster tending by generating a unique shm key per-hostname. CLIENT-9
  • Fixed issue #62. CLIENT-596

3.4.5

Fixes

  • Fixed a memory leak in batch read operations. CLIENT-568

3.4.4

Features

  • Added explicit control over the batch protocol through a php.ini config variable aerospike.use_batch_direct, or constructor config parameter Aerospike::USE_BATCH_DIRECT. The default value is 0 (i.e. batch-index) for servers with version >= 3.6.0. CLIENT-567
  • Added support for Ubuntu 15. Thanks @lwille.

3.4.3

Features

  • Upgraded to C client 3.1.24.
  • A new backward incompatible format for the data returned by existsMany(), as mentioned in the release notes for 3.4.0. The underlying C client interfaces with a new API for batch reads called batch index, which is implemented in server versions >= 3.6.0. Since batch reads can now target multiple namespaces, the old format is no longer appropriate. Instead, an indexed array is returned in an order corresponding to the array of keys passed as the argument to existsMany(). CLIENT-28
  • Allow TTL to be set with the write methods increment(), append(), prepend(), operate(), removeBin() using OPT_TTL. CLIENT-510
  • Updated the methods of class LList. Added filters to find, findFirst, findLast, findRange.
  • Expanded the examples for LList with integer, string, and map elements.
  • Removed deprecated LDT classes (LMap, LSet, LStack) and methods.
  • Fixed the documentation for the Enterprise Edition security methods.
  • Fixed the installer to place the Lua system files in /usr/local/aerospike/lua by default. Path override can be done by setting the environment variables LUA_SYSPATH, LUA_USRPATH before invoking build.sh.
  • Travis-CI cleanup.

Fixes

  • Fixed bug where malformed keys triggered a segfault in getMany(). CLIENT-140 / AER-4342
  • Fixed the client to cast PHP floats to and from as_double. CLIENT-225
  • Fixed issue #53 - correct configuration inheritance. CLIENT-88
  • Fixed issue #54 - return the correct error status for empty put(). CLIENT-69
  • Fixed issue #57 - incorrectly identifying RHEL. Thanks, @npenteado 👍

3.4.2

Features

  • Upgraded to C client 3.1.22. AER-3909
  • A new backward incompatible format for the data returned by getMany(), as mentioned in the release notes for 3.4.0. The underlying C client interfaces with a new API for batch reads called batch index, which is implemented in server versions >= 3.6.0. Since batch reads can now target multiple namespaces, the old format is no longer appropriate. Instead, an indexed array is returned in an order corresponding to the array of keys passed as the argument to getMany(). AER-4064
  • Tests and API documentation updated. Thanks to @rmondragon for his help.

3.4.1

Features

  • Added Security Methods for Aerospike Enterprise Edition. AER-3475
  • Added support for Debian 8.
  • Clarified configuration steps for the activating the extension with web servers, such as Nginx and Apache. Thanks Mickael Hassine.

Fixes

3.4.0

Welcome to the 3.4 release branch

This is the first release along the 3.4 branch. The astute observation of @arussellsaw in issue #48 has initiated a bit of realignment with other language clients (for example, aerospike/aerospike-client-python) with regards to multiple results, such as produced by aggregate(). In subsequent releases following 3.4.0, the batch-read methods getMany() and existsMany() will change as well.

  • In aggregate(), the result will no longer be wrapped in a pseudo-record format. Gone are the array keys metadata and key, as they are meaningless. An aggregation returns transformed and reduced results which no longer are the same as the source data, the records matched by the secondary index query. Further, we are pulling the results up out of the bin array key. If your Lua produces a single result map you will get back an array with that maps' fields as array keys. If your reducer returns multiple results, you will get an array of arrays, each of them key-value pairs. The example at examples/query_examples/aggregate.php shows both types of aggregation. After installing the new version of the client run cd examples/query_examples/ && php aggregate.php -a -c.
  • An upcoming change to getMany() and existsMany() (in a release > 3.4.0) will modify the returned result to an indexed array of records. In both cases, it will be equivalent to running get() or exists() in a loop and aggregating the returned records one-by-one into a PHP array. The batch-read methods will return a plural of the single equivalent methods. For example, getMany() on keys 1,2,3 in namespace test and set demo will return an array of what you expect from calling get() on each of those keys in a loop.

I hope you will see the benefit in these changes, and that if you use UDFs and batch-read methods the integration work on your end is minimal.

Features

  • Support for null as valid argument to a UDF. AER-4003
  • Prefer to always download the appropriate C client ahead of building the extension. AER-4001

Fixes

  • Fixed issue #48 - a new backward incompatible format for data returned by aggregate(). AER-3948 Thanks @arussellsaw.

3.3.16

Features

  • Added an optional ttl argument to Aerospike::OPERATOR_TOUCH in operate(). AER-3566
  • Copy registered modules to user path in register(). AER-3627
  • LList changes: added isValid(), findRange(), setPageSize(). Modified scan() in a compatibility breaking way.

Fixes

  • Fixed issue #46 - reusing keys from scan/query. AER-3748
  • Fixed issue #44 - accept numeric strings for increment(). AER-3812
  • Fixed bug preventing a default value of 'user' for serializer. AER-3527
  • Partially fixed issue #43 - bigger static allocation for as_val. AER-3708
  • Expanded checks for libcrypto. Thanks @jumping

3.3.15

Features

  • Upgraded to C client 3.1.16.
  • Added support for indexing complex types (lists, map) and for querying against those secondary indexes using the contains and range predicates. Those will become fully available with a near-future release of Aerospike server. AER-3425, AER-3434

Fixes

  • Fixed to allow OPT_SERIALIZER to be set to SERIALIZER_USER in an apply() call. AER-3528

3.3.14

Features

  • Fixed issue #41 - Implemented authentication in support of the Enterprise edition of Aerospike. AER-3551
  • Slight clean-up of the doc and examples.

Fixes

  • Making sure the bin-name length limit is 14, not 13 😉 AER-3571

3.3.13

Features

  • Deprecated: get_capacity(),set_capacity() methods of the LDT parent class.
  • Added the methods: find_first, find_last, find_range, exists, config, setPageSize. Requires server >= 3.5.8

Fixes

  • Fixed issue #33 fixed for non-ZTS PHP (still in progress for the other case).

3.3.12

  • Upgraded to C client 3.1.11.
  • Fixed issue #35.

3.3.11

  • Upgraded to C client 3.1.8
  • Fixed issue #30. The increment() method is modified to reflect the behavior of the C client (aka upsert)
  • Support for generation policies in remove(). Requires server version >= 3.5.3

3.3.10

  • Upgraded to C client 3.1.2
  • Removed dependency on Lua as a prerequisite
  • Added Aerospike::getKeyDigest()
  • Fixed issue #16
  • Fixed issue #22
  • Fixed issue #9
  • Upgrades to LList: update(), update_all(), UDF filter arguments for scan(), llist.filter wrapped into scan(), removeRange() implements llist.remove_range, llist.remove_all implemented as removeMany()
  • Deprecation notice for LMap, LSet, LStack
  • Enhanced the docs and examples

3.3.9

  • Fixes a memory leak in the increment() method.

3.3.8

  • Fixed issue #11

3.3.7

  • Fixed issue #17

3.3.6

3.3.5

  • Upgraded to C client 3.0.94
  • Faster close() resulting in faster tests and session handling
  • Fixed script that fetches the C client to work with minimal CentOS 7
  • Added support for queries without a predicate.

3.3.4

  • Fixed a bug with default serialization of unsupported types (boolean, float, etc)
  • Fixed a bug where scans did not respect OPT_POLICY_KEY
  • Added support for Linux Mint

3.3.3

3.3.2

3.3.1

  • Shared-memory cluster tending. Load is reduced when multiple PHP processes can share the data from a single tending thread.
  • Upgraded to release 3.0.90 of the C client
  • Reorganized the unit tests to run faster.
  • Removed deprecated status codes
  • Aerospike::ERR - now it’s just Aerospike::ERR_CLIENT
  • ERR_RECORD
  • ERR_THROTTLED
  • ERR_SCAN
  • ERR_UDF_FILE_NOT_FOUND

3.3.0

  • Batch operations - getMany() and existsMany()
  • Multi-op record operations - operate()
  • Compilation error fixed for OS X >= 10.9 (also tested on 10.10 "Yosemite")
  • Upgraded to release 3.0.86 of the C client

3.2.1

  • Examples cleaned up
  • Fixed issue #4

3.2.0

  • Admin methods createIndex() and dropIndex()
  • Info methods info(), infoMany(), getNodes()
  • Write methods support OPT_POLICY_GEN.

3.1.1

  • Starting version >= 3.1.0: format change for returned records - now all records come back as an array with keys ('key','meta','bins').
  • Set the C Client version to 3.0.84 (latest stable).
  • Methods get(), put() fixed to support OPT_POLICY_KEY.
  • Fixed apply() for case when the $returned parameter is not set.
  • Fixes to the .phpt tests.

3.1.0

  • format change for returned records - now all records come back as an array with keys ('key','meta','bins').
  • OPT_POLICY_KEY added for read and write methods
  • Support for Large Data Types with a PHP class library \Aerospike\LDT
  • stream UDF methods scanApply() and aggregate()
  • UDF module admin methods register(), deregister(), listRegistered(), getRegistered()
  • background scan method scanApply() with OPT_SCAN_* policies to control its behavior and scanInfo() helper.
  • standardized (and therefore modified) parameter lists for stream methods - query(), scan(), aggregate(), scanApply()
  • Fixes for FPM and APXS SAPIs
  • Extension is now built with src/aerospike/build.sh
  • Composer support
  • Integration with Travis CI