You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tablet::MarkBackfillDone appears to do no handling of colocated tables because it uses metadata_->primary_table_info(). Change it to receive at least the table id info of the index table in question so that it can modify the appropriate schema, not the schema of the colocation parent table.
I did not look into SetIsBackfilling(true), but it appears to be in catalog_manager.cc, and I assume it is done to the proper user table there.
SetIsBackfilling(false) in Tablet::MarkBackfillDone is done on the wrong table, as explained above. To get this information, it should be passed from async_rpc_tasks.ccAsyncBackfillDone::SendRequest. We can set alter_table_id or schema from there.
I haven't noticed consequences, but, theoretically, this would cause colocated table data from never being compacted because backfilling is set to true indefinitely (at least until drop). cc @amitanandaiyer
Summary:
Properly sets `retain_delete_markers` to false upon backfill done for colocated tables. We
pass in the table_id of the index table so we can target the schema of said table instead of the
colocated parent table. Adds a new ChangeMetadataRequestPB field `backfill_done_table_id`
to accommodate this.
Test Plan: `PgIndexBackfillTest.[Colocated]RetainDeleteMarkers`
Reviewers: rahuldesirazu, jason
Reviewed By: jason
Subscribers: ybase, bogdan
Differential Revision: https://phabricator.dev.yugabyte.com/D10638
…d tables
Summary:
Properly sets `retain_delete_markers` to false upon backfill done for colocated tables. We
pass in the table_id of the index table so we can target the schema of said table instead of the
colocated parent table. Adds a new ChangeMetadataRequestPB field `backfill_done_table_id`
to accommodate this.
Test Plan: `PgIndexBackfillTest.[Colocated]RetainDeleteMarkers`
Reviewers: rahuldesirazu, jason
Reviewed By: jason
Subscribers: ybase, bogdan
Differential Revision: https://phabricator.dev.yugabyte.com/D10638
Tablet::MarkBackfillDone
appears to do no handling of colocated tables because it usesmetadata_->primary_table_info()
. Change it to receive at least the table id info of the index table in question so that it can modify the appropriate schema, not the schema of the colocation parent table.I did not look into
SetIsBackfilling(true)
, but it appears to be incatalog_manager.cc
, and I assume it is done to the proper user table there.SetIsBackfilling(false)
inTablet::MarkBackfillDone
is done on the wrong table, as explained above. To get this information, it should be passed fromasync_rpc_tasks.cc
AsyncBackfillDone::SendRequest
. We can setalter_table_id
orschema
from there.I haven't noticed consequences, but, theoretically, this would cause colocated table data from never being compacted because backfilling is set to true indefinitely (at least until drop). cc @amitanandaiyer
I discovered this while working on #4986.
The text was updated successfully, but these errors were encountered: