v2.0.3 release notes

Released October 28, 2019.

Downloads

Binaries

Docker

  1. docker pull yugabytedb/yugabyte:2.0.3.0-b7

YSQL changes

  • [YSQL] Set enable_ysql to true by default for YB-Master and YB-TServer. #2455
  • [YSQL] Build YBTupleID value with respect to DocDB column order. #2438
  • [YSQL] Support TLS Server-Server Encryption through YSQL API. #1845
  • [YSQL] Check constraints when doing UPDATE. #2361
  • [YSQL] Add default password to yugabyte user for ysqlsh. #2594
  • [YSQL] authentication and authorization. #2610
  • [YSQL] client authentication update. #2614
  • [YSQL] Enable FOR SHARE and FOR KEY SHARE row locking in YSQL SELECT statements. #1199
  • [YSQL] Avoid namespace id resolving for yb-admin import_namespace command. #2582
  • [YSQL] SERIALIZABLE READ ONLY DEFERRABLE. #2161

YCQL changes

  • [YCQL] Fix for SIGBUS TS crash on invalid statement. #2476
  • [YCQL] A role shouldn’t be able to modify the superuser status of itself or of a role granted to it. #2505
  • [YCQL] Fix issue with permissions inheritance. #2550
  • [YCQL] Mangling the column name in IndexTable for index selecting processing. #741
  • [YCQL] Wrong port sent for NEW_NODE topology change events. #2607
  • [YCQL] Fixed: Cannot CREATE TYPE when user has CREATE permissions for keyspace. #2556
  • [YCQL] Add support for IF clause in SELECT statement. #2640
  • [YCQL] Add description for JSONB INDEX and IF clause in SELECT. #2651
  • [YCQL] Not reserving keyword USER and WHEN. #1661
  • [YCQL] EXPLAIN SELECT causes tserver to crash. #2616

System improvements

  • Added missing extractor checks into version_edit, so ldb doesn’t crash. #2510
  • Fix race in Batcher. #2501
  • [2DC] Update checkpoint for replicated records, ignore tablet status while looking up peer. #2487
  • Reduce log level while skipping over display of stats for tablets with state RaftGroupStatePB::SHUTDOWN. #1488
  • [2DC] Send from_checkpoint only when consumer knows the last checkpoint. #2522
  • Remove may exist state from YBTransaction. #2501
  • [CDC] Setup Java Console Connector for CDC. #2081
  • Fix operation memory double tracking. #1436
  • Reinit total replicas to move when master leader fails during tserver blacklisting. #2453
  • Display num sst files for tablets in yb_admin list_tablets_for_tablet_server. #2536
  • Use boost::amotic for opid_copy member (128 bits structure). #2545
  • Derive proxy rpc addresses. #1023
  • Update consensus meta term during local bootstrap. #2570
  • Add metrics for thread count in each category. #1785
  • Cleanup queue on timeout. #2592
  • Do not call LogReader::Open() twice when skip_wal_rewrite is enabled. #2124
  • Display num log segments for tablets in yb_admin list_tablets_for_tablet_server. #2555
  • Fix Bug in YEDIS Keys Command. #2381
  • Fix num tablets per table. #2630
  • modify_placement_info clears read replica config. #2628
  • Fix use of load balancer concurrent action limits. #2624
  • Node should be able to transition from master to shell mode and back to master. #2007
  • Use new linuxbrew (20191015T202549). #2608
  • Remove in_memory_erase option and use SingleDelete instead of Delete. #2569
  • Fixed invalid read-time for RF==1 case. #2394
  • Move Rpcs to CDC consumer from CDC poller. #2549
  • [CDC] Make redirection to tablet leaders for GetChanges asynchronous. #2503

Note on upgrades from pre 2.0 releases

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 newcluster 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.