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/OperateandExecuteUDFcommands will return anErrKeyNotFounderror when the key does not exist in the database. The old behavior used to be not to return an error, but have an emptyRecord.Bins.
Other Changes
- Renames
Statement.AddfiltertoStatement.SetFilter, change the name and type ofStatement.FilterstoStatement.Filter. - Remove
ClientPolicy.RequestProleReplicas. The client will always request them. - Removes
ScanPolicy.ServerSocketTimeoutandQueryPolicy.ServerSocketTimeoutin favor of the already existingPolicy.SocketTimeout. - Renames
Policy.TimeouttoPolicy.TotalTimeoutto make the naming consistent with other clients. - Moves
atomicpackage to internal. - Moves
ParticleTypepackage to internal. - Moves
RequestNodeInfoandRequestNodeStatsto methods on Node object, and addsInfoPolicyto the relevant API signatures. - Removes
WaitUntilMigrationIsFinishedfromScan/Querypolicies. - Changes
NewConnectionmethod signature, makesLoginCommandprivate. - Makes
OperationTypeprivate. - Removes long deprecated method for pool management.
- Removes unused
ReadNmethod inConnection. - Embeds Policies as values and not pointers inside
MultiPolicy,ScanPolicyandQueryPolicy. - Removes
ToValueArrayandToValueSlicemethods to discourage such suboptimal use. ChangesQueryAggregatesignature to remove the need for those methods.