Overview of changes
- Support for natively running YugaByte DB using Kubernetes StatefulSets! YugaByte DB now works in GKE as well.
- Distributed transactions supported at isolation level SNAPSHOT ISOLATION.
- HINCRBY support in Redis API.
- Defaults for CQL client driver switched to strong consistency.
- Lots of performance enhancements and fixes. Notably - lock free hybric clock implementation. New YugaByte perf report uploaded.
- Improved debuggability - added slow query logging for Redis.
- Overhauled the third party build system to make it more readable and easy to maintain.
Thanks
- @mchang31415 for reporting a number of perf issues.
- @praneeth-nimmagadda for reporting issues with the
COUNTER
datatype. - @nickhristov for pointing out that duplicate primary keys in a batch are not getting loaded
Key commits
- [
2150bee
] Added AWS C++ SDK 3rd party. - [
8d8030f
] Fix TransactionManager destruction - [
9546e7e
] Fix counter column datatype in system_schema.columns. - [
3074f56
] Allow multiple writes of the same row within a batch request. - [
8ee1288
] Update 3rd party version for mac - [
cfd54dd
] Periodic timers - [
2292067
] Implement HIncrBy - [
7a7421f
] Fix a CHECK failure due to handling of slow responses when looking for leader master - [
bed88c9
] Create cloud-machine-types-analysis.md - [
90ae07b
] Update yb-perf-0.9.5rc-Feb-13.md - [
ab9deaa
] Set defaults for read_pool_* flags - [
eb32648
] #51: Kubernetes cname only tries the first ip address on GKE (#53) - [
2dbd7e8
] Update yugabyte-statefulset.yaml - [
0c87387
] Fix master UI to show only running tables - [
c294304
] Capture by reference to avoid copies during HMGet - [
c6d2635
] High CPU usage in CleanWaitingConnections - [
d4fd22c
] Print slow queries for Redis. Similar to CQL - [
6488bfd
] Set GLOG flag so that we do not sync for WARNING messages - [
e230091
] Fix parsing of tcmalloc max thread cache bytes. - [
54121c0
] Added tests for ImportSnapshotMeta. - [
072595a
] Update Cassandra Java driver versions to use default YB_STRONG consistency level. - [
c62d02a
] Make HybridClock Now/Update lock-free - [
4fa3118
] Parallelize reads for Redis ops in the same TabletService::Read request - [
8cd931c
] Increase tcmalloc local thread cache size for tservers. - [
3ef0019
] Reuse iterator for Redis Operations - [
dfb16c9
] Prevent core dumps for LOG(FATAL) and CHECK. - [
07ffec9
] Fix QLTabletTest.SkewedClocks and other safe time logic in MvccManager - [
58c97d3
] Change YQL transaction isolation level to SNAPSHOT_ISOLATON.