v2.0.0 release notes
Released September 17, 2019.
docker pull yugabytedb/yugabyte:18.104.22.168-b16
YSQL is now generally available and is ready for production deployments. Details available in Announcing YugabyteDB 2.0 GA: Jepsen Tested, High-Performance Distributed SQL.
File format change
NoteVersion 2.0 release includes a backward incompatible file format change for YSQL. Note: Prior to 2.0, YSQL was still in beta. This means that if you have an existing cluster running releases older than 2.0 with YSQL enabled, then you will not be able to upgrade to version 2.0 or higher release.
There are two ways to address the above note.
- If you don't care about preserving your existing data, then delete your cluster, and create a new cluster with 2.0.x.x
- If you want to continue using your existing data, then please save your data, delete the cluster, create a new cluster with 2.0.x.x and then load the previously saved data.
- [YSQL] Add
CREATE TABLEtablet splits to grammar. #1486
- [YSQL] Allow
ALTER TABLE ALTER COLUMN SET|DROP NOT NULL. #1200
- [YSQL] Add retry logic to
- [YSQL] Optimize single-row UPDATE and DELETE statements. #1028
- [YSQL] IN predicate pushdown. #1554
- [YSQL] Add top-level YSQL configuration
- [YSQL] Add support for various
ALTER TABLE ADD COLUMNvariants. #2055
- [YSQL] Support UDTs and records. #1676
- [YSQL] Order range columns with respect to primary key description. #1250
- [YSQL] Support
ALTER TABLE ADD COLUMNwith default value. #2055
- [YSQL] Enable
VACUUMin grammar. #2217
- [YSQL] Non-transactional
COPYin YSQL. #1926
OPERATOR CLASS. #1981
- [YSQL] Create
yugabyteas default user and database. #2277
- [YCQL] Fixed TS crash if a built-in function argument is a column. #1944
- Propagate intents apply failure to client. #1974
- Check shutdown state while scheduling compaction. #2100
- Add leader check on master TS Write interface. #1995
- Correctly handle duplicate key in
- Avoid picking read time for the serializable transactions. #2125
- CDC: Producer and consumer master handshake to set up 2DC. #1977
- Optimized Drop Table Locking. #2056
- Reduce number of
sys_catalogwrites: skip no change heartbeats. #1966
- CDC: Consumer changes. #1481
- CDC: Add master-master replication support. #1824
- Increase WAL retention time when CDC stream is setup on table. #2050
- Apply changes received from producer universe. #2153
- CDC: Delete for
DROP DATABASE. #2114
- Show Load Balancer state in Master UI. #646
- Add support for error code categories to Status. #2200
- [2DC] Handle RPC controller errors and CDC consumer shutdown. #2231
- Don't apply transactions on tablets without intents. #2070
- Allow dynamic priorities in PriorityThreadPool. #2004
- Do full table name match while finding matching tables in 2DC. #2250
- Fix cleaning Raft log after transactional writes are stopped. #2221
- Fix handling of calls expired in queue. #2269
- Load balancer should not be considered idle when tablet remote bootstrap. #2193
- [YSQL]: Fix number of tablets created for system tables. #2293
- Reduce fan-out and use tablet invoker for writing data.
SerializableReadWriteConflictneeds better success probability.