v2.1.0 release notes

Released February 25, 2020.

Downloads

Binaries

Docker

  1. docker pull yugabytedb/yugabyte:2.1.0.0-b18

YSQL Changes

  • [YSQL] Fix table location cache for system and colocated tables. #3416
  • [YSQL] Enable ALTER TABLE IF EXISTS syntax. #3417
  • [YSQL] Use std::future in PgDocOp to fetch RPC result. #3240
  • [YSQL] Cleanup unique index if its creation fails. #3462
  • [YSQL] Eliminate redundant foreign key checks. #3328
  • [YSQL] Batch all write operations when possible. #2934
  • [YSQL] allow CREATE DATABASE ENCODING unicode/utf8 #3595
  • [YSQL] Fixed test wrong assumption in yb_dml_systable_scan.
  • [YSQL] Use smart pointers for YBqlOp and YBPgsqlOp. #3641
  • [YSQL] Provide a GFLAG to suppress unsupported error. #3633

YCQL Changes

  • [YCQL] Add gflag to create CQL tables as transactional by default; change GROUP from reserved word to keyword; fix duplicate column error message. #3313
  • [YCQL] Fixed unexpected ‘Duplicate Object’ error from the CatalogManager. #2475
  • [YCQL] Fixed: signal 11: seg fault: yb::ql::PreparedResult::PreparedResult. #3415
  • [YCQL] Application stuck in BoundStatement execution if a variable was not bound. #3419

System improvements

  • Set the default history retention duration to 120 seconds. #3373
  • Fix metrics error after resetting percentiles.. #3362
  • Extract classes from transaction_participant.cc to separate files. #1032
  • Recover after write stop. #3331
  • Fix issue with yugabyted process restart loop. #3207
  • Track replicated batches at transaction participant. #3220
  • Backfill Index Table. #448
  • [Colocation] Use 4 byte PG table ID as dockey prefix. #3365
  • YB inbound RPCs throttling on soft memory limit. #2563
  • BlockBasedMemory mem-trackers should use the “tablet” MetricsEntity instead of “servers”. #3364
  • Mean for metrics histograms should be based on the current values, not historic values. #3470
  • Make yugabyted work with docker volume mounts. #3513
  • Added Graph to track Rocksdb write rejections. #2871
  • Fsync before WAL close. #3490
  • Enable percentiles for redis metrics. #3362
  • BlockBasedMemory mem-trackers may already exist in OpenKeyValueTablet. #3364
  • [cdc] Avoid race condition with CDCReadRpc. #3441
  • Call TransactionParticipant shutdown from Tablet shutdown. #3495
  • Point yugabyted to system conf file if present. #3169
  • Backfill Index Table - TServer side implementation for backfilling non-unique indices. #448
  • colocation: make reads aware of table tombstone #3359
  • Add ability to set hybrid time filter to existing rocksdb files. #1032
  • Server crash on startup after table truncate. #3524
  • Move all yugabyted modified data under central var dir. #3524
  • Add physical time to cdc_state table. #2837
  • docdb: iterate over intents past kTransactionId #3482
  • Prevent callback from detached rocksdb instance; prevent race condition between insert and truncate; disable rocksdb flush on truncate. #3288
  • Persist cdc min replicated index in the superblock. #3418
  • [CDC] Clean up cdc_state rows for deleted streams. #2529
  • yugabyted does not start with custom config file. #3634
  • [2DC] Create new BootstrapProducer API. #3319
  • Fix key processing on CDCProducer. #3582
  • Make yb-docker-ctl compatible with python3
  • Backfill index: handle failed master -> TS rpc. #3627
  • [cdc] Add Last Consumer Checkpoint to CDC Producer Metrics. #2154
  • Evict log cache at follower after operation was appended to log. #3665
  • Implement transaction sealing w/o abort. #3220
  • [Colocated] Master should issue AddTableToTable only for subsequent tables. #3681
  • Extract HeartbeatDataProvider from Heartbeater. #3571
  • Avoid sending apply intents from the follower. #3698

Platform

  • YW Alerting improvements. #2892
  • Add the ‘snooze alerts status’ of a universe to the health check panel. #2891
  • Added UI support to be able to snooze and enable alerts. #2891
  • Add toggle to take backup button. #3341
  • Redirect yugaware logs from yugabyted into yugabyte-logs dir. #3516
  • Add features for the read only user.
  • Add endpoint to support creation of user roles in YB database(s).
  • Add ability to specify list of tables to backup. #3614
  • Fix metrics url check. #3653
  • Do not merge flags during a gflag update. #3533
  • Add option to add, delete users
  • [YW] Add ESC key binding to document to close any modal on the screen by calling the onHide callback.#3211
  • [YW] Add default value for currentProvider and fix eslint warnings. #3332
  • [YW] Enable multi-table backups in CreateBackups modal. #3680
  • Add authentication for registering new users.
  • [YW][OSS] Add support to disable the Enable/Disable Backup button on the Tables tab, and change color of disabled TableActions
  • Handle overall exceptions in a better way. #3676

NotePrior to 2.0, YSQL was still in beta. As a result, 2.0 release includes a backward incompatible file format change for YSQL. 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+. Export from old cluster and import into a new 2.0+ cluster is needed for using existing data.