|
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>43.11. PL/Tcl Configuration</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets V1.79.1" /><link rel="prev" href="pltcl-transactions.html" title="43.10. Transaction Management" /><link rel="next" href="pltcl-procnames.html" title="43.12. Tcl Procedure Names" /></head><body><div xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">43.11. PL/Tcl Configuration</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="pltcl-transactions.html" title="43.10. Transaction Management">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="pltcl.html" title="Chapter 43. PL/Tcl - Tcl Procedural Language">Up</a></td><th width="60%" align="center">Chapter 43. PL/Tcl - Tcl Procedural Language</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 12.4 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="pltcl-procnames.html" title="43.12. Tcl Procedure Names">Next</a></td></tr></table><hr></hr></div><div class="sect1" id="PLTCL-CONFIG"><div class="titlepage"><div><div><h2 class="title" style="clear: both">43.11. PL/Tcl Configuration</h2></div></div></div><p>
- This section lists configuration parameters that
- affect <span class="application">PL/Tcl</span>.
- </p><div class="variablelist"><dl class="variablelist"><dt id="GUC-PLTCL-START-PROC"><span class="term">
- <code class="varname">pltcl.start_proc</code> (<code class="type">string</code>)
- <a id="id-1.8.9.15.3.1.1.3" class="indexterm"></a>
- </span></dt><dd><p>
- This parameter, if set to a nonempty string, specifies the name
- (possibly schema-qualified) of a parameterless PL/Tcl function that
- is to be executed whenever a new Tcl interpreter is created for
- PL/Tcl. Such a function can perform per-session initialization, such
- as loading additional Tcl code. A new Tcl interpreter is created
- when a PL/Tcl function is first executed in a database session, or
- when an additional interpreter has to be created because a PL/Tcl
- function is called by a new SQL role.
- </p><p>
- The referenced function must be written in the <code class="literal">pltcl</code>
- language, and must not be marked <code class="literal">SECURITY DEFINER</code>.
- (These restrictions ensure that it runs in the interpreter it's
- supposed to initialize.) The current user must have permission to
- call it, too.
- </p><p>
- If the function fails with an error it will abort the function call
- that caused the new interpreter to be created and propagate out to
- the calling query, causing the current transaction or subtransaction
- to be aborted. Any actions already done within Tcl won't be undone;
- however, that interpreter won't be used again. If the language is
- used again the initialization will be attempted again within a fresh
- Tcl interpreter.
- </p><p>
- Only superusers can change this setting. Although this setting
- can be changed within a session, such changes will not affect Tcl
- interpreters that have already been created.
- </p></dd><dt id="GUC-PLTCLU-START-PROC"><span class="term">
- <code class="varname">pltclu.start_proc</code> (<code class="type">string</code>)
- <a id="id-1.8.9.15.3.2.1.3" class="indexterm"></a>
- </span></dt><dd><p>
- This parameter is exactly like <code class="varname">pltcl.start_proc</code>,
- except that it applies to PL/TclU. The referenced function must
- be written in the <code class="literal">pltclu</code> language.
- </p></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="pltcl-transactions.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pltcl.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="pltcl-procnames.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">43.10. Transaction Management </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 43.12. Tcl Procedure Names</td></tr></table></div></body></html>
|