Skip to main content

Incompatible API Changes

Version 2.0.0 - Many Long standing semantic and syntactic changes

Returns ErrKeyNotFound error for when a key was not found instead of return no error and a nil Record

  • Get/Put/Touch/Operate and ExecuteUDF commands will return an ErrKeyNotFound error when the key does not exist in the database. The old behavior used to be not to return an error, but have an empty Record.Bins.

Other Changes

  • Renames Statement.Addfilter to Statement.SetFilter, change the name and type of Statement.Filters to Statement.Filter.
  • Remove ClientPolicy.RequestProleReplicas. The client will always request them.
  • Removes ScanPolicy.ServerSocketTimeout and QueryPolicy.ServerSocketTimeout in favor of the already existing Policy.SocketTimeout.
  • Renames Policy.Timeout to Policy.TotalTimeout to make the naming consistent with other clients.
  • Moves atomic package to internal.
  • Moves ParticleType package to internal.
  • Moves RequestNodeInfo and RequestNodeStats to methods on Node object, and adds InfoPolicy to the relevant API signatures.
  • Removes WaitUntilMigrationIsFinished from Scan/Query policies.
  • Changes NewConnection method signature, makes LoginCommand private.
  • Makes OperationType private.
  • Removes long deprecated method for pool management.
  • Removes unused ReadN method in Connection.
  • Embeds Policies as values and not pointers inside MultiPolicy, ScanPolicy and QueryPolicy.
  • Removes ToValueArray and ToValueSlice methods to discourage such suboptimal use. Changes QueryAggregate signature to remove the need for those methods.