Thread

  1. Re: [PATCH] Add pg_get_trigger_ddl() to retrieve the CREATE TRIGGER statement

    Soumya S Murali <soumyamurali.work@gmail.com> — 2026-05-06T05:54:44Z

    Hi Philip,
    
    Thank you for the clarification and feedback.
    
    On Wed, May 6, 2026 at 3:40 AM Philip Alger <paalger0@gmail.com> wrote:
    >
    >
    >>
    >> In support of this, I have tried testing after making a small change
    >> in the function pg_get_trigger_ddl() in ruleutils.c:
    >>
    >> Instead of this:
    >> /*Parse the trigger name to handle quoted identifiers */
    >> nameList = textToQualifiedNameList(trgName);
    >> if (list_length(nameList) != 1)
    >>     ereport(ERROR,
    >>                 (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
    >>                  errmsg("trigger name cannot be schema qualified")));
    >>  DeconstructQualifiedName(nameList, &schemaName, &objName);
    >>
    >
    > Thanks for taking a look Soumya.
    >
    > I believe these DDL functions now live in ddlutils.c and include a new parameter for adding a "pretty" flag is required. I am in the middle of developing a patch for that, but I took your fix into consideration.
    >
    
    Thank you for considering my fix. I understand that the DDL-related
    functions are being moved to ddlutils.c and I think introducing a new
    parameter for adding "pretty" flag makes sense.
    
    >>
    >> Do: objName = text_to_cstring(trgName); to treat the trigger name
    >
    >
    > I think this makes sense.
    >
    > I also will need to make a few adjustments to get the pretty printing functionality working. Since my patch essentially borrows from pg_get_triggerdef_worker, it will need some work.
    
    I am glad that the observation regarding quoted trigger names was
    useful. I’ll continue following the discussion and testing newer
    versions of the patch as they evolve.
    
    
    Regards,
    Soumya