Open foucher opened 3 months ago
We've put this on hold due to the performance impact. I tested a fix which deletes the rows, using:
\timing
DROP DATABASE postgres;
run 3x on each of fastdebug and release on my M1 Mac, on a fresh cluster each time. Here are the median results:
Build type | Don't delete rows | Delete rows | Delete / Don't delete |
---|---|---|---|
fastdebug | 533.456 ms | 1390.993 ms | 2.6x |
release | 497.827 ms | 1335.448 ms | 2.7x |
It will get even slower with more objects meaning more catalog rows.
We could return quickly while still deleting the rows by making the delete async, at the cost of some additional complexity.
Jira Link: DB-11673
Description
Steps to repro:
bin/yb-ctl wipe_restart --tserver_flags="ysql_pg_conf_csv=allow_system_table_mods=true"
ysqlsh
and run the following commands:SET ysql_upgrade_mode TO ON; CREATE TABLE IF NOT EXISTS pg_catalog.pg_yb_tablegroup ( grpname name NOT NULL, grpowner oid NOT NULL, grptablespace oid NOT NULL, grpacl aclitem[], grpoptions text[], CONSTRAINT pg_yb_tablegroup_oid_index PRIMARY KEY (oid ASC) WITH (table_oid = 8037) ) WITH ( oids = true, table_oid = 8036, row_type_oid = 8038 ); SELECT * FROM pg_yb_tablegroup;