On 3/5/20 11:31 AM, Alvaro Herrera wrote:
On 2020-Mar-05, Adrian Klaver wrote:
On 3/5/20 10:04 AM, nikhil raj wrote:
*CREATE INDEX t_e20so1_doi_c_doid_idx
ON public.t_e20so1_doi USING btree
(i_doid ASC NULLS LAST)
TABLESPACE pg_default;*
*ERROR: cannot specify default tablespace for partitioned relations SQL
state: 0A00.*
Note:- but the same query is executed in the 12.1 version.its working fine.
Well this ERROR appeared here:
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;f=src/backend/commands/indexcmds.c;h=87259588d0ab0b8e742e30596afa7ae25caadb18
The reason for the error is the expectation that creating an index on a
partitioned table with a tablespace specification will cause the
children indexes (ie. the indexes on the partitions) to use the same
tablespace.
This does not work properly for the default tablespace, so I made that
particular condition an error.
The OP was wondering why it worked in 12.1 and not 12.2?
I could not see any obvious reason for that, so:
1) There is a not obvious reason
2) It did not work in 12.1 either.
--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx