Missing "E'" in pltcl_loadmod

From: mestan(at)dix(dot)cz
To: pgsql-bugs(at)postgresql(dot)org
Subject: Missing "E'" in pltcl_loadmod
Date: 2017-02-25 16:18:52
Message-ID: alpine.DEB.2.11.1702251701030.3920@Sandal.Woodpecker
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi,

in lates version script pltcl_loadmod missed E' in insert
command. Resul is, that module loading not work alt all. Yes,
module is loaded, but loaded code is maformed.

Example on module unknown.pltcl:

Beginning of function "unknown":
In psql: select modsrc from pltcl_modules;

Malformed code:

proc unknown {proname args} { +
upvar #0 __PLTcl_unknown_support_plan_modname p_mod +
upvar #0 __PLTcl_unknown_support_plan_modsrc p_src +
+
#----------------------------------------------------------- +
# On first call prepare the plans +
#----------------------------------------------------------- +
if {![info exists p_mod]} { +
set p_mod [spi_prepare \\ +
"select modname from pltcl_modfuncs \\ +
where funcname = \\$1" name] +
set p_src [spi_prepare \\ +
"select modseq, modsrc from pltcl_modules \\ +
where modname = \\$1 \\ +
order by modseq" name] +
} +

Good code after fix:

proc unknown {proname args} { +
upvar #0 __PLTcl_unknown_support_plan_modname p_mod +
upvar #0 __PLTcl_unknown_support_plan_modsrc p_src +
+
#----------------------------------------------------------- +
# On first call prepare the plans +
#----------------------------------------------------------- +
if {![info exists p_mod]} { +
set p_mod [spi_prepare \ +
"select modname from pltcl_modfuncs \ +
where funcname = \$1" name] +
set p_src [spi_prepare \ +
"select modseq, modsrc from pltcl_modules \ +
where modname = \$1 \ +
order by modseq" name] +
} +

There is simple patch:

mestan(at)forest:/usr/lib/postgresql/9.6/bin$ diff pltcl_loadmod-original pltcl_loadmod
453c453
< '$xname', $i, '$xpart')"
\
---
> '$xname', $i, E'$xpart')"
\

After that, thinks work well.

Thanks Mestan

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2017-02-25 18:30:06 Re: Missing "E'" in pltcl_loadmod
Previous Message Tom Lane 2017-02-24 17:04:13 Re: BUG #14568: timezone WIT is not support