Skip to content
Snippets Groups Projects
  • Tom Lane's avatar
    9bedd128
    Add support for invoking parser callback hooks via SPI and in cached plans. · 9bedd128
    Tom Lane authored
    As proof of concept, modify plpgsql to use the hooks.  plpgsql is still
    inserting $n symbols textually, but the "back end" of the parsing process now
    goes through the ParamRef hook instead of using a fixed parameter-type array,
    and then execution only fetches actually-referenced parameters, using a hook
    added to ParamListInfo.
    
    Although there's a lot left to be done in plpgsql, this already cures the
    "if (TG_OP = 'INSERT' and NEW.foo ...)"  problem, as illustrated by the
    changed regression test.
    9bedd128
    History
    Add support for invoking parser callback hooks via SPI and in cached plans.
    Tom Lane authored
    As proof of concept, modify plpgsql to use the hooks.  plpgsql is still
    inserting $n symbols textually, but the "back end" of the parsing process now
    goes through the ParamRef hook instead of using a fixed parameter-type array,
    and then execution only fetches actually-referenced parameters, using a hook
    added to ParamListInfo.
    
    Although there's a lot left to be done in plpgsql, this already cures the
    "if (TG_OP = 'INSERT' and NEW.foo ...)"  problem, as illustrated by the
    changed regression test.