Correct, we need a field tgposition on pg_trigger and when it´s null we
follow normal ordering
select * from pg_trigger where tgrelid = X and tgtype = Y order by
tgposition nulls last, tgname

regards,
Marcos

Em qua., 15 de set. de 2021 às 09:35, Andreas Karlsson <andr...@proxel.se>
escreveu:

> On 9/15/21 1:40 PM, Tom Lane wrote:
> > Marcos Pegoraro <mar...@f10.com.br> writes:
> >> Alphabetical order of triggers sometimes makes me write a_Recalc or
> z_Calc
> >> to be sure it´ll be the first or the last trigger with same event of
> that
> >> table
> >
> >> Oracle and SQL Server have FOLLOWS and PRECEDES when defining trigger
> >> execution order. Firebird has POSITION, which I like it more.
> >
> > Color me skeptical: doesn't that introduce more complication without
> > fundamentally solving anything?  You still don't know which position
> > numbers other triggers have used, so it seems like this is just a
> > different way to spell the same problem.
>
> I guess one advantage is that it would make the intent of the DDL author
> more clear to a reader and that it also makes it more clear to people
> new to PostgreSQL that trigger order is something that is important to
> reason about.
>
> If those small advantages are worth the complication is another question
> (I am skpetical), but if we would implement this I prefer the Firebird
> solution over the Oralce/MSSQL solution since the Firebird solution is
> simpler while achieving the same thing plus that the Firefird solution
> seems like it would be obviously backwards compatible with our current
> solution.
>
> Andreas
>

Reply via email to