Обсуждение: AlterTableCreateToastTable API still not right for pg_migrator

Поиск
Список
Период
Сортировка

AlterTableCreateToastTable API still not right for pg_migrator

От
Tom Lane
Дата:
I just started reading the pg_migrator source code, and I notice that
we still didn't get AlterTableCreateToastTable's API right for
pg_migrator's usage.  It needs to be exposing an option to force
a particular OID for the toast table.  The way pg_migrator is handling
that now is both ugly and unsafe, and it's really pretty silly when the
underlying create_toast_table() function is perfectly capable of being
told what we want it to do.

There's still time to fix this before RC1.  I propose adding
"Oid toastOid" to AlterTableCreateToastTable's arguments, with
the semantics that if it's not InvalidOid then we attempt to create
the toast table with that OID.
        regards, tom lane


Re: AlterTableCreateToastTable API still not right for pg_migrator

От
Bruce Momjian
Дата:
Tom Lane wrote:
> I just started reading the pg_migrator source code, and I notice that
> we still didn't get AlterTableCreateToastTable's API right for
> pg_migrator's usage.  It needs to be exposing an option to force
> a particular OID for the toast table.  The way pg_migrator is handling
> that now is both ugly and unsafe, and it's really pretty silly when the
> underlying create_toast_table() function is perfectly capable of being
> told what we want it to do.
> 
> There's still time to fix this before RC1.  I propose adding
> "Oid toastOid" to AlterTableCreateToastTable's arguments, with
> the semantics that if it's not InvalidOid then we attempt to create
> the toast table with that OID.

Fine with me.  I can adjust pg_migrator to match.  We did discuss this
in the past, and the current API is less than idea.  I think we held off
on the change so we were not changing the API between betas.  At the
start of RC1 seems fine and I will time pg_migrator's final release to
match RC1.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + If your life is a hard drive, Christ can be your backup. +


Re: AlterTableCreateToastTable API still not right for pg_migrator

От
Bruce Momjian
Дата:
Tom Lane wrote:
> I just started reading the pg_migrator source code, and I notice that
> we still didn't get AlterTableCreateToastTable's API right for
> pg_migrator's usage.  It needs to be exposing an option to force
> a particular OID for the toast table.  The way pg_migrator is handling
> that now is both ugly and unsafe, and it's really pretty silly when the
> underlying create_toast_table() function is perfectly capable of being
> told what we want it to do.
> 
> There's still time to fix this before RC1.  I propose adding
> "Oid toastOid" to AlterTableCreateToastTable's arguments, with
> the semantics that if it's not InvalidOid then we attempt to create
> the toast table with that OID.

I have update pg_migrator CVS to match the new API, but I will not put
out a new pg_migrator release until Postgres 8.4RC1 is released.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + If your life is a hard drive, Christ can be your backup. +