Vitess v2.0.0-rc.1
Pre-release
Pre-release
Changes since v2.0.0-beta.2
This is the first release candidate for v2.0.0. We are now freezing the release-2.0 branch for anything except bug fixes.
Client API
- Allow specifying a connection-wide default keyspace for VTGateV3 queries.
(#1725,
#1727,
#1738)- Similar to the concept of a default database for a MySQL client connection.
SQL Support
- Preserve case of column names in query result field info.
- Preserve trailing comments in queries rewritten by VTGateV3.
- Support string-based hash vindexes
- Previously, the value to hash had to be numeric or binary.
Management
- Hide
VtTablet*
andVtGate*
commands behind a flag in vtctl/vtctld
(#1700).- These commands are mostly meant for development, and should usually not be
allowed in production. - Launch
vtctld
with the-enable_queries
flag to allow these commands.
- These commands are mostly meant for development, and should usually not be
- Restart replication automatically
if a tablet is restarted (e.g. as part of a Vitess upgrade). - Optionally allow the use of insecure caller ID.
- It's no longer required to set a "sharding column name" when using VTGateV3.
- i.e. no more
vtctl SetKeyspaceShardingInfo
when using VTGateV3.
- i.e. no more
Schema and VSchema
- VSchema config format changed
- Some fields have been renamed for consistency.
- VSchema updates are now denormalized into per-cell records.
(#1750)- No longer need to restart VTGate to pick up VSchema for new/removed
keyspaces. - VSchema is still available if global topology goes down.
- It's now possible to atomically move tables between keyspaces, for example
when doing a vertical split. - NOTE: Even if you don't use VSchema, it's now required to run
RebuildVSchemaGraph
to initialize these records for a new keyspace.
- No longer need to restart VTGate to pick up VSchema for new/removed
- Schema changes are tested as a group, rather than individually.
(#1749)- This allows batches of schema changes that depend on one another (#1731).
Interoperability
- Support MySQL 5.7
- Orchestrator Integration
- Along with some patches contributed to Orchestrator, these new Vitess
features allow the two systems to work together automatically.
We'll be updating the documentation soon to show how to use it.
- Along with some patches contributed to Orchestrator, these new Vitess
Code Cleanup
- Remove deprecated "serving graph" system, which had already been replaced by
streaming health checks. - Remove deprecated rowcache
- This will be replaced by a caching scheme that makes sense for both VTGateV2
and VTGateV3.
- This will be replaced by a caching scheme that makes sense for both VTGateV2
- Remove deprecated -target_tablet_type flag
- Use
-init_tablet_type
instead.
- Use