Re: Avoid index rebuilds for no-rewrite ALTER TABLE ALTER TYPE

Поиск
Список
Период
Сортировка
От Noah Misch
Тема Re: Avoid index rebuilds for no-rewrite ALTER TABLE ALTER TYPE
Дата
Msg-id 20110707192138.GH1840@tornado.leadboat.com
обсуждение исходный текст
Ответ на Re: Avoid index rebuilds for no-rewrite ALTER TABLE ALTER TYPE  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: Avoid index rebuilds for no-rewrite ALTER TABLE ALTER TYPE
Список pgsql-hackers
On Thu, Jul 07, 2011 at 03:06:46PM -0400, Robert Haas wrote:
> On Thu, Jul 7, 2011 at 2:55 PM, Noah Misch <noah@2ndquadrant.com> wrote:
> > CheckIndexCompatible() calls ComputeIndexAttrs() to resolve the new operator
> > classes, collations and exclusion operators for each index column.  It then
> > checks those against the existing values for the same.  I figured that was
> > obvious enough, but do you want a new version noting that?
> 
> I guess one question I had was... are we depending on the fact that
> ComputeIndexAttrs() performs a bunch of internal sanity checks?  Or
> are we just expecting those to always pass, and we're going to examine
> the outputs after the fact?

Those checks can fail; consider an explicit operator class or collation that
does not support the destination type.  At that stage, we neither rely on those
checks nor mind if they do fire.  If we somehow miss the problem at that stage,
DefineIndex() will detect it later.  Likewise, if we hit an error in
CheckIndexCompatible(), we would also hit it later in DefineIndex().


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: Small SSI issues
Следующее
От: Robert Haas
Дата:
Сообщение: Re: Avoid index rebuilds for no-rewrite ALTER TABLE ALTER TYPE