Re: patch : Allow toast tables to be moved to a different tablespace
Julien Tachoires <julmon@gmail.com>
From: Julien Tachoires <julmon@gmail.com>
To: Alvaro Herrera <alvherre@commandprompt.com>, Jaime Casanova <jaime@2ndquadrant.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2012-01-22T16:04:25Z
Lists: pgsql-hackers
Attachments
- set_toast_tablespace_v0.10.patch (text/x-patch) patch v0
2011/12/15 Alvaro Herrera <alvherre@commandprompt.com>: > > Uhm, surely you could compare the original toast tablespace to the heap > tablespace, and if they differ, handle appropriately when creating the > new toast table? Just pass down the toast tablespace into > AlterTableCreateToastTable, instead of having it assume that > rel->rd_rel->relnamespace is sufficient. This should be done in all > cases where a toast tablespace is created, which shouldn't be more than > a handful of them. Thank you, that way seems right. Now, I distinguish before each creation of a TOAST table with AlterTableCreateToastTable() : if it will create a new one or recreate an existing one. Thus, in create_toast_table() when toastTableSpace is equal to InvalidOid, we are able : - to fallback to the main table tablespace in case of new TOAST table creation - to keep it previous tablespace in case of recreation. Here's a new version rebased against HEAD. Regards, -- JT