This release includes potential BREAKING CHANGES.
- New Features
- Introduces
ClientPolicy.LimitConnectionsToQueueSize
. If set to true, the client won't attemp to create new connections to the node if the total number of pooled connections to the node is equal or more than the pool size. The client will retry to poll a connection from the queue until a timeout occures. If no timeout is set, it will only retry for ten times.
- Introduces
- Improvements
- BREAKING CHANGE: |
Uses type aliases instead of structs in several XXXValue methods. This removes a memory allocation perValue
usage.
Since everyPut
operation uses at list one value object, this has the potential to improve application performance.
Since the signature of severalNewXXXValue
methods have changed, this might break some existing code if you have used the value objects directly. - Improved
Logger
so that it will accept a generalizedLogger
interface. Any Logger with aPrintf(format string, values ...interface{})
method can be used. Examples include Logrus. - Improved
Client.BatchGet()
performance.
- BREAKING CHANGE: |
- Fixes
- Bin names were ignored in BatchCommands.
BatchCommandGet.parseRecord()
returned wrong values whenBinNames
was empty but not nil.