PS 8.0 - TokuDB/RocksDB rebuilds a table when altering an index as invisible

Description

TokuDB/RocksDB don't support inplace alter operations, but there are some alter table operations which should not touch data in that specific table, eg. making an index invisible/visible or adding a comment to already existing field in the table.

So in 8.0 InnoDB and MyISAM do instant index visible/invisible modifications, but for TokuDB/RocksDB this is copying table data to temp table which takes a long time and it doesn't make sense since no change to data is done.

So this ticket is to investigate if this can somehow be fixed/improved since that would be IMHO a huge thing for TokuDB/RocksDB.

Here's how it looks:

What's more if you repeatedly execute this even if the index is already invisible it will happily execute this expensive operation:

But for example for adding a comment to a field in a table doesn't execute a table copy (there was a bug fix for this: https://jira.percona.com/browse/PS-4280):

Many thanks to for feedback and ideas!

Environment

None

Smart Checklist

Activity

Show:

roel.vandepaar December 7, 2018 at 2:03 AM

Ah, given George's input on I see where the "fix in time" came from. All good.

roel.vandepaar December 7, 2018 at 2:01 AM

it would seem this improvement request does not need to be linked against PS-5037?

Done

Details

Assignee

Reporter

Time tracking

3h 4m logged

Components

Fix versions

Affects versions

Priority

Smart Checklist

Created November 16, 2018 at 3:19 PM
Updated March 6, 2024 at 12:41 PM
Resolved December 17, 2018 at 4:21 PM