Skip to content
This repository has been archived by the owner on Dec 23, 2024. It is now read-only.

v1.3.0

Latest
Compare
Choose a tag to compare
@KaymeKaydex KaymeKaydex released this 23 Dec 08:51
84f7c54

Migration

Starting with this release, all subsequent changes will be published officially inside https://github.com/tarantool/go-vshard-router

BUG FIXES:

  • Fix decoding fields for StorageCallVShardError (MasterUUID, ReplicasetUUID).

CHANGES:

  • Add comment why and how we handle "NON_MASTER" vshard error.
  • Don't support 'type Error struct' anymore.
  • Linter: don't capitalize error strings and capitalize log.
  • Fix misspellings.
  • Handle vshard error the same way as lua vshard router (resolve issue #77).
  • Decode 'vshard.storage.call' response manually into struct vshardStorageCallResponseProto using DecodeMsgpack interface to reduce allocations (partially #61, #100).
  • Remove mapstructure tag from StorageCallVShardError.
  • Update benchmarks in README files.
  • Package mapstructure is completely removed from direct dependencies list.

FEATURES:

  • Add pause between requests in buckets discovering. Configured by config DiscoveryWorkStep, default is 10ms.
  • Add ReplicaUUID to the StorageCallVShardError struct.
  • New method 'RouterMapCallRW[T]' to replace the deprecated one 'RouterMapCallRWImpl'.
  • New method 'Router.Call' to replace the deprecated one 'RouterCallImpl'.

REFACTOR:

  • Use constants for vshard error names and codes.
  • Reduce SLOC by using CallAsync method.
  • BucketForceCreate optimization: don't decode tnt response.
  • Remove bucketStatError type, use StorageCallVShardError type instead.
  • Add custom msgpackv5 decoder for 'vshard.storage.bucket_stat' response (partially #100).
  • Add custom msgpackv5 decoder for 'BucketStatInfo', since msgpackv5 library has an issue (see commit content).
  • Add custom msgpackv5 decoder for 'RouterMapCallRW'.
  • New backward-compatible signature for StorageResultTypedFunc to fix interface for RouterCallImpl.

TESTS:

  • Rename bootstrap_test.go -> tarantool_test.go and new test in this file.
  • Test for new 'RouterMapCallRW[T]'.