From 6bde78106b687d417e594ee26a128023d2505cbf Mon Sep 17 00:00:00 2001 From: dvarrazzo Date: Wed, 17 Apr 2024 20:40:17 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20master=20from=20@=20psycopg/ps?= =?UTF-8?q?ycopg-website@a13ba8728c6ab4ea9af58d8fcea9c42d1266b146=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- articles.xml | 104 ++++++++++++++-------------- psycopg3/docs/_sources/news.rst.txt | 2 + psycopg3/docs/api/pq.html | 6 ++ psycopg3/docs/genindex.html | 6 +- psycopg3/docs/news.html | 2 + psycopg3/docs/objects.inv | Bin 6229 -> 6237 bytes psycopg3/docs/searchindex.js | 2 +- 7 files changed, 67 insertions(+), 55 deletions(-) diff --git a/articles.xml b/articles.xml index 2ceabad3..b3ea1d64 100644 --- a/articles.xml +++ b/articles.xml @@ -2272,58 +2272,6 @@ but if there is anything to point out I'd be happy to know. Best option would be <li><a class="reference external" href="https://pypi.org/packages/source/p/psycopg2/psycopg2-2.3.1.tar.gz.asc">Psycopg 2.3.1 signature</a></li> </ul> <p>Cheers!</p> -PostgreSQL notifications with Psycopg2 and Eventlet2010-12-01T00:00:00ZDaniele Varrazzourn:uuid:85a44537-7b4f-3e10-9273-1a2b12fb4757<p>PostgreSQL supports <a class="reference external" href="https://www.postgresql.org/docs/9.0/interactive/sql-notify.html">asynchronous notifications</a>, a simple messaging system allowing clients to be notified about events occurred in the database. Notifications can be sent by any session using a &quot;<tt class="docutils literal">NOTIFY</tt> <em>channel</em>&quot; command and will be received by any session which has subscribed with a <tt class="docutils literal">LISTEN</tt> <em>channel</em> to receive updates. The system has been greatly improved in PostgreSQL 9.0 with the addition of a <em>message payload</em>, making the feature even more useful. Previously a typical use case would have been to notify interested sessions that a certain table was updated: now it is possible to signal for instance <em>which record</em> was changed. You can put the <tt class="docutils literal">NOTIFY</tt> command in a database trigger for automatic notifications on insert or update... the possibilities are actually quite interesting.</p> -<!-- CUT-HERE --> -<p>Psycopg2 allows a client program to <a class="reference external" href="/docs/advanced.html#asynchronous-notifications">receive notifications from the database backend</a>. Starting from version 2.3 the notification received will also include the payload, when connected to a PostgreSQL 9.0 server. The notification are received automatically after each query and are made available in the <a class="reference external" href=":/docs/connection.html#connection.notifies"><tt class="docutils literal">notifies</tt></a> attribute of the connection. They are also received using the <a class="reference external" href="/docs/connection.html#connection.poll"><tt class="docutils literal">poll()</tt></a> method, without the need of issuing queries only to receive notifications.</p> -<p>But polling a connection is not the most efficient nor timely way to receive notifications: a better approach is to ask the OS to wake us up when there is something to read on the connection socket. This approach is particularly appealing when using an event-driven framework such as <a class="reference external" href="https://twistedmatrix.com/">Twisted</a> or <a class="reference external" href="https://eventlet.net/">Eventlet</a>, with which is easy to perform other tasks while there is nothing to read on the connection. In &quot;regular&quot; Python programs it is possible to use <tt class="docutils literal">select()</tt> to block until a notification arrives (see the documentation for an example): this would block the entire program. If some concurrency is required it is possible to use the blocking syscall in a thread to allow the rest of the program to carry on.</p> -<div class="section" id="eventlet-example"> -<h2>Eventlet example</h2> -<p>This example shows how hook the notifications system into Eventlet: using it with a <a class="reference external" href="https://en.wikipedia.org/wiki/WebSockets">WebSocket</a> it is possible to send an event from the database to the application and up to a web browser, all in push mode! The example requires PostgreSQL 9.0 and Psycopg 2.3 as it uses notification payloads.</p> -<p>This function handles a WebSocket connection in a green thread: it creates a <tt class="docutils literal">Queue</tt> and opens a database connection (calling the <tt class="docutils literal">dblisten()</tt> function), then blocks on the queue waiting to receive notifications: as soon as any is received, its payload is forwarded to the browser. This is obviously just an example: a database connection for every browser wouldn't scale very much...</p> -<pre class="code python literal-block"> -<span class="kn">import</span> <span class="nn">eventlet</span><span class="w"> -</span><span class="kn">from</span> <span class="nn">eventlet</span> <span class="kn">import</span> <span class="n">wsgi</span><span class="w"> -</span><span class="kn">from</span> <span class="nn">eventlet</span> <span class="kn">import</span> <span class="n">websocket</span><span class="w"> - -</span><span class="nd">&#64;websocket</span><span class="o">.</span><span class="n">WebSocketWSGI</span><span class="w"> -</span><span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="n">ws</span><span class="p">):</span><span class="w"> - </span><span class="sd">&quot;&quot;&quot; - Receive a connection and send it database notifications. - &quot;&quot;&quot;</span><span class="w"> -</span> <span class="n">q</span> <span class="o">=</span> <span class="n">eventlet</span><span class="o">.</span><span class="n">Queue</span><span class="p">()</span><span class="w"> -</span> <span class="n">eventlet</span><span class="o">.</span><span class="n">spawn</span><span class="p">(</span><span class="n">dblisten</span><span class="p">,</span> <span class="n">q</span><span class="p">)</span><span class="w"> -</span> <span class="k">while</span> <span class="mi">1</span><span class="p">:</span><span class="w"> -</span> <span class="n">n</span> <span class="o">=</span> <span class="n">q</span><span class="o">.</span><span class="n">get</span><span class="p">()</span><span class="w"> -</span> <span class="nb">print</span> <span class="n">n</span><span class="w"> -</span> <span class="n">ws</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="n">n</span><span class="o">.</span><span class="n">payload</span><span class="p">)</span> -</pre> -<p>When <tt class="docutils literal">handle()</tt> blocks on the queue the control of the program switches to a different green thread, allowing the rest of the program to keep on running even if single-threaded.</p> -<p>The <tt class="docutils literal">dblisten</tt> function sets up the listening database connection:</p> -<pre class="code python literal-block"> -<span class="kn">import</span> <span class="nn">psycopg2</span><span class="w"> -</span><span class="kn">from</span> <span class="nn">psycopg2.extensions</span> <span class="kn">import</span> <span class="n">ISOLATION_LEVEL_AUTOCOMMIT</span><span class="w"> -</span><span class="kn">from</span> <span class="nn">eventlet.hubs</span> <span class="kn">import</span> <span class="n">trampoline</span><span class="w"> - -</span><span class="k">def</span> <span class="nf">dblisten</span><span class="p">(</span><span class="n">q</span><span class="p">):</span><span class="w"> - </span><span class="sd">&quot;&quot;&quot; - Open a db connection and add notifications to *q*. - &quot;&quot;&quot;</span><span class="w"> -</span> <span class="n">cnn</span> <span class="o">=</span> <span class="n">psycopg2</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="n">dsn</span><span class="p">)</span><span class="w"> -</span> <span class="n">cnn</span><span class="o">.</span><span class="n">set_isolation_level</span><span class="p">(</span><span class="n">ISOLATION_LEVEL_AUTOCOMMIT</span><span class="p">)</span><span class="w"> -</span> <span class="n">cur</span> <span class="o">=</span> <span class="n">cnn</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span><span class="w"> -</span> <span class="n">cur</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">&quot;LISTEN data;&quot;</span><span class="p">)</span><span class="w"> -</span> <span class="k">while</span> <span class="mi">1</span><span class="p">:</span><span class="w"> -</span> <span class="n">trampoline</span><span class="p">(</span><span class="n">cnn</span><span class="p">,</span> <span class="n">read</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="w"> -</span> <span class="n">cnn</span><span class="o">.</span><span class="n">poll</span><span class="p">()</span><span class="w"> -</span> <span class="k">while</span> <span class="n">cnn</span><span class="o">.</span><span class="n">notifies</span><span class="p">:</span><span class="w"> -</span> <span class="n">n</span> <span class="o">=</span> <span class="n">cnn</span><span class="o">.</span><span class="n">notifies</span><span class="o">.</span><span class="n">pop</span><span class="p">()</span><span class="w"> -</span> <span class="n">q</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">n</span><span class="p">)</span> -</pre> -<p>The connection is set in <a class="reference external" href="/docs/usage.html#transactions-control">autocommit mode</a>, otherwise the notification would be postponed until the end of the transaction. The <em>trampoline</em> is the Eventlet function that schedules a green thread switch: we ask it to return us the control when the file descriptor underlying the connection will have something to read. Once the system wakes up again we use <tt class="docutils literal">poll()</tt> to parse eventual notifications received, that will be added to the queue and thus passed to the client.</p> -<p>The rest of the example is not shown here: it only consists in a static page and the web server setup. You can <a class="reference external" href="pushdemo.py">download the complete example</a>.</p> -<p>Running the program and opening the page <a class="reference external" href="http://localhost:7000/">http://localhost:7000/</a> in a WebSocket-enabled browser you will see a page with three coloured bars: using a command such as <tt class="docutils literal">NOTIFY data, 'green'</tt> in a psql shell, one of the bars in the page will be updated accordingly. Here is a screenshot:</p> -<img alt="psycopg eventlet push demo" class="align-center" src="pushdemo.png" style="width: 477px; height: 327px;" /> -</div> Psycopg 2.3.0 released2010-12-01T00:00:00ZFederico Di Gregoriourn:uuid:12f1b527-a80a-34f4-9c06-c281d38f0559<p>Hi *,</p> <p>lately my involvement on psycopg has been quite small (work and other projects are taking their toll) but thanks to Daniele (with some help @@ -2382,6 +2330,58 @@ versions (<a class="reference external" href="https://psycopg.lighthouseapp.c <li>Fixed notices order (<a class="reference external" href="https://psycopg.lighthouseapp.com/projects/62710/tickets/9">ticket #9</a>).</li> </ul> </div> +PostgreSQL notifications with Psycopg2 and Eventlet2010-12-01T00:00:00ZDaniele Varrazzourn:uuid:85a44537-7b4f-3e10-9273-1a2b12fb4757<p>PostgreSQL supports <a class="reference external" href="https://www.postgresql.org/docs/9.0/interactive/sql-notify.html">asynchronous notifications</a>, a simple messaging system allowing clients to be notified about events occurred in the database. Notifications can be sent by any session using a &quot;<tt class="docutils literal">NOTIFY</tt> <em>channel</em>&quot; command and will be received by any session which has subscribed with a <tt class="docutils literal">LISTEN</tt> <em>channel</em> to receive updates. The system has been greatly improved in PostgreSQL 9.0 with the addition of a <em>message payload</em>, making the feature even more useful. Previously a typical use case would have been to notify interested sessions that a certain table was updated: now it is possible to signal for instance <em>which record</em> was changed. You can put the <tt class="docutils literal">NOTIFY</tt> command in a database trigger for automatic notifications on insert or update... the possibilities are actually quite interesting.</p> +<!-- CUT-HERE --> +<p>Psycopg2 allows a client program to <a class="reference external" href="/docs/advanced.html#asynchronous-notifications">receive notifications from the database backend</a>. Starting from version 2.3 the notification received will also include the payload, when connected to a PostgreSQL 9.0 server. The notification are received automatically after each query and are made available in the <a class="reference external" href=":/docs/connection.html#connection.notifies"><tt class="docutils literal">notifies</tt></a> attribute of the connection. They are also received using the <a class="reference external" href="/docs/connection.html#connection.poll"><tt class="docutils literal">poll()</tt></a> method, without the need of issuing queries only to receive notifications.</p> +<p>But polling a connection is not the most efficient nor timely way to receive notifications: a better approach is to ask the OS to wake us up when there is something to read on the connection socket. This approach is particularly appealing when using an event-driven framework such as <a class="reference external" href="https://twistedmatrix.com/">Twisted</a> or <a class="reference external" href="https://eventlet.net/">Eventlet</a>, with which is easy to perform other tasks while there is nothing to read on the connection. In &quot;regular&quot; Python programs it is possible to use <tt class="docutils literal">select()</tt> to block until a notification arrives (see the documentation for an example): this would block the entire program. If some concurrency is required it is possible to use the blocking syscall in a thread to allow the rest of the program to carry on.</p> +<div class="section" id="eventlet-example"> +<h2>Eventlet example</h2> +<p>This example shows how hook the notifications system into Eventlet: using it with a <a class="reference external" href="https://en.wikipedia.org/wiki/WebSockets">WebSocket</a> it is possible to send an event from the database to the application and up to a web browser, all in push mode! The example requires PostgreSQL 9.0 and Psycopg 2.3 as it uses notification payloads.</p> +<p>This function handles a WebSocket connection in a green thread: it creates a <tt class="docutils literal">Queue</tt> and opens a database connection (calling the <tt class="docutils literal">dblisten()</tt> function), then blocks on the queue waiting to receive notifications: as soon as any is received, its payload is forwarded to the browser. This is obviously just an example: a database connection for every browser wouldn't scale very much...</p> +<pre class="code python literal-block"> +<span class="kn">import</span> <span class="nn">eventlet</span><span class="w"> +</span><span class="kn">from</span> <span class="nn">eventlet</span> <span class="kn">import</span> <span class="n">wsgi</span><span class="w"> +</span><span class="kn">from</span> <span class="nn">eventlet</span> <span class="kn">import</span> <span class="n">websocket</span><span class="w"> + +</span><span class="nd">&#64;websocket</span><span class="o">.</span><span class="n">WebSocketWSGI</span><span class="w"> +</span><span class="k">def</span> <span class="nf">handle</span><span class="p">(</span><span class="n">ws</span><span class="p">):</span><span class="w"> + </span><span class="sd">&quot;&quot;&quot; + Receive a connection and send it database notifications. + &quot;&quot;&quot;</span><span class="w"> +</span> <span class="n">q</span> <span class="o">=</span> <span class="n">eventlet</span><span class="o">.</span><span class="n">Queue</span><span class="p">()</span><span class="w"> +</span> <span class="n">eventlet</span><span class="o">.</span><span class="n">spawn</span><span class="p">(</span><span class="n">dblisten</span><span class="p">,</span> <span class="n">q</span><span class="p">)</span><span class="w"> +</span> <span class="k">while</span> <span class="mi">1</span><span class="p">:</span><span class="w"> +</span> <span class="n">n</span> <span class="o">=</span> <span class="n">q</span><span class="o">.</span><span class="n">get</span><span class="p">()</span><span class="w"> +</span> <span class="nb">print</span> <span class="n">n</span><span class="w"> +</span> <span class="n">ws</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="n">n</span><span class="o">.</span><span class="n">payload</span><span class="p">)</span> +</pre> +<p>When <tt class="docutils literal">handle()</tt> blocks on the queue the control of the program switches to a different green thread, allowing the rest of the program to keep on running even if single-threaded.</p> +<p>The <tt class="docutils literal">dblisten</tt> function sets up the listening database connection:</p> +<pre class="code python literal-block"> +<span class="kn">import</span> <span class="nn">psycopg2</span><span class="w"> +</span><span class="kn">from</span> <span class="nn">psycopg2.extensions</span> <span class="kn">import</span> <span class="n">ISOLATION_LEVEL_AUTOCOMMIT</span><span class="w"> +</span><span class="kn">from</span> <span class="nn">eventlet.hubs</span> <span class="kn">import</span> <span class="n">trampoline</span><span class="w"> + +</span><span class="k">def</span> <span class="nf">dblisten</span><span class="p">(</span><span class="n">q</span><span class="p">):</span><span class="w"> + </span><span class="sd">&quot;&quot;&quot; + Open a db connection and add notifications to *q*. + &quot;&quot;&quot;</span><span class="w"> +</span> <span class="n">cnn</span> <span class="o">=</span> <span class="n">psycopg2</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="n">dsn</span><span class="p">)</span><span class="w"> +</span> <span class="n">cnn</span><span class="o">.</span><span class="n">set_isolation_level</span><span class="p">(</span><span class="n">ISOLATION_LEVEL_AUTOCOMMIT</span><span class="p">)</span><span class="w"> +</span> <span class="n">cur</span> <span class="o">=</span> <span class="n">cnn</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span><span class="w"> +</span> <span class="n">cur</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">&quot;LISTEN data;&quot;</span><span class="p">)</span><span class="w"> +</span> <span class="k">while</span> <span class="mi">1</span><span class="p">:</span><span class="w"> +</span> <span class="n">trampoline</span><span class="p">(</span><span class="n">cnn</span><span class="p">,</span> <span class="n">read</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="w"> +</span> <span class="n">cnn</span><span class="o">.</span><span class="n">poll</span><span class="p">()</span><span class="w"> +</span> <span class="k">while</span> <span class="n">cnn</span><span class="o">.</span><span class="n">notifies</span><span class="p">:</span><span class="w"> +</span> <span class="n">n</span> <span class="o">=</span> <span class="n">cnn</span><span class="o">.</span><span class="n">notifies</span><span class="o">.</span><span class="n">pop</span><span class="p">()</span><span class="w"> +</span> <span class="n">q</span><span class="o">.</span><span class="n">put</span><span class="p">(</span><span class="n">n</span><span class="p">)</span> +</pre> +<p>The connection is set in <a class="reference external" href="/docs/usage.html#transactions-control">autocommit mode</a>, otherwise the notification would be postponed until the end of the transaction. The <em>trampoline</em> is the Eventlet function that schedules a green thread switch: we ask it to return us the control when the file descriptor underlying the connection will have something to read. Once the system wakes up again we use <tt class="docutils literal">poll()</tt> to parse eventual notifications received, that will be added to the queue and thus passed to the client.</p> +<p>The rest of the example is not shown here: it only consists in a static page and the web server setup. You can <a class="reference external" href="pushdemo.py">download the complete example</a>.</p> +<p>Running the program and opening the page <a class="reference external" href="http://localhost:7000/">http://localhost:7000/</a> in a WebSocket-enabled browser you will see a page with three coloured bars: using a command such as <tt class="docutils literal">NOTIFY data, 'green'</tt> in a psql shell, one of the bars in the page will be updated accordingly. Here is a screenshot:</p> +<img alt="psycopg eventlet push demo" class="align-center" src="pushdemo.png" style="width: 477px; height: 327px;" /> +</div> Psycopg at PGDay Italy 20102010-11-12T00:00:00ZDaniele Varrazzourn:uuid:07db87bd-f9fc-3840-9855-94198b55b739<a class="reference external image-reference" href="https://2010.pgday.it/"> <img alt="PGDay Roma, 10 Dicembre 2010" class="inline-right" src="banner_200x60.gif" style="width: 200px; height: 60px;" /> </a> diff --git a/psycopg3/docs/_sources/news.rst.txt b/psycopg3/docs/_sources/news.rst.txt index af3f2e32..3b0c06ff 100644 --- a/psycopg3/docs/_sources/news.rst.txt +++ b/psycopg3/docs/_sources/news.rst.txt @@ -40,6 +40,8 @@ Psycopg 3.2 (unreleased) - Add `~Connection.cancel_safe()` for encrypted and non-blocking cancellation If possible, use such method internally upon `KeyboardInterrupt` and `Copy` termination (:ticket:`#754`). +- Add support for libpq function to retrieve results in chunks introduced in + libpq v17 (:ticket:`#793`). .. __: https://numpy.org/doc/stable/reference/arrays.scalars.html#built-in-scalar-types diff --git a/psycopg3/docs/api/pq.html b/psycopg3/docs/api/pq.html index 13951eab..393c041d 100644 --- a/psycopg3/docs/api/pq.html +++ b/psycopg3/docs/api/pq.html @@ -651,6 +651,11 @@

EnumerationsPIPELINE_ABORTED = 11#
+
+
+TUPLES_CHUNK = 12#
+
+
@@ -924,6 +929,7 @@

EnumerationsExecStatus.SINGLE_TUPLE
  • ExecStatus.PIPELINE_SYNC
  • ExecStatus.PIPELINE_ABORTED
  • +
  • ExecStatus.TUPLES_CHUNK
  • PipelineStatus
      diff --git a/psycopg3/docs/genindex.html b/psycopg3/docs/genindex.html index 0f1187a4..640b6fc8 100644 --- a/psycopg3/docs/genindex.html +++ b/psycopg3/docs/genindex.html @@ -1971,8 +1971,6 @@

      T

    • trace() (psycopg.pq.PGconn method)
    • -
    -
  • + +
  • tuple_row() (in module psycopg.rows) +
  • +
  • TUPLES_CHUNK (psycopg.pq.ExecStatus attribute)
  • TUPLES_OK (psycopg.pq.ExecStatus attribute)
  • diff --git a/psycopg3/docs/news.html b/psycopg3/docs/news.html index c3819cc4..35b327b9 100644 --- a/psycopg3/docs/news.html +++ b/psycopg3/docs/news.html @@ -281,6 +281,8 @@

    Psycopg 3.2 (unreleased)

    Add cancel_safe() for encrypted and non-blocking cancellation If possible, use such method internally upon KeyboardInterrupt and Copy termination (ticket #754).

    +
  • Add support for libpq function to retrieve results in chunks introduced in +libpq v17 (ticket #793).

  • diff --git a/psycopg3/docs/objects.inv b/psycopg3/docs/objects.inv index 48c9263e990af7ce89372ff79f890f341da619b4..afc70f260da823b469172b84043aa9e1b05b28fb 100644 GIT binary patch delta 5658 zcmV+#7Uk*HFx@bajel-=R4Q3gjoou$KqN{<7e%lLva95i-(gN0vGa0%l0gC>36kIs zKpyN?k@!CRB@&s5A13tXljPzgw;!)0$Rq6hw}X=K2l2=9CA&udCVspB?zoFYBww!R zE%xuC5XaeFo>Gzmfgd4Co&Vu@pFgF7pp7JPjQuPmaSK35uZGj|+iV-@8Y znM1gNE5Oew_~%TZUr-!Grk;j|>VNq*ovP-!8acuW%Q+>lIG(~FG^%wq ztfO4h0$fdWFsTVF9O9{gv57IU`NCleQ#}A;%VHHzQ}EAWgkxe2594PtrTCi2jV+a3 zP*9BrULfU^BG^R~RRUp>c-c#e=?jS_4Yb0(@vi7&3QsK0b@-|<{CgTgk$%%<}|_C!riDd(0B@*x!WWN>%kA4k4W(EYMj9(hS*)o@I;nf)#K-=# z@V4trlk1X&SNyvS7g}>vT5yKe%_*KFxZjypBc=>vm(@&H)NB^hOxMwPdLCE1CD;gL zvhHTJ}-~iHaK|w_YR{7bj>sc-7Nl<{PpN5HTp2jOCQFvq zErJfjCdf^k;R~B|ZpLi`$dru@Y=4K0QDhD*y!~zA?2mHH>agWuy}I}A9v>byr_=i0 z$d1u5J?&=V+OJoq)u-*+1KKH6$Ms>e+HU?1WJWwYk{$B|tZy6`cg~In&qjBONWNtA z7MtNC(_#WNLAQvYzzS;UlRqXn}6fSJ1YW#YD%8a#w}O~-osIEJn;*f_MQ zL8Jk9F0GB?cn`CelgI^<0q2uj1|EMq!YuWVtT`e}Y#(Te;13z3Pg24xsO)A$P*+}K zDem)Yg45AO7Ri?Z`=>QI41u~s8AC`|#(2dy;~a@zhYZ2qa-uO@hEO^4L{VUX+cIn1 zpy@?&n^u&_!ulUkI*_aO7=WkUqkz9%Nhy9nNvmQNycfrNJ1E7nURrYw?|gsrh-OLC zh$z_Tv~xwGn@_Vbt^?iVcG`#a_JV)a_-0;)j@GOh)rXp z!MQEB>|wXe!b@=ij{WM{pI?%+&@%xcFjJz`F)5kG4pjpzu8}-fvnPS5T!GIWI`0v zEJc06C?m4MxwR*OUgrmFrkAHYmXr`0c7^OL=sNd$jOUUI!d`$g6h`xKy@YW#4^xtc zS2VSX)PKQOG($I1%ydOknBC@K@nRB3#79y1yFQ+0KuPixP6dV$o`KcHVCFur?@an`L)A9afv&X$Gb)KXW9*{pz$jecP|6 zmV{Mieb}wG-v05pIc*+yb8!9qwAQ=eBZ(f?$K&eD+Phz$R-5e%L|<9aW}w+0HV>;w zH9OvYT|ca*e|Fk&{kQdDbNV&|g|~a$f!5e={%)i_+Od;N3ecUre zX;i|B0rq~acK4pqoKnN@zj>b?PhTg%H@gYo$ETAWe|r6}XT#A{bt(j(*_5#L)`!F6 z!H$5bg2^2F&3+Ao&RczYJeZjxI+o+N-JKo9akKlv#>(kwzqJ%a4n2BzU!Qh=oy1@y z%lgQ9Z{nVqcR$Y12HAh9u16SAxFUJir3yo^=M-ZDklY+Ru3#+ja`4`pemK95!?b1q zj4=+Vf7f?JtRF8nLVHP;nq!AF3jK7Q?g!e?za;OcBZDBj^lJ#?IyM1l37r@ z$6ri_nCG4IFbawVDbH)H33bB4YZ8r3-8x3!i0XB~k~h!i+ha7rEVqu-1-?4C+HP7m zlTHgCf1DiCQSx7rJAFY+-`}eJQSw29?2KsW|Bze+sKr?xa#jPn@USza%U_C{OUe7^ z>g1!UQYwNL@)M%i3OEtO29l2=Igo00TR;2(y|%XqjDT3>htdlz&UQBhq6fuGW)6eh zEas@!ce_Hu3P+ITNrcU@aI+yw&2i@0(YL5Ie;U}c&cOih?#MMEv^e{rib;v=hAa{F z&bLf+X~0M@Ws{Fku_kC77?u?W%ioCR+M-U_{rdCjX?to+Tb;=_0gm}?YU${LZDC6d zibkj3J#DvRi?ffI;RT0r49au-d25nZ*~2)lMFC^h2jzCohU{wr)zuZM@GH}XM*PLw ze-rz^Zof{)lv4+ZV`Hs4jl&jmpE;Z!IJ7;Pj7KsJf590O!mCEf8_--dHx`(|VZ%4g z&+v9ClWyO5FNM$518W7TDA=#2EDV?+y*$h0#!3=?b#-xH4}bWParZFCWUE#=}O-Vl@C2rm{n?wSt*;svtX9 z)l0!HLyE6Sd%u)1Pek6^XC>`eyigpjn}z9lGE<%;Gt`W;%u=(0X>!f1B)K8Pf9CS* zC4{v70C?DC32{X8OGA6fQVX_~BxBG^{{?IA#W3vK@oDc!FeRC-ILvG*;yF`j zNP;JGB>5~wNpW!z!W5Qwq`4z@h+~&Wk+lTR1T>fW83lf-tj{9mZ3*YMI?`zzrlQ$k zxT25F4`LXwgz*e4UHfInGnfwdf96Oh$>c7v&=!*w#Y7!3NjR@ie+{pq9~zE^ zMO=nr91$J#5zWH*BAEiDC#e&Wktj>Xg z@300KG-w3iM`urHc1baWY#B37L*L1Wv*)oUhtoB(V7`o|z5}`N&qP3Uo}t4Sj{E>c zgZbkcjUj~-q(FrnKc^Xyf31PjADv$xwvtlDUxxejt4P>tP>5y>_Qg-f$6Xs5F=uNK zx(z{rwXjNJyT8-5Wk~1BMb9`xM@kt#b*)D#ijy3Pg5Lc4k@mR zRLUdochj<{cfUFEZbRPxi+atq;HpgqTBQ7vkdCEzDTvDZDzEU(IC%l3!c@#pEtX=c zbkrl}?4eo=`CSq%e_p(kg($8tD-Yx;EPPjkj-p)kbq?g+5%)HSYD=<)EyhR_D_#jS z>;htQ#)&^#Fgu_jlFTruNu#@vHxJdAmCJ}6c=zWY|8VxgieP`kL1sU5xU~UAEUw;Y zQB)Eu-UH34rPS)*G-;AFKX;;bky?WC4hs#wyuiXKQ$bO#e<%)MR6d$1uG88JNzx=e@Fb+lpz1*{!=Ba)t!nh2F-9&TOepR zUU8?I!*7g(Jnwf$hu_AQ3vHaqn@$$h(aI)?a^TXDDY!f!{}uLfmFGGIM|;HAM6ML0 z|8-XT&7!&^A*BgXZccGdFU*UQIPrX;T;|tAs(1W3kJ$@OL8rLlD@&6D5h57-K%Dm! z@xZuJnU-cyw}LqQE#T8qJKVIBJrO&9c}Yo3a$1{#;JNE(Y2=RL;Wu-qc_M64o_mW; zZa<`B_{0sUP63e&;xlW;^%5WC^J|5HTUEyp@pPg>iY{CzA2ZWfKFViTN^5LYA=K9k zj?j_RCW_ta30f6oX3@pQat=@O#gIN8~CU8(}qw#7&)BJrxXpPuze6 z-RqnlxzO?7pAU}@lHoZeS1-BzrOi^jk!Do*{EV69<1>kXH^q?u%R;Gtn?zA&qZ%cQ z+3P6M5%Cv-Y9sy-bE34S#b;+*IPqMnQ>Op9X+zT1&F!d`EDLhCdegPh3>wG{K)QM5MyyZj#Oq zsamLtS13&cQX{s#(t=9urPes8`l+G|)efs&8rHJ78aLPSJE5E!MA4%QpMRLzrD1>} zA_E^Vb5)a|tuGpvFyFNa9GRp>ZcAE`6~2Q%N+s%DjY_Gx+~n?HQlp7~Ei1j$8I7J( zFR<#<8<5V`Oj&J~npzjxO3RINbVtxs5-CCONWvm!3J#&*D@$B+LSpwUQGy_hU9b!W z7>ZC0A2uvKkg$IQ1w z+?ApdbgE_8Nu`+IE={l-4>NRCDlXzK%`l3_4Uj+o`2QoMW{vabAOB>Nj}tEeMU%f1 z8v=6+liU*-Jh2|T3MSa)o}|PdLsq2y&;N2l>Rd>SC5O;@<%cB4P;rP?Lh5`SimFM% zzd9F!;pjvpzOdl}mmj%s^OG?YFn_sclejMwSq-}=BG<_+Kyem!`3*|EL=B3kILpPY z|M30TG+;xAvXLUGAfyyQ7KONK0?Tb7hq$sso}Jg2yvM4n;}2#hxm__xZ8UYrID^)9 z3lr9)JKFZ|1;>@~Te1{S3xk#YWGTNxe~#$2FEXW^F4>I5REf(^LX0WwH-C~dsfn2< z#Y{l#YY^jsZghZX9vSRCQ&D}1GBL^*fF3Gg$5 z6IHdv6SYt-rR^#!j41hVT2gh16c5PEt1A68(|n~Od_#J?=?ek<$ps>46XrZqrgpC zE6!Sf0T%7m5U+3=lFOOoEN$AwphWdc{~>8d_odf=`6SpD#hQdGRw4A<>beCZ*RNcZ zOg+K0Ceu;+C*ki%)-?n%DycNWKC)Co=ArFeHWTor=`l*+i%iS=O3YN8!%hoAAAlS; zdQ(tFx(T%P*BjGj3bRROcw~ z5=q@sQ|pFtjW4EN=`GW{WqN}p66NZ}&WacOa6MyB2)uUew?$T+i7e=Nx=~T_`Z2P; z8L!|LDMyF8lRO2J6HEqEq24oS5d*EwX3D%ZFri6wZC>O0-G5c$U4tRA;V@!~-d(|K z6gE1bcQM_RL8C&AD_UPZ5*7N&`jX`h7t=G-t}%BkAmUK2j&>A5JwaPvO|8(Z8Y%AH zHltG9K|*L8HaRJh*5spN<#mio1c3stKnSrk0TvXa)NeRs;+b6974P?;g~c7>^$_0( z!{AuK90{vY8Gm)HN>+3(eFMe*Td5}o#O@w;n4~{)K`UX4;yzr1U_yC&pyFbQ4sn%* z^PzsJFP@hluyjRKfsPo^?k_1k<6iavVou=TGyH3hCGCzIM23KM^sgP23=vwxI4Fr~aV zYvq#npOg0&Hz)qWOdS`r;E108g(YTvO1ajo(=c<{tyvTO1yVPBh~8WL3-i9l^iuTD A4*&oF delta 5678 zcmV+}7SZY5Fx4=SjeoXgR4Q3gjoou$KqN|{n<7{Q*;Vq%?=Yv0*nK%a$sz%e1WE7* zAP;t{NPHju5{b;j4-g<%pFJBSVeh8 z<`8b+3h*mVQ-5@h@N}+_k_d4X65;PSnogKv6nG?#?$fBU#P{ZCFW^a1%=9CkPLyJw zF!`8)Xco!OQWR5EPA0}g$-O-XCHJ1>OXyrpR>L4x<9Bl)d8fvp_cYY%$Pp;xLfXv# z{B74%ISN{{AXi^@*burI zV)x1vt%@f(|HhP(59r-yL>&2?I~8d)qG|+oqOGH_kg*z#rI@!lW+{ld z$k#Zm1pic@*~ZJS0vu43ojeaHLFX_EGifD{%3K94uZVhmPSto89Q)}#$(Vab={re- z2~<}?Gk+8W=>&@8awa*eR$5q8Q_9onLX4*XbCcOXKK5QCbfE@JHtxF$THeSd4POlg z*8_?2+jwCX$(KP$lL*~C8vc&WgjnFiIKyd-B5Q&e-K=m-K>Uyz4?O{H!d27OQxgf`1Jo920AJ7{8J!#n(h`Y^m&m zf@(bQ0x72y!7iex5(tyT%dRP=R}xJcXoY>_-O$Gro?0->p5#Wp8n(!7h+B zQ-Ab!_Q35-G25BKwR1*l=Lym_qL^oV3FAo&6I<6hxI0H&cb1Uu9MN2b<0A}gu^TxZ zjdV{`*b?fEH!Q;MO+4Qx3`!o_b2McEP_D}PRw+qZ`rO0h1CG**^2CPWKFMR-tmFK4*6Zpau;~I*xu^=0 zOOKs4OklPu`-n2M2ICMQ_`}Cy+zAx78aqH|M6of@4zLVDq_uwgQQhI6AzZh(_9N+A z1RaP?kefKe7dGkKjoSv0DH|Ku4u2V=$Q)RB``g0VALW?UVavmM_2@l3KRs%(TX-TVW{jCgh=JLU;k-#9StoE;CIjqVhYe97i5 zHp54z#RO=A?h!$O71Yote@<}98`wflFhy_j#yoxF zDw=O{IVgdlW-gsYwAvIiWk1ZctuWJf!A#r$Gj;FF#BDD%cnI;Dj`j9&3|(QcacEP6 zNCWO%S{udj9%k2*$pw-D*OOcZ9)AbIEcK79IU-AJA83i-4;iFSQo<~#>~2I*S6*W& z9`jp*)6qp1$(I59r!_eYfx1H(Lr7T0_=fMsITF1N8G^m#L}R!Np>pPlqQC&RW!AVs z(~IObttgR&^*^F?AXn`%08hI|0e`!aQv8IHR>dlKFOK(iP>N-}wB{V%`G4*a&61`O zRaADB9Y=~UA%%sfsr4#}rk1FT&9|hekD)_b3`06J#t2}KypKS4YK{@u4mB_W*{KTp zupR1P7-HK*y=tKkxW9ica~xgP0<>JcoSu!#TB1K~cB{izd;Dqr>&Y0+4SZ;2v;L8@ zIhfBfwR$dGP3|}B$1#v{m*NB*`_;2Qza(j)X97ZCvMhhCs$&^+`>KqMZ> zZY8G&i8x71P}J~=MpWeMs*0!ZhDn~8L}KLg#}Hj&=Ie%jv%f|IS*771N@x7Ygeaz2 ziu!_4Mr4I^Yfl2b&JWm3FHdcQ;LsaOmImn6yvI#^M zi{Ba+ptxbCVCETx87vyuN>#Cvw>py9gkE=Z96ty7@5t)5;R~{5L~f zs4-VMl2?8IImA(5hgv>7Z(p8v-fs1@HYjSFWp_LsR-4^v2Bt1Qb0ov#>a;q2-LI#X zgjHsJ*sZqS{`t5$ZJu{?aQ*zU*1O;%iJsQSr4; zc6|70{j{2Y+G)r2-`9uD>FW#>-tKt^T4THUhmqcB@jbsB9@gIH&2~Kl%ggRzqAW_L z?PfQrJU?%bY@AJ^0Q}RM>5LghnAp!`C_QWHv$ta1c!cg;e_-Ee2C4usg?NYcanBT` zQ3)#s*!#8GJ$goSN)5mN>V0}X{WJl-*-ZdHzntuU(Ceo?8;+)`Qz7`wri87xJ{+D8 zb_7fnOy<~c_G=h)-s;oy!ORrVu^hkd9_%QNo81>SR!%Sbt)(b(=+R6P^>Ods#61z~ zew?8NvHwzCZZM*7Me?pI5r$x|DaHmMxwUs(!C2zu;H@?NaDJJFY0Ur_V;oSg?|@f7 zUTkB3_L3|$#}3^^(~sszLrfl9p(qaQnyA{UJxUTp@^Xu}X{(N(6d@_okKXEZ0zGY* z2_P+|MGiGmKOAvb|8@OfRz%?!8_oK4(9&GpHwd0Tf1Us~nX&gIV$h3OZB-1LX_=Y( zXq%;Bm)4-Lm7Ps&*7#qT&2NT372|(IEAg~{tc+inuphmr=f|~aM$6;Ne$UaT4fDEA ztEc_ZjHB3SY1F+f+;YVnkiV~|WWC%xZYL7#Obsy|$LX-zO=`pC%kFQx=U+^QnCG4I zFbaz0B+qNC=ybxuTM~^;-8ux{h{<)pk~h!in_D!YD7TK(g{?Zc+D=wCSDChht8J;1 zT?-h0S{&0+@?ViVy&|UX@73-m`Jh2|Ml|$)NG<}@;w+CStKnF9*cp)JFU7s14g?2vl{}@gW@GKhrwPH zbJVwYyF$YHM3Ci4gw3&VFCj|Japu|4x2QFL8rZYW!2s_b$SonXIJu#UNr~)+ED`n2 z_e^u-e>{nA3227A%o@H`pC5gSFZmO|u$XgmpEB>}=)!!(Imw%=04TIxQ zXLA_D4dDkrT|hNT(trYXgBw%am^TnIzw&~YPvuYJVWVZS8h{E@*`c>u!Av_|wD2~R>!t^?sDNm9aYQ|Y+sae4^xn@?9+z?`abNTfW zLfU=+JnXWBIHLKTpuJ?N1=~uJG3cd##hRNfZAiTOQO8Mq+8Yi`NoFe!Gh2#y&J-Gw z;K>|GK1)$jTwG%?h2QAbQt4{fmdNY`+fH-d)5v>^cW z5a|MG10dy?%t+LUkS7%15BM#|G@}N{nALN*-`pn8P>*-zqTZfipJ5lgk!$aS)1SjI zv09S}wPZj0rhNEE- zm!TL(L@iGF|!iX}y>JUsL;!~*dS4fF%u5@v|MG6y`XbD-cm ztN{iM8Ugsx*%O*wQVbzm#*EX@cQWGad92Cdbd4;SFQcjNKrZ|v4-lPa=rD!@J3!H3 z{y*OGQH!I`U+i z3gvki45D9NHjgc+DANcjhig~WYB2lgHN50$!6h&qOko`0k5Wv8fJ;C|lF+A%dZwHv zAbv-2Mi%A=aZi$#i_apQi%kW7f1ai|&Ky!)^r)0a-p;0FQEzT@m10tBW_&|)s|!pTa1w=R=g5u*agJqj1zyfV0J)5B$;7Qf0IUcA@2>U zF)LRIIq>e!KmO_Lg%!d6hGWQn=5T8RidbBn(W0m%R=fwAQ%kAUzev&~X@0Ck?IN`V zKEV+)x}Qc?6TE;tdOBRFEe3Hle)Iz=0zKZi;~*aOAyki{dzY3sxL) zclcY#|AF}5QiA;J6~!26;a2jt;*|Ef?B2llPP? zs)LbD66Lt0BU5mBK>jz_%T=Dr6ddglUlX}fjQ-nM?Kg|+hLa{lx%b35U6~gpapL(x zxr(oeRBz~Wp0g`XL8rLl8%dK35h4QHJd-aG6#=!AMG-rHxuzs0Ijzk=@Z9yYG;&Ar z@O!n>JQ21i&%MPaw;$3meB%C6r+`QX@sTv+dWp~J`L)8pov34ocsfxbMHeoVPmyUX zALXMdr8Tyy5bEm%N9agu6U7&tWnuzC{5&=JD>~$3Bi1-UZwGn@aIZ;~E;-j%GoOmwPDbxRan^pB)DCRH12#2dL z!m?GRWv(GpO!lgG2v?hmGphEGDm`t&mgqSrH9ebublG?UttHuVz9YCr!ygO$CoU>- zn&8hDB2wXUH%aG*R4r7+E0iVzsS(>=X+fp-QfnMk{Z!F~YKPUX{AyWTjeBSLjZRJt zqUh0u&p#{e(lEdfk%7;TxvELf))$Q{lpopzj!aS`wRiIgCCBw-OV1&2`ZjU=u) zA+dXwC_xa$E?5Qw3`MAh4;z*qNZ3Dug5=p4jsr$PCkMX-EY*yFW+|9*DJ(HChuuI? z#ci;1JJb^jV<%`T?n+S!I@L1lq*BapmnPU7hZ(vm6&G=rW*9}|2FRa({O=J`v&Q-J zkN;znmlH34N8^H}N1hVsxUKaaMdFE|T?A*=z;5LYv>U&E?+R;m<^ibg19YofnGlWg z)aGu$OCiYANC>^N9=i!9*yWz2#2-Uer2Y5*a6;-_NQ@x9a zNy5Jw7lPsFL?phj;R06|xo~fLAenT^yMwGqnx6}kMHD1|d1RBgFBDk~yC@>p$vr@E z7Iyg!O1wl3il;cs#hv}|_183DLx-}FBB>yx6hRh+xM~8+Z6SxavO`{-Z!vj~RawU$ z%uaHX2~;t?d>jtVwsY?cWQIE919hDV`PvEBnb(euw@X(Q991N;zG!8H=eB zm!E_fQ`oP6Bxh0+Gf#?{fY{mWoPVRzH*z@1qGhgYqYgZDQ8iupH3aFoI?N6$)MK$Y z!q->$O3{dN?uZlMR|F@jYKtqhTy$Bemg5L}v*sCu)P-eDn-)8=7F)nVid$aY*pl9w zz*Xxh;L%6oRD(8H-!ZfvU=bY>OKcHagDI$RPxu9YZ?0jJYyniaz;B>!TO!MBlHx@X zYvx{r5MH@muJS+{xmG?17;SAYgf9=d(vcX`C47kp1irusox?mwKK^dSYbA6n@~9pd zWuw4YlQXs9P}rZsZ$(_hZ0^Tw1U9|75ut<~ht|UgF|G%&;O|-_ja4?nFw~etVv*i! zhTzJ7hng5%1I|W)o3vJ(wf+Ju+N&X6;WQ+dGs#)nw2MKB>X-gQ(vI#+umAE%uq}!; z30JH_=(*K(3r4PAxhR=>f@w{rqx4V0-;u0q2x3%HX@q@bsf5f!+qrBe;7ikEl)x96 zmiLvIsW^w77KAD;fWW?n+ws{wnD9r z%QBZ=DvxH|wvegLQQjqzx}~Pp{oop3Oudj>rgzKq21_K$#fhC2FZkhd#hws&?bvUN ztU41}(D8JmqT=;qWPLMU!7Wmb4s|Da3MMC*45mW8XV4-BTAR(3d23)oljz#K#`U{@ ztHiqoLuA8Y#1y@|g4ZZ)bU^Q7x+#N3g&J41zI-Gq^b_k#mN#50&rG|<+_8X&L%BNI zQ3Uk_ZGAPhLbGb5xO>}-O7Q>*p>f#cq)1wmkBXJoF)9%R3cLa##L@&

    fQ);gE@E za%oq*--8wwH-Ohed?O5lV+C_0tVU&j)U_&E(Yf>u6#H+bo){3jN7!MK{>TNbge{8O zYz=}5<=uaZizPb5RTj>N`lY^jUVeVk6;TB`VnCN)5S5V#y2uh(cY?i}RIiG0-LyKr z6L)`w0rDVMcLb#)NfwIH<@#3yOYv-k!nK2=%{TSSdJT#`dhW3GuRApbt|uoQr`#e< zoq)uD{_#JVgP23=vwxI4Fr~aVYvq!+my`b&Hz$5&rj83*a754l!Vabc \u2013 Psycopg abstract classes", "adapt \u2013 Types adaptation", "Connection classes", "conninfo \u2013 manipulate connection strings", "COPY-related objects", "crdb \u2013 CockroachDB support", "Cursor classes", "_dns \u2013 DNS resolution utilities", "errors \u2013 Package exceptions", "Psycopg 3 API", "The psycopg module", "Other top-level objects", "psycopg_pool \u2013 Connection pool implementations", "pq \u2013 libpq wrapper module", "rows \u2013 row factory implementations", "sql \u2013 SQL string composition", "types \u2013 Types information and adapters", "Adapting basic Python types", "Using COPY TO and COPY FROM", "Differences from psycopg2", "Getting started with Psycopg 3", "Installation", "Passing parameters to SQL queries", "Adapting other PostgreSQL types", "Transactions management", "Basic module usage", "Psycopg 3 \u2013 PostgreSQL database adapter for Python", "psycopg release notes", "psycopg_pool release notes", "How to make a psycopg release"], "terms": {"The": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 16, 17, 18, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "system": [0, 5, 6, 8, 10, 11, 17, 20, 22, 25, 29, 31, 36], "i": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37], "core": 0, "psycopg": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33, 37], "allow": [0, 1, 2, 4, 5, 10, 11, 13, 15, 16, 17, 20, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "customis": [0, 10, 19, 25, 26, 28, 34], "wai": [0, 1, 2, 3, 6, 10, 11, 14, 15, 16, 21, 23, 24, 26, 27, 28, 30, 31, 33, 34], "object": [0, 1, 2, 4, 5, 7, 8, 9, 11, 15, 17, 18, 19, 21, 23, 25, 26, 27, 28, 29, 31, 32, 33, 35, 36], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38], "convert": [0, 9, 10, 12, 13, 14, 15, 17, 19, 20, 23, 24, 25, 26, 31, 32, 33, 36], "when": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 14, 15, 17, 19, 20, 21, 23, 24, 26, 27, 28, 31, 32, 33, 34, 36, 37], "queri": [0, 1, 3, 4, 6, 7, 10, 11, 14, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 29, 32, 33, 34, 35, 36], "perform": [0, 1, 2, 4, 5, 9, 11, 13, 15, 16, 21, 22, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36], "how": [0, 1, 4, 7, 9, 10, 11, 14, 15, 16, 19, 23, 25, 26, 28, 29, 30, 31, 33, 34], "valu": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 34, 36, 37, 38], "result": [0, 1, 2, 4, 5, 7, 9, 10, 11, 13, 15, 17, 20, 22, 23, 24, 25, 26, 27, 29, 30, 32, 33, 34, 36, 37], "return": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 31, 32, 34, 36, 37], "For": [0, 1, 2, 4, 5, 7, 8, 9, 11, 13, 15, 16, 17, 18, 19, 20, 23, 27, 28, 30, 31, 32, 33], "high": [0, 4], "level": [0, 1, 5, 6, 11, 15, 18, 19, 22, 33, 35], "view": [0, 11], "convers": [0, 5, 6, 9, 10, 25, 26, 32, 34, 36], "type": [0, 3, 7, 9, 11, 13, 14, 15, 17, 18, 19, 20, 21, 23, 24, 27, 28, 29, 31, 34, 35, 36, 37], "between": [0, 4, 5, 10, 15, 17, 26, 28, 30, 31, 32, 33, 34], "pleas": [0, 1, 5, 7, 11, 14, 15, 17, 21, 26, 27, 28, 29, 30, 31], "look": [0, 3, 4, 5, 10, 11, 16, 17, 18, 25, 26, 28, 29, 31, 33, 36], "pass": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 15, 17, 20, 21, 22, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35], "paramet": [0, 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37], "sql": [0, 2, 6, 8, 10, 11, 15, 17, 18, 22, 26, 27, 28, 29, 34, 35, 36], "us": [0, 1, 2, 3, 4, 5, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 33, 34, 35, 36, 37, 38], "describ": [0, 2, 4, 6, 9, 13, 15, 20, 21, 22, 23, 25, 27], "thi": [0, 1, 2, 3, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], "page": [0, 5, 15, 21, 31], "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34], "intend": [0, 11], "rule": [0, 8, 13, 16, 17, 24, 26, 27, 29, 36], "chang": [0, 1, 2, 4, 5, 6, 7, 10, 11, 15, 16, 17, 20, 21, 24, 26, 27, 28, 29, 32, 33, 34, 36], "implement": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 15, 16, 18, 19, 20, 25, 26, 28, 30, 32, 33, 34, 35, 36], "adaptcontext": [0, 9, 10, 11, 14, 18, 19, 24, 25, 26, 32], "protocol": [0, 6, 7, 9, 10, 11, 14, 18, 20, 25, 27, 29, 30, 34, 36], "instanc": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 34], "connect": [0, 2, 3, 4, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 27, 29, 31, 32, 33, 35, 36, 37], "cursor": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 31, 32, 33, 34, 35, 36], "everi": [0, 1, 2, 5, 9, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 31, 32, 33], "context": [0, 1, 4, 5, 9, 10, 11, 14, 15, 17, 19, 20, 21, 22, 24, 25, 26, 28, 29, 32, 36, 37], "deriv": [0, 17, 36], "from": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "anoth": [0, 5, 7, 10, 15], "inherit": [0, 9, 24, 25], "its": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 15, 16, 17, 19, 21, 24, 25, 27, 32, 33, 34], "map": [0, 10, 11, 14, 15, 19, 24, 25, 26, 28, 31, 32, 34], "creat": [0, 1, 2, 3, 10, 11, 13, 14, 15, 19, 21, 22, 23, 24, 25, 26, 28, 31, 32, 33, 34, 37, 38], "": [0, 1, 2, 4, 7, 8, 9, 10, 14, 15, 17, 20, 23, 24, 26, 27, 29, 30, 31, 32, 33, 34], "By": [0, 1, 8, 10, 11, 13, 15, 21, 25, 26, 28, 33], "default": [0, 1, 5, 6, 7, 8, 10, 11, 13, 14, 15, 19, 20, 21, 23, 24, 25, 26, 29, 31, 33, 34, 36, 37], "obtain": [0, 2, 5, 13, 15, 17, 21, 26, 27, 30, 34], "an": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37, 38], "global": [0, 5, 10, 11, 20, 24, 25, 26, 32, 33], "expos": [0, 2, 6, 7, 9, 10, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 33, 34], "content": [0, 8, 38], "affect": [0, 7, 10, 11, 14, 15, 17, 26, 29, 32, 33, 36], "afterward": [0, 2, 5, 10], "mai": [0, 1, 2, 4, 5, 6, 9, 11, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33], "specifi": [0, 2, 5, 7, 8, 9, 10, 11, 12, 13, 15, 17, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36], "differ": [0, 1, 2, 5, 6, 8, 10, 11, 15, 17, 18, 20, 21, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36], "templat": [0, 10, 11, 14, 19, 24, 25], "attribut": [0, 1, 2, 6, 7, 9, 10, 11, 14, 15, 17, 19, 20, 22, 23, 25, 26, 29, 32, 33, 36], "adaptersmap": [0, 9, 10, 11, 19, 25], "contain": [0, 1, 2, 4, 6, 9, 12, 13, 14, 16, 19, 20, 24, 25, 26, 30, 31, 32], "class": [0, 2, 5, 7, 8, 10, 13, 14, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 28, 32, 34, 35, 36, 37, 38], "oid": [0, 9, 10, 13, 15, 19, 20, 25, 26, 32, 36, 38], "e": [0, 2, 4, 5, 9, 10, 11, 13, 14, 15, 16, 17, 22, 24, 25, 26, 28, 30, 34], "g": [0, 2, 9, 10, 11, 13, 14, 15, 16, 17, 24, 25, 26, 28, 30], "regist": [0, 1, 10, 11, 17, 25, 26, 27, 32, 36], "your": [0, 1, 4, 5, 6, 7, 8, 9, 11, 13, 21, 23, 24, 26, 28, 29, 30, 31, 32, 33], "own": [0, 1, 2, 4, 7, 13, 23, 26, 28, 32], "builtin": [0, 9, 19, 25, 28, 32, 34], "byte": [0, 9, 10, 11, 13, 15, 22, 24, 25, 26, 27, 33, 36], "sequenc": [0, 4, 7, 9, 11, 13, 15, 23, 24, 26, 27, 31, 32, 33, 36], "format": [0, 5, 8, 9, 10, 13, 14, 15, 20, 22, 24, 26, 27, 28, 31, 33, 36], "understood": 0, "string": [0, 2, 3, 9, 10, 11, 13, 14, 16, 17, 18, 20, 21, 22, 25, 27, 28, 29, 31, 32, 33, 35, 36], "shouldn": [0, 9, 11, 15, 31], "t": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 36, 37], "quot": [0, 2, 9, 10, 24, 28, 31], "databas": [0, 1, 2, 5, 7, 8, 9, 11, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], "function": [0, 1, 2, 5, 7, 8, 11, 12, 14, 15, 16, 17, 18, 21, 23, 25, 26, 28, 31, 32, 33, 34, 35, 36], "pqexecparam": 0, "so": [0, 1, 2, 4, 6, 9, 10, 11, 15, 16, 20, 21, 24, 26, 27, 28, 30, 31, 32, 33, 34, 38], "escap": [0, 8, 9, 22, 24, 26, 31, 36], "necessari": [0, 1, 5, 8, 13, 16, 21, 24, 27, 32], "usual": [0, 1, 2, 4, 11, 15, 17, 20, 22, 23, 24, 27, 28, 31, 34], "also": [0, 1, 2, 4, 5, 7, 8, 9, 11, 13, 15, 16, 17, 19, 20, 21, 22, 24, 26, 27, 28, 31, 32, 33, 34, 37], "suggest": [0, 28], "server": [0, 3, 5, 6, 9, 10, 11, 14, 15, 16, 17, 19, 20, 21, 22, 26, 29, 30, 31, 33, 34, 35, 36, 37, 38], "what": [0, 1, 2, 7, 8, 11, 13, 15, 17, 23, 26, 27, 29, 31, 33, 34], "via": [0, 1, 4, 8, 20, 28, 30, 31], "opposit": [0, 4, 17, 24, 27], "oper": [0, 3, 4, 10, 11, 13, 15, 16, 17, 20, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "read": [0, 2, 4, 11, 13, 15, 20, 22, 25, 28, 29, 30, 31, 32, 36], "out": [0, 1, 2, 15, 17, 23, 26, 27, 34, 36], "instanti": [0, 2, 15], "demand": [0, 33], "transform": [0, 9, 10], "execut": [0, 1, 2, 4, 5, 6, 7, 8, 11, 13, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 36], "onli": [0, 1, 2, 4, 5, 8, 9, 10, 11, 14, 15, 17, 20, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 36], "children": [0, 32], "alreadi": [0, 2, 5, 6, 10, 15, 17, 21, 23, 27, 32, 33], "newli": [0, 35], "ones": [0, 1, 5, 6, 11, 12, 13, 15, 17, 21, 22, 24, 26, 31, 32, 33, 38], "exist": [0, 4, 5, 15, 17, 32, 34], "doesn": [0, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16, 20, 21, 22, 24, 25, 26, 27, 28, 32, 33, 34], "provid": [0, 1, 4, 5, 8, 11, 14, 15, 16, 21, 23, 31, 32], "becaus": [0, 1, 2, 4, 5, 6, 7, 13, 15, 16, 17, 20, 21, 24, 26, 27, 28, 30, 31, 32, 33], "just": [0, 1, 2, 4, 5, 9, 10, 15, 26, 34], "too": [0, 1, 2, 5, 6, 8, 9, 10, 13, 15, 21, 22, 24, 26, 28, 30, 31, 32, 33, 36], "mani": [0, 1, 4, 15, 21, 24, 26, 28, 31, 36], "pars": [0, 4, 6, 12, 13, 22, 25, 32, 36], "elementtre": 0, "veri": [0, 2, 21], "simpl": [0, 2, 5, 11, 21, 23, 25, 33, 34], "base": [0, 10, 13, 17, 24, 25, 26, 27, 29, 34], "load": [0, 5, 9, 10, 22, 25, 26, 27, 28, 29, 32, 36], "method": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37], "import": [0, 1, 2, 5, 7, 8, 10, 13, 15, 16, 17, 19, 20, 22, 23, 24, 25, 26, 27, 28, 30, 32, 33, 34], "etre": 0, "et": 0, "xmlloader": 0, "def": [0, 1, 5, 7, 8, 16, 25, 26, 34], "self": [0, 7, 8, 10, 11, 14, 15, 19, 21, 25, 26, 30, 34, 36, 37], "fromstr": 0, "conn": [0, 1, 2, 4, 5, 7, 8, 11, 14, 15, 19, 20, 21, 22, 23, 24, 25, 26, 28, 32, 33, 34], "register_load": [0, 10, 25], "now": [0, 4, 8, 21, 22, 24, 28, 30, 31, 33, 34, 36], "cur": [0, 1, 2, 4, 5, 7, 8, 11, 13, 15, 17, 23, 24, 26, 27, 28, 31, 33, 34], "select": [0, 1, 2, 4, 5, 7, 8, 15, 20, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 34, 36], "xmlpars": 0, "document": [0, 1, 2, 4, 6, 14, 15, 17, 19, 20, 21, 22, 26, 27, 29, 30, 32, 33, 38], "version": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 33, 36], "1": [0, 1, 2, 4, 5, 6, 8, 11, 13, 14, 15, 16, 17, 20, 21, 22, 24, 26, 27, 28, 30, 32, 33, 34], "0": [0, 1, 4, 5, 6, 8, 9, 11, 15, 16, 19, 20, 21, 22, 24, 26, 31, 32, 33, 34, 35], "book": 0, "titl": 0, "manual": [0, 1, 13, 16, 31, 33, 38], "chapter": [0, 3], "elem": 0, "fetchon": [0, 1, 2, 4, 5, 7, 8, 11, 15, 23, 26, 28, 31, 32, 34], "element": [0, 24, 25, 26, 31, 32], "0x7ffb55142ef0": 0, "make": [0, 1, 2, 4, 5, 6, 8, 9, 10, 12, 15, 16, 20, 21, 26, 28, 30, 32, 33, 34, 36, 37], "easi": [0, 23, 28], "one": [0, 1, 2, 4, 5, 7, 8, 10, 11, 15, 16, 17, 20, 21, 25, 26, 27, 28, 30, 31, 32, 36, 38], "need": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 14, 15, 19, 21, 22, 23, 24, 25, 26, 28, 30, 31, 33, 34], "dump": [0, 9, 10, 25, 26, 32, 36], "xmldumper": 0, "set": [0, 1, 2, 5, 6, 7, 10, 11, 13, 15, 20, 21, 22, 25, 26, 28, 32, 33, 34, 36, 37], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34], "help": [0, 15, 23, 25], "tostr": 0, "register_dump": [0, 10], "possibl": [0, 2, 5, 7, 8, 9, 10, 11, 13, 15, 16, 21, 22, 24, 26, 28, 30, 31, 33, 34, 36, 37], "xpath": 0, "text": [0, 1, 9, 10, 13, 15, 22, 25, 26, 27, 28, 31, 32, 34, 36], "note": [0, 1, 2, 4, 5, 6, 8, 9, 11, 13, 14, 15, 21, 23, 24, 26, 28, 30, 31, 33, 34], "typesregistri": [0, 10, 19, 25], "ani": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20, 21, 23, 24, 25, 26, 27, 28, 31, 32, 33, 35, 36], "inform": [0, 1, 5, 10, 15, 17, 18, 19, 22, 23, 26, 27, 30, 32, 34, 35, 36], "extens": [0, 15, 28, 30, 32, 33, 34, 36], "thei": [0, 1, 2, 4, 5, 6, 7, 9, 11, 13, 15, 16, 17, 21, 24, 26, 27, 28, 31, 32, 33, 34], "have": [0, 1, 2, 3, 4, 5, 10, 11, 13, 15, 17, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34], "been": [0, 1, 2, 4, 5, 9, 17, 20, 21, 22, 28, 34], "typeinfo": [0, 9, 19, 25, 26, 32, 36], "normal": [0, 1, 2, 4, 5, 8, 9, 10, 11, 13, 15, 20, 21, 24, 26, 27, 28, 29, 31, 32], "decim": [0, 20, 26, 32], "both": [0, 1, 5, 8, 17, 19, 23, 26, 27, 28, 30, 31, 32, 33, 34, 37], "fix": [0, 5, 20, 26, 33, 36, 37], "precis": [0, 17, 20, 22, 26, 30], "arithmet": 0, "subject": [0, 27], "round": [0, 4], "sometim": [0, 1, 2, 5, 26, 28, 31], "howev": [0, 1, 2, 5, 6, 13, 14, 15, 17, 20, 21, 22, 24, 25, 26, 27, 28, 33, 34], "want": [0, 1, 4, 5, 7, 8, 9, 10, 11, 15, 21, 24, 26, 27, 28, 30, 31, 32, 33, 34], "point": [0, 3, 11, 20, 26, 31, 32, 36], "math": 0, "get": [0, 1, 14, 15, 18, 21, 25, 26, 32, 35, 38], "mayb": 0, "slower": [0, 20], "mix": [0, 1, 2, 26, 31, 36], "caus": [0, 1, 4, 17, 28, 33, 36, 37], "error": [0, 1, 4, 5, 8, 11, 13, 15, 18, 19, 20, 21, 22, 26, 28, 30, 31, 33, 35, 36, 37, 38], "If": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 38], "fine": [0, 3], "potenti": [0, 24], "loss": [0, 26], "simpli": [0, 9, 11, 30], "receiv": [0, 1, 2, 4, 5, 7, 8, 11, 15, 17, 20, 21, 23, 26, 34, 36], "same": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 14, 15, 20, 21, 22, 26, 27, 29, 30, 31, 33, 34, 36], "float4": [0, 26, 36], "float8": [0, 26], "textual": [0, 31], "represent": [0, 9, 10, 22, 24, 25, 26, 31, 32], "two": [0, 1, 2, 4, 10, 11, 14, 18, 27, 28, 29, 31, 32, 36], "compat": [0, 1, 6, 8, 17, 21, 27, 36], "123": [0, 26], "45": [0, 26], "floatload": 0, "In": [0, 1, 2, 4, 5, 9, 10, 11, 13, 15, 16, 17, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 37], "take": [0, 2, 3, 4, 5, 7, 9, 11, 18, 23, 26, 28, 29, 31], "effect": [0, 1, 4, 15, 20, 33], "other": [0, 1, 2, 3, 11, 14, 15, 18, 19, 21, 22, 24, 25, 26, 28, 29, 30, 31, 33, 34, 35, 36, 37], "suppos": 0, "work": [0, 2, 4, 5, 8, 10, 14, 15, 21, 24, 26, 27, 28, 30, 32, 33, 36], "which": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37], "avail": [0, 4, 5, 6, 7, 9, 10, 11, 15, 17, 19, 20, 21, 22, 24, 25, 26, 28, 30, 31, 32, 33, 36], "traceback": [0, 20, 22, 26, 28], "most": [0, 2, 4, 10, 15, 20, 22, 26, 27, 28, 30, 31, 34], "recent": [0, 6, 20, 22, 26, 28], "call": [0, 1, 2, 4, 5, 7, 9, 11, 13, 15, 16, 17, 20, 21, 22, 23, 26, 28, 31, 32, 33, 34, 36, 37], "last": [0, 10, 11, 15, 20, 22, 26, 28, 36, 38], "dataerror": [0, 17, 19, 26, 36], "larg": [0, 2, 5, 9, 14, 21, 26, 28, 31, 36], "after": [0, 1, 2, 4, 5, 6, 7, 10, 11, 13, 15, 17, 20, 21, 22, 26, 28, 30, 32, 33, 36, 37], "year": [0, 8, 26, 28, 36], "10k": [0, 28], "One": [0, 1, 2, 11, 16, 28, 33], "would": [0, 2, 4, 8, 15, 23, 27, 28, 30, 33, 34], "store": [0, 2, 5, 6, 7, 9, 15, 21, 25, 26, 32, 33], "datetim": [0, 8, 9, 20, 26, 27, 28, 31], "max": [0, 11, 26, 28], "let": [0, 21, 33, 34], "subclass": [0, 8, 10, 13, 14, 15, 16, 17, 21, 24, 25, 26, 29, 32], "them": [0, 1, 2, 4, 5, 9, 11, 13, 15, 17, 20, 21, 24, 25, 26, 27, 28, 31, 32, 34], "scope": [0, 10, 34], "case": [0, 1, 2, 5, 8, 9, 10, 11, 15, 16, 17, 20, 21, 24, 26, 27, 28, 30, 31, 33, 34, 36, 38], "dateload": 0, "datedump": 0, "infdatedump": 0, "obj": [0, 8, 9, 10, 22, 24, 25, 26], "b": [0, 10, 22, 24, 26, 31, 32], "elif": 0, "min": [0, 28], "els": [0, 1, 5, 8, 15, 19, 20, 28, 33, 34], "super": [0, 8, 16], "infdateload": 0, "new": [0, 2, 3, 4, 5, 8, 9, 11, 13, 14, 15, 16, 17, 19, 20, 21, 23, 24, 26, 29, 33, 34], "2020": [0, 31], "12": [0, 20, 22, 26, 27, 28, 30, 34], "31": [0, 28, 36], "9999": [0, 26, 28], "instruct": [0, 25], "follow": [0, 1, 2, 4, 5, 6, 8, 11, 14, 15, 17, 20, 21, 24, 26, 28, 30, 32, 33], "where": [0, 1, 2, 4, 5, 8, 9, 10, 11, 13, 24, 25, 26, 28, 31, 32, 33, 34], "local": [0, 7, 29, 38], "manag": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 15, 20, 21, 22, 25, 26, 27, 28, 29, 31, 32, 34, 35, 36, 37], "dure": [0, 1, 4, 13, 15, 17, 21, 22, 36], "requir": [0, 1, 2, 5, 9, 13, 15, 17, 19, 20, 21, 22, 26, 30, 31, 32, 33], "dispatch": 0, "postgr": [0, 1, 9, 10, 12, 13, 22, 26, 28, 34], "back": [0, 4, 5, 10, 11, 20, 21, 25, 26, 27, 32, 33, 34], "copi": [0, 4, 10, 11, 15, 18, 24, 29, 35, 36], "thu": [0, 17], "all": [0, 1, 2, 5, 9, 11, 15, 17, 18, 20, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 37, 38], "made": [0, 1, 5, 10, 20, 21, 24, 30, 33], "current": [0, 4, 5, 8, 11, 15, 16, 17, 20, 21, 22, 25, 27, 33, 34], "argument": [0, 2, 7, 8, 10, 11, 13, 15, 16, 21, 22, 23, 24, 25, 26, 28, 29], "accord": [0, 5, 8, 9, 10, 15, 17, 24, 26, 27, 32, 33], "placehold": [0, 2, 9, 10, 15, 24, 28, 31, 34, 36], "pick": [0, 21, 31], "binari": [0, 2, 9, 10, 11, 13, 15, 22, 28, 29, 32, 35, 36, 38], "auto": [0, 10, 24, 26], "ha": [0, 1, 2, 4, 5, 9, 10, 11, 13, 15, 17, 20, 21, 22, 26, 28, 30, 31, 33, 34, 35, 36], "enough": [0, 2, 9], "decid": [0, 1, 6, 21], "best": [0, 2, 5, 10, 22, 31], "list": [0, 2, 7, 8, 9, 11, 13, 15, 16, 21, 24, 25, 27, 28, 29, 32, 34, 36], "depend": [0, 4, 15, 16, 17, 29, 32, 36, 37], "whether": [0, 1, 9, 15, 32], "integ": [0, 20, 22, 24, 26, 27, 31, 32, 33, 34, 36], "bigint": [0, 26, 27], "number": [0, 1, 5, 6, 11, 14, 15, 17, 20, 21, 22, 24, 29, 31, 33, 36, 38], "size": [0, 2, 3, 8, 9, 15, 20, 21, 27, 36], "mechan": [0, 5, 9, 31], "get_kei": [0, 9, 10], "upgrad": [0, 9, 10, 30, 38], "more": [0, 1, 2, 4, 5, 6, 7, 8, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 33, 34, 35, 36, 37], "specif": [0, 5, 17, 18, 19, 22, 24, 26, 30, 32, 33], "upon": [0, 1, 11, 21, 36], "success": [0, 1, 4, 15, 16, 21, 38], "request": [0, 1, 2, 4, 5, 11, 15, 20, 21, 22, 24, 31, 38], "pgresult": [0, 7, 15, 17, 22, 36], "recurs": [0, 11, 36], "arrai": [0, 9, 14, 19, 25, 26, 28, 36], "composit": [0, 2, 8, 14, 18, 25, 29, 31, 35, 36], "As": [0, 1, 4, 5, 8, 14, 19, 28, 33], "consequ": [0, 1, 4, 5, 28, 33, 36], "certain": [0, 1, 2, 4, 5, 10, 19, 22, 26, 33, 36], "choic": [0, 5, 7, 15, 22, 31], "onc": [0, 3, 4, 5, 8, 9, 10, 15, 26, 33], "per": [0, 4, 17, 36], "up": [0, 1, 5, 10, 16, 17, 20, 21, 25, 26, 30, 31, 33], "encod": [0, 9, 10, 11, 20, 22, 24, 26, 28, 36], "fast": [0, 22], "path": [0, 5, 20, 30, 36], "each": [0, 1, 2, 4, 14, 15, 17, 19, 21, 23, 31, 34, 36], "fail": [0, 1, 4, 5, 9, 15, 17, 19, 20, 21, 22, 26, 27, 28, 30, 31, 33, 36, 37], "isn": [0, 28, 33], "right": [0, 2, 4, 23, 28, 30, 31, 32, 33], "whose": [0, 5, 8, 24, 25, 28], "write": [1, 3, 7, 8, 10, 11, 13, 14, 17, 22, 26, 28, 29, 31, 33, 36], "code": [1, 2, 5, 8, 17, 21, 31, 33, 34, 36], "than": [1, 2, 4, 5, 6, 11, 15, 17, 21, 22, 23, 24, 26, 27, 28, 33, 36], "time": [1, 2, 4, 5, 6, 8, 11, 15, 17, 19, 20, 21, 22, 24, 28, 29, 31, 33, 36], "thread": [1, 5, 11, 21, 34, 36], "safe": [1, 5, 8, 11, 21, 24], "design": [1, 2, 15, 35], "sever": [1, 2, 4, 5, 6, 7, 9, 10, 11, 14, 15, 17, 22, 26, 28, 31, 33, 34], "lightweight": 1, "independ": [1, 10], "share": [1, 11, 15], "transact": [1, 4, 5, 11, 15, 17, 18, 21, 22, 27, 29, 34, 35, 36, 37], "mean": [1, 2, 5, 6, 8, 10, 11, 17, 20, 21, 26, 27, 32, 33, 34], "start": [1, 4, 5, 6, 10, 11, 16, 18, 20, 21, 28, 30, 33, 35, 37], "state": [1, 2, 4, 5, 10, 11, 15, 17, 19, 20, 21, 22, 23, 33, 36], "until": [1, 4, 5, 11, 13, 15, 20, 21, 33], "rollback": [1, 4, 11, 17, 20, 21, 33, 34, 36], "It": [1, 7, 9, 11, 13, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 30, 32, 34], "see": [1, 2, 5, 8, 10, 11, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37], "session": [1, 6, 11, 14, 15, 20, 26, 29, 33, 34], "even": [1, 4, 5, 6, 11, 21, 24, 26, 28, 31, 32, 33, 34], "still": [1, 6, 11, 15, 17, 21, 24, 27, 28, 30, 33, 34], "uncommit": 1, "might": [1, 2, 4, 5, 8, 9, 11, 15, 17, 20, 22, 28, 30, 32, 33, 34, 36, 37], "desir": [1, 2, 7], "someth": [1, 2, 5, 11, 15, 16, 26, 27, 33], "consid": [1, 5, 15, 22, 26, 28, 34], "should": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 15, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34], "retriev": [1, 2, 15, 23, 26, 32, 33, 34, 36], "serial": [1, 26, 33, 34], "abl": [1, 2, 11, 15, 25, 26, 30, 33], "run": [1, 2, 4, 21, 22, 28, 30, 31, 33, 36, 38], "coordin": [1, 32], "access": [1, 5, 11, 15, 17, 20, 23, 28, 31, 33, 35], "program": [1, 2, 5, 11, 14, 17, 20, 21, 23, 24, 28, 29, 30, 31, 33, 35], "non": [1, 8, 11, 15, 16, 20, 26, 28, 33, 34, 36], "expect": [1, 13, 15, 21, 22, 26, 27, 28, 32, 33], "massiv": [1, 15], "parallel": 1, "rather": [1, 15, 17, 21, 23, 28], "impact": 1, "handl": [1, 2, 3, 4, 9, 11, 16, 17, 20, 25, 26, 29, 32, 33, 36, 37], "limit": [1, 17, 21, 27, 28], "grumpi": 1, "sysadmin": 1, "long": [1, 5, 6, 26, 27, 33], "beard": 1, "strict": [1, 8, 36], "control": [1, 2, 6, 8, 11, 15, 17, 21, 22, 28, 33, 34, 36], "max_connect": 1, "avoid": [1, 6, 15, 21, 36, 37], "starv": 1, "pool": [1, 3, 6, 18, 28, 29, 35, 37, 38], "process": [1, 2, 4, 5, 11, 17, 20, 22, 27, 33, 34, 36], "cannot": [1, 2, 5, 9, 14, 20, 21, 24, 26, 29, 30, 33], "across": [1, 5, 29], "facil": 1, "multiprocess": 1, "modul": [1, 2, 5, 7, 9, 10, 11, 12, 16, 17, 18, 20, 23, 26, 27, 28, 29, 30, 31, 32, 35, 36, 37], "fork": [1, 36], "framework": 1, "web": [1, 31], "sure": [1, 4, 5, 6, 15, 16, 21, 26, 30, 33, 34, 37], "worker": [1, 5, 21, 36], "do": [1, 2, 4, 5, 6, 11, 15, 16, 21, 26, 27, 28, 31, 33, 34], "probabl": [1, 2, 4, 5, 10, 15, 21, 26, 28, 30, 31, 33], "find": [1, 4, 9, 14, 26, 28, 31, 32, 34], "broken": [1, 5, 11, 21, 36], "counterpart": [1, 2, 15, 26, 27], "asyncconnect": [1, 2, 9, 14, 15, 16, 18, 19, 20, 21, 25, 27, 34, 36], "asynccursor": [1, 2, 11, 13, 15], "asyncio": [1, 2, 11, 13, 15, 21, 34], "interfac": [1, 2, 4, 5, 11, 13, 15, 16, 17, 21, 22, 24, 28, 30, 35], "pretti": [1, 32], "much": [1, 4, 21, 22, 28, 32], "sync": [1, 4, 11, 15, 17, 20, 22, 27, 33, 36, 37], "order": [1, 2, 4, 15, 21, 25, 26, 27, 28, 30, 31, 32, 33, 36], "scatter": 1, "await": [1, 5, 11, 13, 15, 16, 21, 25, 27], "keyword": [1, 5, 6, 11, 12, 15, 21, 23, 24], "here": [1, 8, 15, 16, 21, 28, 30, 33, 34], "dbname": [1, 12, 20, 34], "test": [1, 2, 21, 28, 30, 32, 34, 38], "user": [1, 2, 12, 20, 21, 22, 28, 30, 32, 34], "aconn": [1, 25], "acur": 1, "insert": [1, 2, 4, 15, 24, 26, 27, 28, 31, 33, 34], "INTO": [1, 4, 15, 24, 26, 28, 31, 33, 34], "num": [1, 34], "data": [1, 2, 3, 4, 7, 8, 9, 10, 11, 13, 14, 15, 17, 19, 20, 22, 23, 25, 28, 29, 31, 32, 33, 34, 35, 36], "100": [1, 4, 11, 15, 27, 34], "abc": [1, 18, 21, 34, 35], "record": [1, 2, 3, 4, 7, 11, 13, 15, 23, 25, 27, 28, 31, 33, 34], "print": [1, 3, 5, 7, 8, 19, 24, 27, 31, 34], "task": [1, 21, 37], "3": [1, 2, 4, 5, 6, 8, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 30, 32, 33], "dn": [1, 18, 35], "name": [1, 2, 5, 7, 8, 10, 11, 13, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 28, 31, 32, 34, 36], "resolut": [1, 11, 18, 35], "block": [1, 4, 5, 11, 13, 15, 16, 20, 21, 28, 29, 33, 34, 36], "befor": [1, 5, 10, 11, 14, 15, 16, 21, 22, 24, 26, 27, 30, 31, 32, 33, 36, 37], "To": [1, 27], "hostaddr": [1, 11, 19, 20], "resolve_hostaddr_async": [1, 11, 16, 18], "automat": [1, 6, 11, 15, 16, 21, 22, 24, 25, 26, 28, 31, 32, 33], "On": [1, 11, 13, 14, 26, 27, 30, 31, 38], "window": [1, 30, 36], "proactoreventloop": 1, "loop": [1, 33, 37], "selectoreventloop": 1, "earli": [1, 5, 20], "set_event_loop_polici": 1, "windowsselectoreventlooppolici": 1, "seen": [1, 20, 22], "basic": [1, 3, 23, 28, 29, 30, 35, 38], "usag": [1, 2, 3, 7, 18, 21, 26, 28, 29, 30, 32, 35, 36], "act": [1, 21], "close": [1, 5, 11, 15, 17, 20, 21, 22, 28, 33, 34, 36, 37], "leav": [1, 5, 15, 21, 26, 27, 30, 31, 33, 36, 37], "commit": [1, 4, 5, 11, 14, 15, 18, 21, 27, 29, 34, 36], "almost": 1, "d": [1, 31], "quit": [1, 31], "don": [1, 2, 5, 9, 10, 11, 15, 21, 22, 25, 26, 29, 30, 31, 32, 33, 36, 37], "factori": [1, 2, 3, 8, 11, 15, 18, 28, 32, 34, 35, 36], "That": 1, "step": 1, "instead": [1, 2, 5, 7, 11, 13, 14, 15, 19, 20, 24, 26, 27, 28, 30, 31, 34, 36, 37], "condens": 1, "less": [1, 2, 4, 11, 22, 33], "doubl": [1, 24, 31], "thing": [1, 26, 30, 33, 34], "never": [1, 17, 20, 21, 31], "o": [1, 24, 30, 31, 36], "ctrl": [1, 36], "c": [1, 7, 22, 26, 30, 36], "main": [1, 2, 5, 11, 15, 18, 20, 21, 29, 33], "cancel": [1, 11, 14, 22, 33, 36, 37], "put": [1, 5, 28], "recov": [1, 20], "similar": [1, 2, 5, 8, 11, 13, 15, 16, 21, 24, 28, 33, 36], "behavior": [1, 22], "similarli": [1, 14, 21, 32], "happen": [1, 4, 5, 10, 15, 17, 20, 21, 24, 26, 28, 31, 32, 33, 37], "either": [1, 4, 5, 11, 13, 20, 22, 23, 26, 31, 32, 33], "indirectli": 1, "signal": [1, 11, 25, 36], "directli": [1, 2, 13, 15, 24, 36], "python": [1, 2, 3, 4, 8, 9, 10, 13, 14, 15, 19, 20, 22, 23, 24, 25, 27, 28, 29, 31, 32, 33, 34, 36, 37], "ask": [1, 5], "postgresql": [1, 2, 3, 4, 6, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36], "postmast": 1, "encount": [1, 4, 17], "standard": [1, 2, 17, 19, 20, 26, 33, 34, 36], "cancellederror": 1, "rememb": [1, 28, 31, 33], "doe": [1, 4, 7, 8, 15, 34], "guarante": [1, 15, 17, 21, 30], "complet": [1, 2, 5, 8, 17, 20, 23, 25, 27, 28, 33, 38], "ultim": 1, "exit": [1, 5, 11, 15, 20, 21, 27, 33, 34, 36], "prematur": [1, 20, 36], "due": [1, 33], "know": [1, 5, 8, 9, 10, 26, 31], "outcom": 1, "statement": [1, 2, 3, 4, 8, 11, 15, 17, 20, 24, 27, 29, 31, 33, 34, 35, 36], "altern": [1, 9, 26, 28, 30], "previou": [1, 4, 5, 7, 11, 15, 26, 27, 33], "recommend": 1, "handler": [1, 11, 20], "longer": [1, 4, 21, 29, 33], "box": [1, 26], "found": [1, 5, 8, 10, 17, 25, 32, 33, 36], "patch": 1, "monkei": 1, "patch_select": 1, "patch_al": 1, "behav": [1, 5, 11, 14, 15, 25, 28, 32, 33, 34], "collabor": 1, "unlik": [1, 4, 11, 22, 25, 31], "psycopg2": [1, 2, 29, 33, 34, 35, 36], "psycogreen": 1, "wa": [1, 2, 4, 5, 8, 11, 17, 20, 21, 22, 28, 33, 36], "initi": [1, 4, 5, 11, 15, 17, 21, 36], "accident": 1, "4": [1, 5, 17, 20, 21, 22, 26, 32], "offici": [1, 30], "14": [1, 4, 15, 20, 22, 26, 32], "send": [1, 2, 4, 5, 11, 15, 20, 28, 31, 34], "togeth": [1, 2, 17, 20, 34], "about": [1, 4, 5, 6, 9, 10, 11, 14, 15, 16, 19, 20, 21, 23, 25, 26, 27, 30, 31, 32, 34], "warn": [1, 9, 15, 16, 17, 19, 20, 21, 36, 37], "debug": [1, 5, 15, 30, 36], "notic": [1, 11, 32, 34], "rais": [1, 4, 5, 8, 10, 11, 12, 15, 16, 17, 20, 21, 22, 25, 26, 27, 33, 34, 36, 37], "indic": [1, 21, 26], "familiar": [1, 28, 29, 34, 35], "some": [1, 5, 9, 13, 14, 15, 21, 23, 24, 26, 27, 30, 31, 34, 36], "report": [1, 8, 15, 17, 20, 22, 36], "psql": [1, 11, 15, 28, 30, 33], "progress": [1, 15, 20], "sent": [1, 2, 4, 5, 15, 17, 20, 31, 32, 33], "pl": [1, 2, 17], "pgsql": [1, 2, 17], "lower": [1, 32], "except": [1, 4, 5, 8, 9, 11, 15, 18, 19, 20, 22, 26, 27, 33, 34, 35, 36], "otherwis": [1, 5, 6, 8, 9, 11, 15, 20, 21, 22, 24, 25, 26, 31], "appropri": [1, 15, 28, 31], "databaseerror": [1, 17, 19], "client_min_messag": 1, "ignor": [1, 21, 33, 36], "client": [1, 3, 5, 6, 9, 11, 15, 17, 19, 20, 21, 22, 26, 28, 30, 31, 36], "add_notice_handl": [1, 11, 17], "invok": [1, 9, 11, 21, 22, 24, 32], "whenev": [1, 11, 31], "callback": [1, 5, 11, 17, 21, 37], "diagnost": [1, 11, 18], "diag": [1, 17], "log_notic": 1, "f": [1, 5, 7, 8, 13, 22, 27, 31, 33], "sai": 1, "message_primari": [1, 17, 22], "autocommit": [1, 4, 11, 14, 15, 19, 27, 29], "true": [1, 4, 5, 6, 11, 13, 14, 15, 17, 19, 20, 21, 22, 26, 28, 31, 32, 33, 36, 37], "statusmessag": [1, 15], "termin": [1, 4, 5, 14, 15, 17, 21, 33, 34, 36], "dealloc": [1, 6, 11], "later": [1, 7, 13, 21, 24], "extract": [1, 7, 25], "forward": 1, "whole": [1, 2], "interact": [1, 4, 11, 14, 16, 28, 33, 34, 36], "offer": [1, 2, 13, 22, 25, 28, 32], "command": [1, 2, 4, 6, 11, 14, 15, 20, 22, 26, 28, 30, 31, 32, 33, 34, 38], "listen": [1, 11, 14], "notifi": [1, 9, 11, 14, 20, 28, 36], "refer": [1, 5, 6, 10, 14, 15, 17, 18, 21, 26], "exampl": [1, 3, 4, 5, 9, 12, 13, 15, 16, 17, 20, 21, 23, 24, 26, 28, 29, 31, 32, 33, 34, 38], "form": [1, 2, 11, 15, 16, 20, 22, 24, 27, 28, 31, 32, 33], "commun": [1, 4, 5, 15, 20, 22, 28, 35, 36], "keep": [1, 2, 5, 16, 21, 30, 33], "mode": [1, 3, 8, 11, 13, 15, 17, 20, 22, 27, 28, 32, 35, 36], "wish": 1, "manner": 1, "reserv": 1, "simplest": 1, "consum": [1, 2, 4, 15, 28], "gener": [1, 2, 3, 5, 7, 11, 15, 17, 20, 21, 23, 24, 26, 28, 31, 32, 37], "stop": [1, 11, 15, 33], "2": [1, 2, 4, 5, 6, 8, 11, 14, 15, 16, 19, 20, 21, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 35], "option": [1, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 25, 26, 27, 31, 32, 36], "perfectli": [1, 27], "valid": [1, 8, 12, 17, 20, 26, 28, 36], "mychan": 1, "gen": [1, 15], "payload": [1, 20], "hello": [1, 2, 4, 27, 31, 33], "hei": 1, "output": [1, 4, 23, 26, 31], "channel": [1, 11, 20], "pid": [1, 14, 20], "961823": 1, "add_notify_handl": [1, 11], "immedi": [1, 4, 5, 6, 20, 21, 33], "lambda": 1, "n": [1, 5, 20, 24], "got": 1, "meanwhil": 1, "lost": [1, 5, 21], "brutal": 1, "poll": [1, 22], "endless": [1, 15], "stream": [1, 4, 14, 15, 22, 27, 36], "fashion": 1, "besid": [1, 34], "ineffici": [1, 24], "unless": [1, 5, 6, 11, 13, 15, 27, 33], "realli": [1, 24, 31], "useless": 1, "traffic": 1, "averag": 1, "delai": [1, 5], "half": 1, "A": [1, 2, 4, 5, 6, 7, 9, 11, 12, 13, 15, 17, 20, 21, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 35], "effici": [1, 2, 7, 10, 15, 27, 31], "addit": [1, 5, 16, 17, 32], "wait": [1, 4, 5, 11, 21, 24, 37], "check": [1, 3, 6, 7, 9, 11, 14, 17, 19, 20, 21, 23, 26, 31, 32, 37, 38], "dedic": [1, 5], "activ": [1, 5, 15, 20, 21, 22, 29, 33, 36], "awaken": 1, "selector": [1, 11], "fileno": [1, 11, 22], "file": [1, 11, 13, 16, 17, 22, 26, 27, 29, 30, 36], "like": [1, 5, 10, 11, 13, 14, 15, 23, 24, 26, 27, 28, 32, 33, 36], "rest": [1, 5, 31], "sel": 1, "defaultselector": 1, "event_read": 1, "while": [1, 15, 27, 28, 31, 34, 36, 37], "timeout": [1, 5, 11, 17, 21, 36, 37], "60": 1, "continu": [1, 20, 31, 33], "No": [1, 17, 21, 22, 29, 33], "fd": 1, "minut": [1, 21], "ok": [1, 20, 22, 30, 38], "try": [1, 4, 5, 9, 11, 15, 17, 21, 22, 30, 32, 33, 34, 36], "operationalerror": [1, 16, 17, 19, 21, 36], "were": [1, 11, 38], "panick": 1, "logger": [1, 5, 20, 33], "we": [1, 4, 10, 15, 30, 31, 33], "our": 1, "sy": [1, 21, 22], "add_read": 1, "ev": 1, "event": [1, 5, 37], "get_event_loop": 1, "wait_for": 1, "timeouterror": 1, "guess": [1, 15], "kind": 2, "aspect": 2, "bound": [2, 15, 31, 32], "better": [2, 4, 7, 22, 36], "prepar": [2, 3, 4, 5, 7, 11, 15, 20, 28, 33, 35, 36], "reduc": [2, 5, 15, 21, 36], "memori": [2, 15, 17, 36], "footprint": 2, "stricter": 2, "definit": [2, 9, 10, 15, 28, 32], "adapt": [2, 3, 5, 9, 11, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 27, 29, 36], "partial": [2, 9, 10, 15, 26], "dataset": 2, "everydai": 2, "manipul": [2, 16, 18, 22, 26, 28, 31, 35], "style": [2, 15, 24, 26, 33], "support": [2, 3, 6, 7, 8, 11, 15, 16, 17, 18, 20, 22, 23, 24, 25, 26, 28, 29, 31, 32, 35, 36, 37], "strategi": 2, "packag": [2, 5, 16, 18, 21, 22, 25, 30, 32, 35, 36, 38], "async": [2, 3, 4, 5, 11, 13, 14, 16, 18, 20, 21, 23, 25, 27, 28, 33, 34, 36, 37], "prefix": [2, 36], "conjunct": [2, 14], "storag": 2, "clientcursor": [2, 18, 28, 36], "cient": 2, "servercursor": [2, 4, 11, 18, 36], "rawcursor": [2, 18], "cursor_factori": [2, 11, 14, 15, 19, 28, 36], "produc": [2, 8, 9, 15, 27, 33], "pattern": [2, 4, 5, 15, 16, 21, 27, 28, 34], "repli": 2, "transfer": 2, "sibl": 2, "scalabl": 2, "transmit": [2, 4, 31], "iter": [2, 11, 13, 15, 21, 24, 27, 32, 34, 36], "row": [2, 3, 4, 11, 13, 14, 15, 18, 19, 28, 29, 32, 34, 35, 36], "quick": 2, "downsid": 2, "entir": [2, 15, 21, 33], "proport": 2, "hold": [2, 15, 21, 25, 32], "suitabl": [2, 11, 24, 27, 32], "reason": [2, 5, 15, 24, 26, 31, 33], "small": [2, 4, 9], "previous": [2, 4, 11, 22, 33], "separ": [2, 5, 10, 15, 16, 21, 24, 28, 30, 31, 37], "parametris": 2, "build": [2, 10, 15, 22, 30, 36, 38], "featur": [2, 4, 11, 15, 17, 19, 20, 22, 31, 32, 33, 35, 38], "optim": [2, 24], "particular": [2, 33], "languag": [2, 35], "descript": [2, 7, 15, 18, 22, 23, 36], "problem": [2, 15, 17, 20, 24, 26, 27, 28, 31, 33, 36], "asyncclientcursor": [2, 15], "merg": [2, 12, 15, 24, 28, 31, 32], "parametr": [2, 8, 15, 28], "updat": [2, 10, 15, 16, 28, 30, 33, 38], "delet": [2, 28, 36, 38], "behaviour": [2, 4, 5, 11, 14, 15, 21, 25, 26, 27, 28, 32, 33, 34, 36], "could": [2, 9, 16, 17, 26, 27, 28, 31, 33], "port": [2, 12, 16, 20, 28, 36], "easili": [2, 31], "greater": [2, 5, 6, 20, 21, 26, 28], "flexibl": [2, 28], "tabl": [2, 4, 8, 13, 15, 17, 24, 28, 29, 31, 32, 33, 34], "init": [2, 21, 36], "dsn": [2, 7, 20, 28, 34], "idl": [2, 5, 11, 15, 20, 21, 22, 33, 37], "piro": [2, 12], "0x7fd977ae2880": 2, "off": [2, 22], "especi": [2, 4, 5, 13, 15, 26, 28, 32], "wide": 2, "field": [2, 7, 8, 17, 20, 22, 23, 24, 26, 27, 28, 31], "snippet": [2, 24], "concept": [2, 5], "portal": [2, 36], "necessarili": [2, 17], "first": [2, 5, 6, 11, 15, 21, 23, 27, 28, 33, 36, 37], "few": [2, 5, 9, 11, 12, 16, 17, 20, 21, 23, 25, 28, 31, 32, 33, 34], "track": 2, "resourc": [2, 5, 6, 11, 15, 17, 21, 28, 33, 34], "asyncservercursor": [2, 11, 15], "behind": [2, 5], "scene": 2, "fetch": [2, 4, 7, 8, 11, 15, 23, 25, 26, 28, 32, 34, 36], "move": [2, 15, 30], "scroll": [2, 15, 36], "larger": [2, 21, 26], "fit": 2, "huge": 2, "declar": [2, 6, 7, 15, 31, 32, 37], "give": [2, 21, 27], "good": [2, 20], "idea": [2, 5], "reffunc": 2, "refcursor": 2, "AS": [2, 8, 26, 31, 32], "begin": [2, 4, 11, 13, 20, 22, 33, 36], "open": [2, 4, 5, 13, 14, 15, 21, 27, 33, 34, 36, 37], "FOR": 2, "col": 2, "end": [2, 4, 5, 11, 15, 25, 27, 28, 30, 33, 34], "plpgsql": 2, "curnam": 2, "skip": [2, 4], "fetchmani": [2, 15, 34], "asyncrawcursor": [2, 15], "nativ": [2, 32], "etc": [2, 16, 17, 21, 32], "unmodifi": 2, "reli": [2, 5, 37], "deal": [2, 22, 23, 26, 33, 34], "complex": [2, 4, 23], "insid": [2, 11, 27, 28, 31, 33], "dollar": 2, "elsewher": [2, 4], "accept": [2, 5, 7, 11, 12, 21, 26, 28, 31], "posit": [2, 15, 21, 23, 24, 28, 31], "tupl": [2, 7, 8, 9, 10, 11, 13, 15, 20, 23, 25, 26, 27, 29, 31, 32, 34, 36], "dictionari": [2, 7, 8, 12, 23, 26, 31, 32], "There": [2, 4, 17, 22, 28, 33], "assert": 2, "familiaris": 3, "yourself": [3, 27], "section": [3, 18, 29, 36], "concurr": [3, 4, 5, 11, 21, 33, 34, 35], "asynchron": [3, 11, 13, 14, 19, 20, 28, 29, 35, 36], "interrupt": [3, 5, 11, 27, 36], "gevent": [3, 11, 36], "messag": [3, 5, 11, 15, 20, 22, 30, 33, 36], "notif": [3, 11, 14, 18, 36], "detect": [3, 36], "disconnect": [3, 17], "static": [3, 5, 7, 9, 21, 23, 28, 31, 35], "pydant": 3, "model": [3, 14, 33], "liter": [3, 9, 24, 31, 32, 36], "startup": 3, "life": [3, 10, 34], "cycl": [3, 10, 30, 34], "null": [3, 8, 18, 24, 27, 28, 37], "qualiti": 3, "log": [3, 21, 36], "stat": [3, 21], "side": [3, 4, 9, 11, 14, 15, 17, 26, 29, 31, 35, 36], "bind": [3, 4, 15, 22, 29, 31, 35, 36], "raw": [3, 7, 15, 36], "configur": [3, 5, 8, 9, 10, 11, 13, 17, 19, 21, 22, 25, 26, 28, 31, 32, 34, 35], "custom": [3, 7, 9, 10, 11, 13, 28, 32], "xml": 3, "numer": [3, 9, 17, 20, 26], "float": [3, 11, 21, 26, 31, 36], "infin": [3, 26, 29], "date": [3, 8, 9, 24, 27, 29, 31, 32], "dumper": [3, 9, 11, 18, 25, 27, 31, 32, 36], "loader": [3, 9, 11, 18, 25, 26, 28, 31, 32, 36], "pgbouncer": [3, 5, 20, 33, 36], "pipelin": [3, 11, 15, 17, 18, 22, 35, 36], "flow": 3, "synchron": [3, 11, 21], "applic": [4, 5, 8, 21, 26, 30, 33], "without": [4, 5, 8, 10, 13, 15, 16, 21, 23, 26, 30, 34], "advantag": [4, 26, 28], "sinc": [4, 11, 16, 32], "multipl": [4, 5, 16, 24, 29, 36], "singl": [4, 11, 12, 15, 17, 24, 26, 28, 31, 34], "network": [4, 5, 22, 29, 36], "roundtrip": [4, 15], "signific": 4, "boost": [4, 27], "distant": 4, "latenc": [4, 5], "ping": [4, 22], "being": [4, 5, 21, 33], "rapid": 4, "benefit": 4, "trip": 4, "300": [4, 21, 26, 36], "m": [4, 26], "awai": [4, 31], "30": [4, 21, 26, 28], "second": [4, 8, 20, 21, 26, 27, 31], "alon": [4, 15, 27], "spend": [4, 33], "littl": 4, "buffer": [4, 13, 31], "flush": 4, "establish": [4, 5, 10, 11, 14, 19, 22], "extend": [4, 9, 10, 16, 25, 28, 36], "detail": [4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 24, 25, 26, 27, 28, 31, 32, 33, 34], "around": [4, 21, 22, 27, 28, 36], "understand": 4, "closer": 4, "tell": [4, 9], "far": [4, 27], "readyforqueri": [4, 22], "mytabl": [4, 17, 25, 26], "group": [4, 20, 33, 36], "direct": [4, 28, 35], "parsecomplet": [4, 22], "bindcomplet": [4, 22], "nodata": [4, 17, 22], "commandcomplet": [4, 22], "id": [4, 8, 11, 14, 15, 20, 24, 26, 28, 31, 33, 34], "rowdescript": [4, 22], "datarow": [4, 22], "consecut": 4, "pai": [4, 5, 33], "overhead": 4, "four": 4, "leg": 4, "combin": 4, "respons": [4, 22, 34], "batch": [4, 15, 24, 28, 36], "abov": [4, 5, 6, 8, 20, 27, 30, 33, 34], "enter": [4, 5, 21, 33, 34, 36], "yield": [4, 11, 21], "At": [4, 5, 8, 11, 21, 22], "resum": 4, "within": [4, 5, 11, 20, 21, 32, 34, 36], "executemani": [4, 15, 24, 34, 36], "othert": 4, "world": [4, 27], "abort": [4, 17, 21, 22, 33], "subsequ": 4, "queue": [4, 5, 21, 37], "next": [4, 15, 38], "pipelineabort": [4, 17], "includ": [4, 17, 20, 22, 24, 25, 26, 28, 30, 31, 32, 33, 36, 38], "sens": [4, 9], "job": [4, 5, 21, 38], "intern": [4, 17, 20, 21, 22, 33, 36, 37], "possibli": [4, 37], "nest": [4, 7, 11, 14, 20, 28, 32], "issu": [4, 8, 36], "reset": [4, 5, 21, 36], "full": [4, 5, 21], "wrap": [4, 11, 15, 18, 24, 25, 26, 28, 33], "implicit": [4, 28, 33, 36, 37], "failur": [4, 17, 20, 33, 36, 37], "invalid": [4, 11, 17, 23, 24, 36], "propag": [4, 33, 36], "p": [4, 8, 11, 22, 38], "no_such_t": 4, "three": [4, 11, 27, 31, 33], "undefinedt": [4, 17], "relat": [4, 15, 17, 18, 21, 31, 34, 35, 36], "discard": [4, 5, 21, 27, 32, 33], "item": [4, 15, 20, 24, 32], "exact": 4, "somewhat": [4, 24], "arbitrari": [4, 8, 21], "appli": [4, 13, 16, 21, 26, 27], "atom": [4, 33], "experiment": [4, 15, 16, 32], "Its": [4, 13, 19, 21], "condit": [4, 6, 17, 33, 37], "hasn": 4, "explor": 4, "natur": 4, "inher": 4, "gain": [4, 31], "experi": [4, 28], "feedback": [4, 32], "welcom": 4, "bug": 4, "shortcom": [4, 11], "forc": [4, 11, 15, 22], "u": 4, "must": [4, 6, 10, 11, 13, 15, 16, 21, 23, 24, 27, 28, 30, 31, 33], "libpq": [4, 6, 11, 15, 18, 28, 30, 35, 36, 38], "higher": [4, 6], "has_pipelin": [4, 20], "capabl": [4, 6, 11, 18, 19, 26, 36], "librari": [4, 19, 20, 22, 25, 26, 30, 32, 36], "rel": [5, 15, 24], "explain": [5, 11, 20, 29, 33], "connectionpool": [5, 8, 18, 37], "api": [5, 15, 19, 34, 35], "distribut": [5, 14, 21, 30, 32, 33, 36], "pip": [5, 16, 21, 22, 30], "instal": [5, 16, 21, 22, 29, 32, 35, 36, 38], "psycopg_pool": [5, 18, 30, 35], "somewher": [5, 13, 24], "roll": [5, 11, 20, 27, 33, 34], "releas": [5, 15, 30, 33], "amount": [5, 11, 21], "min_siz": [5, 21, 37], "max_siz": [5, 21, 37], "readi": [5, 7, 11, 21, 30], "serv": [5, 21], "caller": [5, 25, 33], "soon": [5, 11, 21, 33], "asyncconnectionpool": [5, 18, 37], "yet": [5, 8, 17, 20, 31, 33], "misconfigur": 5, "pooltimeout": [5, 21], "lifetim": [5, 15, 21], "environ": [5, 11, 20, 21, 30, 36], "well": [5, 10, 14, 32], "acquir": [5, 21], "use_th": 5, "spike": 5, "background": [5, 21], "conninfo": [5, 11, 14, 16, 18, 19, 21, 22, 35], "kwarg": [5, 8, 9, 11, 12, 14, 15, 16, 19, 21, 24, 37], "connection_class": [5, 8, 21], "constructor": [5, 7, 8, 9, 10, 13, 20, 21, 37], "someon": [5, 33], "typic": [5, 15, 23, 25, 31], "becom": [5, 21, 37], "finish": [5, 13, 15, 22, 23, 33], "stare": 5, "cleanup": 5, "along": 5, "max_lifetim": [5, 21, 37], "creation": [5, 15, 21, 37], "final": [5, 30, 34], "mandatori": [5, 21], "safest": 5, "db": [5, 12, 16, 18, 19, 26, 34, 35], "py": [5, 30, 38], "my_funct": 5, "shutdown": [5, 36], "fastapi": 5, "fals": [5, 6, 11, 14, 15, 19, 20, 21, 26, 28, 32, 37], "app": 5, "on_ev": 5, "open_pool": 5, "close_pool": 5, "prove": 5, "futur": [5, 16, 21, 31, 32], "explicitli": [5, 6, 9, 11, 15, 21, 28, 31, 33], "deprec": [5, 11, 16], "remov": [5, 11, 16, 30, 37], "deploi": 5, "hand": [5, 17, 21, 28], "balanc": 5, "extern": [5, 17], "switch": [5, 11], "introduc": [5, 17, 36], "nullconnectionpool": [5, 21, 37], "beforehand": [5, 30], "kept": [5, 11], "conveni": [5, 24, 34], "regul": 5, "given": [5, 10, 11, 15, 28], "further": [5, 6, 11, 13, 15, 16, 21, 27, 30, 33], "queu": [5, 21], "throttl": 5, "max_wait": [5, 21], "respect": [5, 16, 31, 36, 37], "paid": 5, "involv": 5, "dynam": [5, 8, 15, 16, 24, 25, 27, 28, 30, 31], "attempt": [5, 17, 21, 22, 32, 36, 37], "exponenti": [5, 21, 37], "backoff": [5, 21, 37], "increas": 5, "maximum": [5, 11, 21], "reconnect_timeout": [5, 21], "reach": 5, "reconnect_fail": [5, 21, 37], "alert": 5, "infrastructur": 5, "restart": [5, 21], "alwai": [5, 11, 20, 21, 26, 31], "scenario": 5, "domin": 5, "analysi": 5, "grow": [5, 21], "decreas": 5, "eventu": [5, 11, 16, 21, 24, 33], "unus": [5, 15, 21], "max_idl": [5, 21], "big": 5, "question": 5, "who": [5, 8, 31, 35], "imagin": [5, 11], "get_stat": [5, 21], "monitor": 5, "tune": 5, "runtim": [5, 8, 19, 21, 31], "resiz": [5, 21], "held": [5, 33], "idle_session_timeout": 5, "kill": 5, "haven": 5, "verifi": [5, 6, 17, 19, 21, 30], "cours": [5, 26, 32], "impli": [5, 26], "check_connect": [5, 21, 37], "kei": [5, 9, 11, 15, 17, 20, 23, 25, 26, 32, 34], "least": [5, 6, 10, 30], "info": [5, 11, 14, 15, 19, 20, 22, 25, 26, 27, 32], "script": [5, 33, 36, 38], "threadpoolexecutor": 5, "as_complet": 5, "basicconfig": 5, "asctim": 5, "levelnam": 5, "getlogg": 5, "setlevel": 5, "squar": 5, "sleep": 5, "rec": [5, 8, 15, 32], "max_work": 5, "executor": 5, "submit": 5, "rang": [5, 14, 17, 25, 28, 29, 36], "2023": 5, "09": [5, 17, 22], "20": [5, 17, 24, 26, 27, 28, 30, 31, 32], "11": [5, 22, 31, 37], "02": [5, 17, 22], "39": [5, 17, 22], "718": 5, "720": 5, "ad": [5, 11, 15, 17, 21, 24, 26, 33], "root": [5, 17], "721": 5, "722": 5, "40": [5, 17, 27], "724": 5, "725": [5, 36], "726": 5, "41": 5, "728": 5, "9": [5, 17, 20, 22, 26, 30], "729": 5, "730": 5, "remain": [5, 15, 20, 21, 33], "unchang": [5, 16], "constitut": 5, "stabl": [5, 16, 36, 38], "pop_stat": [5, 21], "latter": [5, 11, 19, 26, 36], "counter": [5, 21], "graphit": 5, "prometheu": 5, "rigid": 5, "metric": [5, 21], "pool_min": 5, "pool_max": 5, "pool_siz": 5, "pool_avail": 5, "requests_wait": 5, "usage_m": 5, "total": [5, 32, 36], "outsid": [5, 11, 20, 28, 33], "requests_num": 5, "requests_queu": 5, "wasn": [5, 6, 11], "requests_wait_m": 5, "requests_error": 5, "returns_bad": 5, "bad": [5, 8, 17, 20, 22, 31, 36], "connections_num": 5, "connections_m": 5, "spent": 5, "connections_error": 5, "connections_lost": 5, "identifi": [5, 8, 9, 20, 21, 24, 25, 27, 28, 31, 33], "plan": [6, 36], "optimis": [6, 10, 15], "prepare_threshold": [6, 11, 14, 19, 36], "prepared_max": [6, 11], "associ": [6, 15, 32], "freed": 6, "regardless": [6, 34], "none": [6, 7, 9, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 32, 33, 36], "met": [6, 30], "disabl": [6, 11, 22, 26, 36], "plenti": 6, "pqsendprepar": 6, "pqsendqueryprepar": 6, "middlewar": [6, 11, 33], "caveat": 6, "22": [6, 14, 17], "newer": [6, 15, 20], "max_prepared_stat": 6, "17": [6, 11, 20, 22], "has_pgbouncer_prepar": [6, 20], "suit": [7, 32], "programm": [7, 17], "dict_row": [7, 8, 18, 23, 28], "row_factori": [7, 8, 11, 14, 15, 19, 23, 28], "john": [7, 8, 23], "33": 7, "ag": [7, 23], "overrid": [7, 10, 11, 12, 15, 21, 25, 26], "namedtuple_row": [7, 18, 23, 28], "class_row": [7, 8, 18, 23], "args_row": [7, 18, 23], "dataclass": [7, 23], "person": [7, 8, 23, 33], "str": [7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 31, 32, 36], "int": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 27, 28, 32], "weight": 7, "annot": [7, 8, 21, 36, 37], "executeani": 7, "dict": [7, 8, 12, 16, 20, 21, 26, 28, 32, 36], "callabl": [7, 11, 21, 23, 25, 32], "maker": 7, "role": [7, 17, 25, 26], "inspect": [7, 11, 17, 21, 23, 36], "properti": [7, 9, 11, 15, 20, 33], "repeatedli": [7, 36], "column": [7, 15, 18, 23, 27, 28, 31, 32], "sanitis": [7, 10], "variabl": [7, 11, 20, 21, 24, 30, 31, 32, 36], "formal": [7, 18], "repres": [7, 9, 10, 11, 17, 20, 22, 23, 24, 25, 26, 28, 32, 33], "rowfactori": [7, 11, 14, 15, 19, 23], "rowmak": [7, 23], "dictrowfactori": 7, "__init__": [7, 8], "__call__": [7, 23], "zip": [7, 38], "dict_row_factori": 7, "make_row": 7, "These": [7, 10, 13, 14, 15, 17, 22, 23, 26, 33], "first_nam": [7, 8, 23], "last_nam": [7, 8, 23, 31], "sourc": [8, 17, 24, 27, 31, 38], "pep": [8, 15, 24, 36], "0484": 8, "hint": [8, 36], "mypi": [8, 23, 32], "correct": [8, 30, 31, 34, 36, 37], "fetchal": [8, 15, 34], "unknown": [8, 19, 20, 22, 25, 26, 36], "plumb": 8, "practic": 8, "accordingli": 8, "dconn": 8, "dcur": 8, "drec": 8, "moment": [8, 21], "consist": [8, 16, 36], "agre": 8, "dictrow": [8, 23], "reveal_typ": 8, "myconnect": 8, "arg": [8, 9, 24], "enforc": [8, 37], "incompat": 8, "basemodel": 8, "dob": 8, "fetch_person": 8, "2000": [8, 24], "01": [8, 24, 26, 34], "jane": 8, "white": 8, "keyerror": [8, 17, 25], "born": 8, "input": [8, 12, 15, 16, 24, 26, 27, 31, 36], "675": [8, 15, 24, 36], "come": [8, 17, 20, 24, 26, 27, 31, 33], "express": [8, 24, 26, 31, 34], "done": 8, "get_record": 8, "my_tabl": [8, 24, 33], "compos": [8, 11, 15, 24, 27, 28], "count_record": 8, "count": [8, 33], "analyz": 8, "pyre": 8, "checker": [8, 31], "cl": [9, 10, 16, 23, 25, 26], "inaccur": 9, "everyth": [9, 23], "union": [9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26], "bytearrai": [9, 10, 26, 36], "memoryview": [9, 10, 26, 36], "undefin": 9, "scratch": 9, "car": 9, "burn": 9, "cake": 9, "me": 9, "didn": [9, 15, 30], "known": [9, 25, 31, 32], "infer": 9, "cast": [9, 13, 24, 26, 27, 29, 36], "registri": [9, 10, 14, 25], "pyformat": [9, 10, 22, 24], "dumperkei": [9, 10], "defin": [9, 10, 11, 15, 16, 17, 21, 23, 26, 31, 32, 36], "timestamptz": [9, 13, 26], "timestamp": [9, 20, 26, 28], "tzinfo": [9, 26, 36], "int2": [9, 26], "int4": [9, 13, 14, 19, 25, 26, 27], "int8": [9, 14], "overflow": [9, 28, 36], "smaller": [9, 26], "again": [9, 21, 22, 33], "get_dump": [9, 10], "itself": [9, 15, 17, 28, 30, 31, 34], "reus": [9, 36], "explan": [9, 10, 11, 16], "baseconnect": 9, "overview": [10, 14], "abstract": [10, 13, 18, 24, 35], "member": [10, 11, 26], "pq": [10, 11, 15, 17, 18, 20, 24, 30, 35, 36, 38], "won": [10, 24, 26], "specialis": [10, 14, 25], "enum": [10, 20, 22, 29, 36, 38], "choos": [10, 11, 13, 26, 30, 31, 36], "underli": [10, 11, 22, 25], "parent": [10, 15, 21], "child": 10, "wider": [10, 28, 33], "initialis": [10, 32], "adptersmap": 10, "empti": [10, 13, 26, 28, 32, 36, 37], "cheap": 10, "chosen": [10, 11, 22, 31], "lazi": 10, "fulli": [10, 27], "qualifi": [10, 20, 24, 33], "uuid": [10, 29], "get_dumper_by_oid": 10, "set_typ": [10, 13, 27, 36], "loar": 10, "programmingerror": [10, 11, 12, 17, 19, 36], "get_load": 10, "assum": 10, "wrapper": [11, 14, 17, 18, 20, 25, 26, 32, 35], "compar": [11, 33, 36], "dbapi": [11, 15, 17, 19, 20, 28, 33], "compliant": [11, 15], "classic": [11, 15], "eventlet": 11, "classmethod": [11, 14, 16, 20, 25], "bool": [11, 14, 15, 19, 20, 21, 26, 32], "5": [11, 14, 17, 19, 20, 21, 22], "url": 11, "pair": [11, 21, 26, 32], "tuple_row": [11, 14, 15, 18, 23], "special": [11, 20, 26], "alias": [11, 36, 37], "clean": [11, 21], "scrollabl": [11, 15], "withhold": [11, 15], "server_cursor_factori": 11, "param": [11, 12, 15, 16], "disallow": [11, 15], "innermost": [11, 33], "outermost": [11, 33], "pend": [11, 20, 27], "savepoint_nam": [11, 20], "force_rollback": 11, "savepoint": [11, 17, 20, 33, 36], "op": [11, 21, 36], "syntax": [11, 15, 17, 26, 28, 31], "tx": [11, 20], "writabl": [11, 15], "set_autocommit": [11, 36], "setter": 11, "characterist": [11, 29], "isolation_level": [11, 20, 33], "isol": [11, 20, 33], "default_transaction_isol": [11, 33], "set_isolation_level": [11, 33], "isolationlevel": [11, 20], "read_onli": [11, 28, 33, 36], "default_transaction_read_onli": [11, 28], "set_read_onli": 11, "deferr": [11, 33, 36], "default_transaction_deferr": 11, "set_deferr": 11, "pgconn": [11, 14, 17, 20, 22, 36], "low": [11, 15, 22], "connectioninfo": [11, 14, 20, 28, 36], "old": [11, 22], "cool": 11, "cancel_saf": [11, 20, 36], "leverag": 11, "secur": [11, 24], "improv": [11, 27, 33, 36], "older": [11, 14], "fall": 11, "has_cancel_saf": [11, 20], "legaci": [11, 20, 26], "pqcancel": [11, 20, 22], "insecur": 11, "origin": 11, "therefor": 11, "stop_aft": [11, 36], "actual": [11, 22, 33], "arriv": 11, "packet": 11, "remove_notify_handl": 11, "unregist": [11, 26], "remove_notice_handl": 11, "descriptor": [11, 17], "phase": [11, 14, 18, 22, 29, 36], "introductori": 11, "xid": [11, 20, 33], "format_id": [11, 20], "gtrid": [11, 20], "bqual": [11, 20], "tpc_": 11, "constraint": [11, 17], "tpc_begin": [11, 33], "tpc": 11, "noth": 11, "transaction_statu": [11, 15, 20], "furthermor": [11, 26, 28], "plain": 11, "tpc_recov": [11, 20, 33], "tpc_prepar": [11, 33], "tpc_commit": [11, 33], "tpc_rollback": [11, 33], "prior": 11, "particip": 11, "recoveri": [11, 33], "usabl": [11, 22, 36], "algorithm": [11, 22], "jdbc": [11, 33], "driver": [11, 33], "xa": [11, 20, 33], "tripl": 11, "unpack": [11, 20, 38], "correctli": [11, 21, 36], "extra": [11, 21, 22, 30], "owner": [11, 20], "popul": [11, 14, 25], "pg_prepared_xact": 11, "inspir": [11, 15, 33], "coroutin": [11, 15, 21, 25], "match": [11, 15, 26, 27], "asyncrowfactori": [11, 14, 15, 23], "resolv": [11, 16, 36], "domain": [11, 36], "care": [11, 31, 34], "quirk": 11, "asynciter": [11, 13, 15, 21], "asyncpipelin": [11, 20], "asynctransact": [11, 20], "asyncgener": 11, "util": [12, 18, 22, 35], "conninfo_to_dict": [12, 16, 18], "jeff": 12, "com": [12, 16], "host": [12, 16, 20, 30, 36], "make_conninfo": [12, 18], "5432": 12, "asynccopi": [13, 15, 27], "present": [13, 16, 24, 28, 31, 35], "exchang": 13, "destin": [13, 27], "filewrit": 13, "TO": [13, 15, 20, 26, 28, 29, 35, 36], "write_row": [13, 27], "unpars": [13, 27, 31, 33], "equival": [13, 15, 16, 26, 31, 32, 33, 34], "read_row": [13, 27], "overcom": 13, "lack": [13, 36], "metadata": 13, "helper": [13, 15, 25], "written": [13, 33], "libpqwrit": 13, "offlin": 13, "asyncwrit": [13, 15], "exc": 13, "baseexcept": [13, 34], "io": 13, "save": [13, 26, 38], "target": [13, 15, 16, 24, 27, 33], "pgcopi": 13, "wb": [13, 27], "semant": [13, 15, 28], "asynclibpqwrit": 13, "front": 14, "backend": [14, 20], "tweak": [14, 21], "backend_pid": [14, 20], "show": [14, 26, 34, 36], "session_id": 14, "lieu": 14, "pg_terminate_backend": 14, "miss": [14, 17, 36], "slightli": 14, "changefe": [14, 15], "push": [14, 38], "alia": [14, 19], "crdbconnect": 14, "asynccrdbconnect": 14, "is_crdb": 14, "crdbconnectioninfo": 14, "vendor": [14, 20], "server_vers": [14, 20, 22], "21": [14, 17], "10": [14, 20, 21, 22, 24, 26, 27, 28, 30, 31, 34], "210210": 14, "among": [14, 15, 38], "multirang": [14, 29, 36], "hstore": [14, 29], "geometr": 14, "jsonb": [14, 25, 26], "cidr": [14, 26], "json": [14, 18, 29, 36], "though": [15, 28, 30, 33], "free": [15, 22, 28, 34], "chain": [15, 34], "stringliter": 15, "params_seq": 15, "creativ": [15, 27], "nextset": [15, 28, 36], "bunch": 15, "primari": [15, 34], "taken": [15, 23, 24, 33], "exactli": 15, "append": [15, 20], "break": [15, 31], "rowcount": [15, 36], "cumul": 15, "writer": [15, 18, 36], "materi": 15, "subscrib": 15, "cockroachdb": [15, 18, 35, 36], "bewar": 15, "left": [15, 21, 24, 31, 33, 34, 37], "refus": [15, 33], "chanc": [15, 33], "restor": [15, 36], "contextlib": 15, "particularli": [15, 26, 27, 30], "generate_seri": 15, "10000": 15, "intran": [15, 20, 22, 34], "inerror": [15, 20, 22], "resultset": 15, "alter": [15, 28], "recordset": 15, "arrays": 15, "through": [15, 22, 36], "offset": [15, 26, 36], "absolut": [15, 20, 24], "indexerror": 15, "statu": [15, 20, 22], "tag": [15, 38], "42": [15, 17, 24, 26, 28], "preced": [15, 25, 26], "rownumb": [15, 36], "index": [15, 28, 32, 35], "_queri": 15, "part": [15, 24, 28], "public": [15, 18, 36], "reliabl": [15, 31, 36], "touch": 15, "replac": [15, 16, 21, 24, 34], "problemat": 15, "mogrifi": 15, "literalstr": [15, 24, 36], "NO": 15, "WITH": [15, 17], "alloc": [15, 17, 22], "lock": [15, 17, 33], "procedur": [15, 20, 28, 33], "crete": 15, "steal": [15, 31], "iters": 15, "backward": 15, "boundari": 15, "w": [15, 36], "r": [15, 24, 27, 38], "scheme": 16, "dnspython": 16, "resolve_srv": [16, 18], "srv": 16, "lookup": [16, 17, 25], "rfc": 16, "2782": 16, "comma": [16, 24, 31], "_servic": 16, "_proto": 16, "entri": [16, 26], "insensit": 16, "_get_connection_param": [16, 18], "srvcognizantconnect": 16, "db1": 16, "cnn": [16, 26], "_postgr": 16, "_tcp": 16, "org": 16, "resolve_srv_async": [16, 18], "hook": 16, "anymor": [16, 17], "hostnam": 16, "address": [16, 20, 26, 28, 36], "inconsist": 16, "length": 16, "doc": [16, 38], "unneed": 16, "asyncdnsconnect": 16, "examin": 17, "complianc": 17, "__": [17, 19, 24], "interfaceerror": [17, 19], "integrityerror": [17, 19], "internalerror": [17, 19], "notsupportederror": [17, 19, 20], "catch": 17, "picklabl": 17, "went": 17, "wrong": [17, 31, 33, 36], "needs_password": [17, 22], "used_password": [17, 22], "divis": 17, "zero": [17, 21, 26], "under": 17, "unexpect": [17, 26], "occur": [17, 36], "integr": [17, 34], "foreign": [17, 31], "connectiontimeout": 17, "connect_timeout": 17, "pqresulterrorfield": [17, 22], "pg_diag_sever": 17, "column_nam": [17, 22], "constraint_nam": [17, 22], "datatype_nam": [17, 22], "internal_posit": [17, 22], "internal_queri": [17, 22], "message_detail": [17, 22], "message_hint": [17, 22], "schema_nam": [17, 22], "severity_nonloc": [17, 22], "source_fil": [17, 22], "source_funct": [17, 22], "source_lin": [17, 22], "statement_posit": [17, 22], "table_nam": [17, 22, 24, 27], "letter": [17, 26], "idiomat": 17, "IN": [17, 26, 29], "exclus": 17, "nowait": 17, "locknotavail": 17, "6": [17, 22, 30], "15": [17, 20, 34], "camelcas": 17, "22012": 17, "division_by_zero": 17, "divisionbyzero": 17, "disambigu": 17, "clash": 17, "below": [17, 21], "constant": [17, 22, 24, 28, 36], "undefined_t": 17, "55p03": 17, "02000": 17, "02001": 17, "noadditionaldynamicresultsetsreturn": 17, "03": 17, "Not": 17, "03000": 17, "sqlstatementnotyetcomplet": 17, "08": [17, 26], "08000": 17, "connectionexcept": 17, "08001": 17, "sqlclientunabletoestablishsqlconnect": 17, "08003": 17, "connectiondoesnotexist": 17, "08004": 17, "sqlserverrejectedestablishmentofsqlconnect": 17, "08006": 17, "connectionfailur": 17, "08007": 17, "transactionresolutionunknown": 17, "08p01": 17, "protocolviol": 17, "trigger": [17, 38], "action": [17, 33, 38], "09000": 17, "triggeredactionexcept": 17, "0a": 17, "0a000": 17, "featurenotsupport": 17, "0b": 17, "0b000": 17, "invalidtransactioniniti": 17, "0f": 17, "locat": 17, "0f000": 17, "locatorexcept": 17, "0f001": 17, "invalidlocatorspecif": 17, "0l": 17, "grantor": 17, "0l000": 17, "invalidgrantor": 17, "0lp01": 17, "invalidgrantoper": 17, "0p": 17, "0p000": 17, "invalidrolespecif": 17, "0z": 17, "0z000": 17, "diagnosticsexcept": 17, "0z002": 17, "stackeddiagnosticsaccessedwithoutactivehandl": 17, "20000": 17, "casenotfound": 17, "cardin": 17, "violat": 17, "21000": 17, "cardinalityviol": 17, "22000": 17, "dataexcept": 17, "22001": 17, "stringdatarighttrunc": 17, "22002": 17, "nullvaluenoindicatorparamet": 17, "22003": 17, "numericvalueoutofrang": 17, "22004": 17, "nullvaluenotallow": 17, "22005": 17, "errorinassign": 17, "22007": 17, "invaliddatetimeformat": 17, "22008": 17, "datetimefieldoverflow": 17, "22009": 17, "invalidtimezonedisplacementvalu": 17, "2200b": 17, "escapecharacterconflict": 17, "2200c": 17, "invaliduseofescapecharact": 17, "2200d": 17, "invalidescapeoctet": 17, "2200f": 17, "zerolengthcharacterstr": 17, "2200g": 17, "mostspecifictypemismatch": 17, "2200h": 17, "sequencegeneratorlimitexceed": 17, "2200l": 17, "notanxmldocu": 17, "2200m": 17, "invalidxmldocu": 17, "2200n": 17, "invalidxmlcont": 17, "2200": 17, "invalidxmlcom": 17, "2200t": 17, "invalidxmlprocessinginstruct": 17, "22010": 17, "invalidindicatorparametervalu": 17, "22011": 17, "substringerror": 17, "22013": 17, "invalidprecedingorfollowings": 17, "22014": 17, "invalidargumentforntilefunct": 17, "22015": 17, "intervalfieldoverflow": 17, "22016": 17, "invalidargumentfornthvaluefunct": 17, "22018": 17, "invalidcharactervalueforcast": 17, "22019": 17, "invalidescapecharact": 17, "2201b": 17, "invalidregularexpress": 17, "2201e": 17, "invalidargumentforlogarithm": 17, "2201f": 17, "invalidargumentforpowerfunct": 17, "2201g": 17, "invalidargumentforwidthbucketfunct": 17, "2201w": 17, "invalidrowcountinlimitclaus": 17, "2201x": 17, "invalidrowcountinresultoffsetclaus": 17, "22021": 17, "characternotinrepertoir": 17, "22022": 17, "indicatoroverflow": 17, "22023": 17, "invalidparametervalu": 17, "22024": 17, "unterminatedcstr": 17, "22025": 17, "invalidescapesequ": 17, "22026": 17, "stringdatalengthmismatch": 17, "22027": 17, "trimerror": 17, "2202e": 17, "arraysubscripterror": 17, "2202g": 17, "invalidtablesamplerepeat": 17, "2202h": 17, "invalidtablesampleargu": 17, "22030": 17, "duplicatejsonobjectkeyvalu": 17, "22031": 17, "invalidargumentforsqljsondatetimefunct": 17, "22032": 17, "invalidjsontext": 17, "22033": 17, "invalidsqljsonsubscript": 17, "22034": 17, "morethanonesqljsonitem": 17, "22035": 17, "nosqljsonitem": 17, "22036": 17, "nonnumericsqljsonitem": 17, "22037": 17, "nonuniquekeysinajsonobject": 17, "22038": 17, "singletonsqljsonitemrequir": 17, "22039": 17, "sqljsonarraynotfound": 17, "2203a": 17, "sqljsonmembernotfound": 17, "2203b": 17, "sqljsonnumbernotfound": 17, "2203c": 17, "sqljsonobjectnotfound": 17, "2203d": 17, "toomanyjsonarrayel": 17, "2203e": 17, "toomanyjsonobjectmemb": 17, "2203f": 17, "sqljsonscalarrequir": 17, "2203g": 17, "sqljsonitemcannotbecasttotargettyp": 17, "22p01": 17, "floatingpointexcept": 17, "22p02": 17, "invalidtextrepresent": 17, "22p03": 17, "invalidbinaryrepresent": 17, "22p04": 17, "badcopyfileformat": 17, "22p05": 17, "untranslatablecharact": [17, 26], "22p06": 17, "nonstandarduseofescapecharact": 17, "23": [17, 19, 25], "23000": 17, "integrityconstraintviol": 17, "23001": 17, "restrictviol": 17, "23502": 17, "notnullviol": 17, "23503": 17, "foreignkeyviol": 17, "23505": 17, "uniqueviol": 17, "23514": 17, "checkviol": 17, "23p01": 17, "exclusionviol": 17, "24": [17, 26, 27], "24000": 17, "invalidcursorst": 17, "25": [17, 25], "25000": 17, "invalidtransactionst": 17, "25001": 17, "activesqltransact": [17, 28], "25002": 17, "branchtransactionalreadyact": 17, "25003": 17, "inappropriateaccessmodeforbranchtransact": 17, "25004": 17, "inappropriateisolationlevelforbranchtransact": 17, "25005": 17, "noactivesqltransactionforbranchtransact": 17, "25006": 17, "readonlysqltransact": 17, "25007": 17, "schemaanddatastatementmixingnotsupport": 17, "25008": 17, "heldcursorrequiressameisolationlevel": 17, "25p01": 17, "noactivesqltransact": 17, "25p02": 17, "infailedsqltransact": [17, 33], "25p03": 17, "idleintransactionsessiontimeout": 17, "26": 17, "26000": 17, "invalidsqlstatementnam": 17, "27": 17, "27000": 17, "triggereddatachangeviol": 17, "28": [17, 22], "author": [17, 31], "28000": 17, "invalidauthorizationspecif": 17, "28p01": 17, "invalidpassword": 17, "2b": 17, "privileg": 17, "2b000": 17, "dependentprivilegedescriptorsstillexist": 17, "2bp01": 17, "dependentobjectsstillexist": 17, "2d": 17, "2d000": 17, "invalidtransactiontermin": 17, "2f": 17, "routin": 17, "2f000": 17, "sqlroutineexcept": 17, "2f002": 17, "modifyingsqldatanotpermit": 17, "2f003": 17, "prohibitedsqlstatementattempt": 17, "2f004": 17, "readingsqldatanotpermit": 17, "2f005": 17, "functionexecutednoreturnstat": 17, "34": 17, "34000": 17, "invalidcursornam": 17, "38": 17, "38000": 17, "externalroutineexcept": 17, "38001": 17, "containingsqlnotpermit": 17, "38002": 17, "modifyingsqldatanotpermittedext": 17, "38003": 17, "prohibitedsqlstatementattemptedext": 17, "38004": 17, "readingsqldatanotpermittedext": 17, "invoc": 17, "39000": 17, "externalroutineinvocationexcept": 17, "39001": 17, "invalidsqlstatereturn": 17, "39004": 17, "nullvaluenotallowedext": 17, "39p01": 17, "triggerprotocolviol": 17, "39p02": 17, "srfprotocolviol": 17, "39p03": 17, "eventtriggerprotocolviol": 17, "3b": 17, "3b000": 17, "savepointexcept": 17, "3b001": 17, "invalidsavepointspecif": 17, "3d": 17, "catalog": [17, 25], "3d000": 17, "invalidcatalognam": 17, "3f": 17, "schema": [17, 24, 25, 27], "3f000": 17, "invalidschemanam": 17, "40000": 17, "transactionrollback": 17, "40001": 17, "serializationfailur": [17, 33], "40002": 17, "transactionintegrityconstraintviol": 17, "40003": 17, "statementcompletionunknown": 17, "40p01": 17, "deadlockdetect": 17, "42000": 17, "syntaxerrororaccessruleviol": 17, "42501": 17, "insufficientprivileg": 17, "42601": 17, "syntaxerror": [17, 26, 28, 31], "42602": 17, "invalidnam": 17, "42611": 17, "invalidcolumndefinit": 17, "42622": 17, "nametoolong": 17, "42701": 17, "duplicatecolumn": 17, "42702": 17, "ambiguouscolumn": 17, "42703": 17, "undefinedcolumn": 17, "42704": 17, "undefinedobject": 17, "42710": 17, "duplicateobject": 17, "42712": 17, "duplicatealia": 17, "42723": 17, "duplicatefunct": 17, "42725": 17, "ambiguousfunct": 17, "42803": 17, "groupingerror": 17, "42804": 17, "datatypemismatch": 17, "42809": 17, "wrongobjecttyp": 17, "42830": 17, "invalidforeignkei": 17, "42846": 17, "cannotcoerc": 17, "42883": 17, "undefinedfunct": 17, "428c9": 17, "generatedalwai": 17, "42939": 17, "reservednam": 17, "42p01": 17, "42p02": 17, "undefinedparamet": [17, 28], "42p03": 17, "duplicatecursor": 17, "42p04": 17, "duplicatedatabas": 17, "42p05": 17, "duplicatepreparedstat": 17, "42p06": 17, "duplicateschema": 17, "42p07": 17, "duplicatet": 17, "42p08": 17, "ambiguousparamet": 17, "42p09": 17, "ambiguousalia": 17, "42p10": 17, "invalidcolumnrefer": 17, "42p11": 17, "invalidcursordefinit": 17, "42p12": 17, "invaliddatabasedefinit": 17, "42p13": 17, "invalidfunctiondefinit": 17, "42p14": 17, "invalidpreparedstatementdefinit": 17, "42p15": 17, "invalidschemadefinit": 17, "42p16": 17, "invalidtabledefinit": 17, "42p17": 17, "invalidobjectdefinit": 17, "42p18": 17, "indeterminatedatatyp": [17, 28], "42p19": 17, "invalidrecurs": 17, "42p20": 17, "windowingerror": 17, "42p21": 17, "collationmismatch": 17, "42p22": 17, "indeterminatecol": 17, "44": 17, "44000": 17, "withcheckoptionviol": 17, "53": 17, "insuffici": 17, "53000": 17, "insufficientresourc": 17, "53100": 17, "diskful": 17, "53200": 17, "outofmemori": 17, "53300": 17, "toomanyconnect": 17, "53400": 17, "configurationlimitexceed": 17, "54": 17, "exceed": 17, "54000": 17, "programlimitexceed": 17, "54001": 17, "statementtoocomplex": 17, "54011": 17, "toomanycolumn": 17, "54023": 17, "toomanyargu": 17, "55": 17, "prerequisit": [17, 30], "55000": 17, "objectnotinprerequisitest": 17, "55006": 17, "objectinus": 17, "55p02": 17, "cantchangeruntimeparam": 17, "55p04": 17, "unsafenewenumvalueusag": 17, "57": 17, "intervent": 17, "57000": 17, "operatorintervent": 17, "57014": 17, "querycancel": [17, 36], "57p01": 17, "adminshutdown": 17, "57p02": 17, "crashshutdown": 17, "57p03": 17, "cannotconnectnow": 17, "57p04": 17, "databasedrop": 17, "57p05": 17, "idlesessiontimeout": 17, "58": 17, "58000": 17, "systemerror": 17, "58030": 17, "ioerror": 17, "58p01": 17, "undefinedfil": 17, "58p02": 17, "duplicatefil": 17, "72": [17, 36], "snapshot": 17, "72000": 17, "snapshottooold": 17, "f0": 17, "f0000": 17, "configfileerror": 17, "f0001": 17, "lockfileexist": 17, "hv": 17, "med": 17, "hv000": 17, "fdwerror": 17, "hv001": 17, "fdwoutofmemori": 17, "hv002": 17, "fdwdynamicparametervalueneed": 17, "hv004": 17, "fdwinvaliddatatyp": 17, "hv005": 17, "fdwcolumnnamenotfound": 17, "hv006": 17, "fdwinvaliddatatypedescriptor": 17, "hv007": 17, "fdwinvalidcolumnnam": 17, "hv008": 17, "fdwinvalidcolumnnumb": 17, "hv009": 17, "fdwinvaliduseofnullpoint": 17, "hv00a": 17, "fdwinvalidstringformat": 17, "hv00b": 17, "fdwinvalidhandl": 17, "hv00c": 17, "fdwinvalidoptionindex": 17, "hv00d": 17, "fdwinvalidoptionnam": 17, "hv00j": 17, "fdwoptionnamenotfound": 17, "hv00k": 17, "fdwreplyhandl": 17, "hv00l": 17, "fdwunabletocreateexecut": 17, "hv00m": 17, "fdwunabletocreaterepli": 17, "hv00n": 17, "fdwunabletoestablishconnect": 17, "hv00p": 17, "fdwnoschema": 17, "hv00q": 17, "fdwschemanotfound": 17, "hv00r": 17, "fdwtablenotfound": 17, "hv010": 17, "fdwfunctionsequenceerror": 17, "hv014": 17, "fdwtoomanyhandl": 17, "hv021": 17, "fdwinconsistentdescriptorinform": 17, "hv024": 17, "fdwinvalidattributevalu": 17, "hv090": 17, "fdwinvalidstringlengthorbufferlength": 17, "hv091": 17, "fdwinvaliddescriptorfieldidentifi": 17, "p0": 17, "p0000": 17, "plpgsqlerror": 17, "p0001": 17, "raiseexcept": 17, "p0002": 17, "nodatafound": 17, "p0003": 17, "toomanyrow": 17, "p0004": 17, "assertfailur": 17, "xx": 17, "xx000": 17, "internalerror_": 17, "xx001": 17, "datacorrupt": 17, "xx002": 17, "indexcorrupt": 17, "conceptu": 18, "advanc": [18, 28, 35], "topic": [18, 34, 35], "top": [18, 35], "scalar_row": [18, 23, 36], "kwargs_row": [18, 23], "sqlstate": [18, 19, 22, 36], "structur": [18, 23, 28, 32], "enumer": 18, "crdb": [18, 35, 36], "_dn": [18, 35], "encrypt": [19, 22, 36], "password": [19, 20, 22, 28], "has_encrypt_password": [19, 20], "has_hostaddr": [19, 20], "hostadd": 19, "1007": [19, 25], "get_paramet": 20, "pqstatu": [20, 22], "ordinarili": 20, "pqtransactionstatu": [20, 22], "pipeline_statu": 20, "pqpipelinestatu": [20, 22], "pqbackendpid": 20, "pqserververs": 20, "major": 20, "minor": 20, "revis": 20, "digit": 20, "drop": [20, 36, 37], "00": [20, 26, 34], "90305": 20, "100002": 20, "error_messag": [20, 22], "pqerrormessag": 20, "timezon": [20, 26, 28], "zoneinfo": [20, 26, 36], "europ": [20, 26], "rome": [20, 26], "pqhost": 20, "ip": [20, 36], "directori": [20, 38], "unix": 20, "socket": [20, 22], "distinguish": 20, "pqhostaddr": 20, "pqport": 20, "pqdb": 20, "pquser": 20, "pqpass": 20, "line": [20, 26, 28, 30, 38], "pqoption": 20, "parameter_statu": 20, "param_nam": 20, "standard_conforming_str": 20, "pqparameterstatu": 20, "codec": 20, "client_encod": [20, 26, 29, 36], "latin9": [20, 26], "iso8859": 20, "euc_tw": 20, "mule_intern": 20, "sql_ascii": [20, 26, 36], "has_someth": 20, "boolean": [20, 29, 32, 36], "degrad": 20, "gracefulli": [20, 36], "why": [20, 28], "crash": [20, 24, 36], "clear": [20, 22, 31], "13": [20, 22, 26], "encrypt_password": [20, 22], "has_set_trace_flag": 20, "set_trace_flag": [20, 22], "anywai": [20, 21], "7": [20, 22, 26, 30], "type_cod": 20, "display_s": 20, "varchar": [20, 26, 36], "internal_s": 20, "scale": 20, "attach": [20, 26, 36], "is_support": 20, "read_uncommit": 20, "read_commit": 20, "repeatable_read": [20, 33], "serializ": [20, 33], "enclos": 20, "branch": [20, 33, 38], "maintain": [21, 30], "multithread": 21, "asyncnullconnectionpool": 21, "ct": 21, "3600": [21, 26], "600": 21, "num_work": 21, "alot": 21, "fundament": 21, "meaning": 21, "expand": 21, "minimum": 21, "go": [21, 28, 33, 34], "equal": [21, 31, 32], "shrink": 21, "getconn": 21, "throw": 21, "sequenti": 21, "toomanyrequest": 21, "hour": 21, "random": 21, "mass": 21, "evict": 21, "stai": 21, "shrunk": 21, "reconnect": [21, 37], "factor": 21, "repeat": [21, 24, 26, 31, 33, 36], "anyth": [21, 28, 30], "fell": 21, "implicitli": [21, 32, 33], "my_pool": 21, "fill": [21, 34, 37], "re": 21, "unavail": 21, "poolclos": [21, 37], "expir": 21, "although": [21, 26, 33], "sec": 21, "prefer": [21, 26, 30, 33], "properli": 21, "hardest": 21, "dispos": 21, "quietli": 21, "correspond": [21, 26, 32], "putconn": 21, "deplet": 21, "sad": 21, "love": 21, "comfort": 21, "couldn": [21, 22], "signatur": [21, 27], "pool_async": 21, "explicit": [21, 33, 34, 36], "preemptiv": 21, "fuss": 21, "sit": 21, "built": [22, 32, 38], "pure": [22, 26, 29], "ctype": [22, 30, 36], "compil": [22, 30], "cython": 22, "develop": [22, 30, 33, 34], "machin": [22, 30], "pre": 22, "bundl": 22, "easiest": 22, "tool": [22, 30, 33, 38], "platform": [22, 30, 36], "__impl__": 22, "export": 22, "env": 22, "var": 22, "psycopg_impl": [22, 30], "importerror": 22, "psycopg_c": [22, 38], "pqlibvers": 22, "__build_version__": [22, 36], "160002": 22, "speedup": 22, "utf8": [22, 26], "fallback": 22, "decod": [22, 26, 28, 36], "pgconn_ptr": 22, "pointer": 22, "ffi": 22, "get_cancel": 22, "pgcancel": 22, "pqgetcancel": 22, "authent": 22, "pqconnectionneedspassword": 22, "pqconnectionusedpassword": 22, "passwd": 22, "pqencryptpasswordconn": 22, "enc": 22, "rolenam": 22, "scram": 22, "sha": 22, "256": 22, "4096": 22, "trace": [22, 36], "enabl": [22, 28], "pqtrace": 22, "flag": 22, "pqsettraceflag": 22, "untrac": 22, "pquntrac": 22, "stderr": 22, "suppress_timestamp": 22, "regress_mod": 22, "nnnn": 22, "8": [22, 26, 30, 32], "29": 22, "2022": 22, "16": [22, 30], "648035": 22, "tuples_ok": 22, "0x7f18a18ba040": 22, "pgresult_ptr": 22, "interpol": 22, "token": 22, "__del__": 22, "pqfreecancel": 22, "abandon": 22, "connstatu": [22, 36], "status": 22, "pgcancelconn": 22, "pqcancelstatu": 22, "pollingstatu": 22, "pqconnectpol": 22, "transactionstatu": 22, "execstatu": 22, "pqresultstatu": 22, "empty_queri": 22, "command_ok": 22, "copy_out": 22, "copy_in": 22, "bad_respons": 22, "nonfatal_error": 22, "fatal_error": 22, "copy_both": 22, "single_tupl": 22, "pipeline_sync": 22, "pipeline_abort": 22, "pipelinestatu": 22, "ON": 22, "diagnosticfield": 22, "pqpingparam": 22, "reject": [22, 27], "no_respons": 22, "no_attempt": 22, "basecursor": 23, "tuplerow": 23, "namedtupl": [23, 32], "mangl": [23, 36], "scalar": [23, 26, 36], "baserowfactori": 23, "myclass": 23, "smith": 23, "func": 23, "flavour": [23, 36], "sort": 24, "accid": 24, "seriou": 24, "untrust": [24, 31], "escape_identifi": 24, "hoc": 24, "danger": [24, 29], "forgotten": 24, "presenc": 24, "charact": [24, 26, 31, 33], "exploit": 24, "weak": 24, "fly": 24, "clearli": 24, "untouch": 24, "pkei": 24, "my_nam": 24, "some_t": [24, 31], "meant": 24, "as_str": [24, 36], "full_queri": 24, "join": [24, 36], "field1": 24, "field2": 24, "field3": 24, "hierarchi": 24, "common": [24, 28, 34], "dot": 24, "hardcod": 24, "place": [24, 30, 31], "evalu": [24, 32], "tailor": 24, "account": [24, 28], "as_byt": [24, 36], "undergo": [24, 26], "foo": [24, 26, 28, 31, 32], "bar": [24, 26, 28, 31, 32], "modifi": [24, 27, 33], "peopl": [24, 28, 34], "tbl": 24, "rourk": 24, "seq": 24, "snip": 24, "baz": 24, "t1": 24, "t2": 24, "ba": 24, "t3": 24, "z": [24, 32], "s1": 24, "fo": 24, "s2": 24, "s3": 24, "add": [24, 30, 32, 36, 37, 38], "ambigu": [24, 26, 36], "q1": 24, "len": 24, "q2": 24, "comp": 24, "joiner": 24, "interpos": 24, "interpret": [24, 36], "cach": [24, 36], "often": [24, 28, 31], "concret": 25, "straightforward": 25, "compon": [25, 32, 33], "register_hstor": [25, 32], "upfront": 25, "mytyp": 25, "seamlessli": 25, "subtyp": [25, 32], "mytypearrai": 25, "mytypeload": 25, "array_oid": [25, 26, 32], "regtyp": [25, 32], "delimit": [25, 27, 31], "recognis": 25, "compositeinfo": [25, 32], "rangeinfo": [25, 32], "multirangeinfo": [25, 32], "enuminfo": [25, 26], "collect": 25, "typeregistri": 25, "__getitem__": 25, "1009": 25, "get_oid": 25, "get_by_subtyp": 25, "set_json_dump": [25, 26], "serialis": 25, "set_json_load": [25, 26], "numpi": [26, 36], "bool_": 26, "smallint": [26, 27], "smallest": 26, "gladli": [26, 28], "down": 26, "promot": 26, "eas": [26, 28], "menu": 26, "cr\u00e8me": 26, "br\u00fbl\u00e9e": 26, "99": 26, "utf": 26, "ascii": [26, 36], "char": [26, 36], "latin": 26, "european": 26, "accent": 26, "euro": 26, "symbol": [26, 28, 36], "latin1": 26, "0xe2": 26, "0x82": 26, "0xac": 26, "rare": [26, 28], "cr": 26, "xc3": 26, "xa8m": 26, "br": 26, "xbbl": 26, "xa9e": 26, "xe2": 26, "x82": 26, "xac": 26, "bytea": [26, 36], "unalt": 26, "0x00": 26, "imag": [26, 31], "cpu": [26, 36], "bandwidth": 26, "timetz": 26, "timedelta": 26, "interv": [26, 36], "london": 26, "2048": 26, "07": [26, 34], "utc": [26, 28], "summer": 26, "2042": [26, 34], "00z": 26, "silli": 26, "daylight": 26, "winter": 26, "7200": 26, "whatev": [26, 36], "utcoffset": 26, "zone": [26, 36], "iso": 26, "ymd": 26, "guc": [26, 28], "de": 26, "functool": 26, "ujson": 26, "faster": 26, "parse_float": 26, "over": [26, 27, 33], "uuid4": 26, "uuidencod": 26, "jsonencod": 26, "isinst": [26, 33], "uuid_dump": 26, "0a40799d": 26, "3980": 26, "4c65": 26, "8315": 26, "2956b18ab0e1": 26, "neither": [26, 33], "nor": [26, 33], "stdin": [26, 27], "wherea": [26, 31], "gen_random_uuid": 26, "97f0dd62": 26, "3bd2": 26, "459e": 26, "89b8": 26, "a5e36ea3c16c": 26, "shot": 26, "ipaddress": 26, "ipv4address": 26, "ipv4interfac": 26, "inet": 26, "ipv4network": 26, "ipv6address": 26, "ipv6interfac": 26, "ipv6network": 26, "ipv6": 26, "192": 26, "168": 26, "ffff": 26, "120": 26, "102": 26, "bidirect": 26, "register_enum": 26, "myintenum": 26, "label": 26, "userrol": 26, "admin": 26, "editor": 26, "guest": 26, "user_rol": 26, "some_editor": 26, "pg_typeof": [26, 32], "vice": 26, "versa": 26, "matter": 26, "mediev": 26, "abbey_rol": 26, "abbot": 26, "scribe": 26, "monk": 26, "lowercaserol": 26, "lowercase_rol": 26, "stdout": [27, 36], "col1": 27, "col2": 27, "conclud": 27, "sampl": 27, "col3": 27, "csv": 27, "thank": 27, "easier": 27, "current_d": 27, "2046": 27, "block_siz": 27, "finicki": 27, "carefulli": 27, "portion": 27, "dsn_src": 27, "conn1": 27, "dsn_tgt": 27, "conn2": [27, 32], "src": 27, "copy1": 27, "tgt": 27, "copy2": 27, "ident": 27, "omit": [27, 38], "tri": [28, 33], "awar": 28, "workaround": 28, "chan": 28, "set_config": 28, "pg_notifi": 28, "usernam": 28, "semicolon": 28, "obviou": [28, 33], "split": 28, "cur_pg2": 28, "readili": 28, "cur_pg3": 28, "variad": 28, "candid": 28, "json_build_arrai": 28, "determin": [28, 36], "construct": 28, "NOT": 28, "fact": [28, 30], "unari": 28, "distinct": 28, "analog": 28, "achiev": [28, 33], "realdictcursor": 28, "namedtuplecursor": 28, "dictcursor": 28, "rewritten": 28, "Their": 28, "copy_expert": 28, "wise": 28, "surpris": [28, 33, 34], "finer": [28, 33], "simplist": 28, "function_nam": 28, "procedure_nam": 28, "unicod": 28, "But": 28, "bc": 28, "past": 28, "biject": 28, "pervers": 28, "arguabl": 28, "lesser": 28, "flatten": 28, "y10k": 28, "redesign": [28, 35], "shortcut": 29, "pyscopg": 29, "inject": [29, 34], "geometri": [29, 36], "shape": [29, 36], "callproc": 29, "gone": 29, "short": 30, "pypi": [30, 36, 37], "fun": 30, "psycopg3": [30, 34], "linux": [30, 36], "maco": [30, 36, 38], "github": [30, 38], "workflow": [30, 38], "unoffici": 30, "conda": 30, "bsd": [30, 36], "solari": [30, 36], "unsupport": 30, "wire": 30, "smooth": 30, "ride": 30, "quickest": 30, "situat": 30, "proce": 30, "did": 30, "great": 30, "learn": 30, "speed": 30, "link": 30, "libssl": 30, "product": 30, "site": [30, 31], "header": 30, "python3": 30, "dev": [30, 38], "pg_config": 30, "troubleshoot": 30, "handi": 30, "hack": 30, "debian": 30, "sudo": 30, "apt": 30, "libpq5": 30, "fulfil": 30, "project": [30, 32], "txt": 30, "setup": 30, "pyproject": 30, "toml": 30, "servic": [30, 36], "bit": [31, 33], "created_at": 31, "18": [31, 34], "reilli": 31, "roughli": [31, 34], "updated_at": 31, "resembl": 31, "regular": [31, 32], "subtl": 31, "appear": 31, "unescap": 31, "na\u00efv": 31, "approach": 31, "concaten": 31, "recip": 31, "terribl": 31, "WILL": 31, "miser": 31, "attack": 31, "craft": 31, "malform": 31, "unauthor": 31, "destruct": 31, "widespread": 31, "memo": 31, "hang": [31, 36, 37], "onto": 31, "desk": 31, "robust": 31, "stress": 31, "hacker": 31, "countri": 31, "comput": 31, "disk": 31, "cd": [31, 38], "embarrass": 31, "ever": 31, "bought": 31, "cassett": 31, "tape": 31, "con": 31, "artist": 31, "seduc": 31, "cat": 31, "credit": 31, "card": [31, 32], "sunglass": 31, "gui": 31, "balaclava": 31, "fridg": 31, "drink": 31, "beer": 31, "toilet": 31, "seat": 31, "paper": 31, "orient": 31, "improp": 31, "pg_type": 31, "typinput": 31, "typoutput": 31, "typsend": 31, "typrec": 31, "winner": 31, "image_data": 31, "image_id": 31, "register_composit": 32, "field_nam": 32, "field_typ": 32, "python_typ": 32, "my_card": 32, "heart": 32, "spade": 32, "card_back": 32, "face": 32, "info2": 32, "blue": 32, "famili": 32, "upper": 32, "unbound": 32, "replic": 32, "normalis": 32, "immut": 32, "hashabl": 32, "nonempti": 32, "isempti": 32, "lower_inc": 32, "upper_inc": 32, "lower_inf": 32, "upper_inf": 32, "daterang": 32, "register_rang": 32, "subtype_oid": 32, "strrang": 32, "disjoint": 32, "mutabl": 32, "overlap": 32, "mutablesequ": 32, "complain": 32, "datemultirang": 32, "register_multirang": 32, "range_oid": 32, "strmultirang": 32, "mr": 32, "q": 32, "l": [32, 38], "embed": 32, "gist": 32, "gin": 32, "search": 32, "btree": 32, "uniqu": 32, "contrib": 32, "postgi": 32, "likewis": 32, "postggi": 32, "register_shap": 32, "st_geomfromgeojson": 32, "48": 32, "23456": 32, "12345": 32, "multipolygon": 32, "0x7fb131f3cd90": 32, "unaffect": [32, 33], "conn_str": 32, "0101000020e61000009279e40f061e48c0f2b0506b9a1f3440": 32, "seem": 33, "visibl": 33, "disappoint": 33, "undesir": 33, "fire": 33, "thankfulli": 33, "persist": [33, 34], "closur": 33, "bloat": 33, "live": 33, "suspend": 33, "vacuum": 33, "With": 33, "benefici": 33, "transpar": 33, "finalis": [33, 34], "attent": 33, "sub": 33, "proper": 33, "essenc": 33, "experienc": 33, "inner": 33, "outer": 33, "seri": 33, "successfulli": 33, "tx1": 33, "num_ok": 33, "tx2": 33, "unreliable_oper": 33, "save_number_of_success": 33, "revert": 33, "bubbl": 33, "intercept": 33, "jump": 33, "hypothet": 33, "cancelcommand": 33, "outer_tx": 33, "inner_tx": 33, "process_command": 33, "propos": 33, "neg": 33, "32": 33, "64": 33, "assign": 33, "200": [33, 36], "emploi": 33, "interoper": 33, "java": 33, "recogn": 33, "sqlite3": 34, "encapsul": 34, "leaner": 34, "706497": 34, "un": 34, "intent": 34, "quirki": 34, "smoothest": 34, "everyon": 35, "modern": 35, "ticket": [36, 37], "332": 36, "340": 36, "560": 36, "772": 36, "723": 36, "589": 36, "v17": 36, "603": 36, "754": 36, "716": 36, "604": 36, "preserv": 36, "keyboardinterrupt": 36, "excess": 36, "strip": 36, "752": 36, "deadlock": 36, "685": 36, "719": 36, "musl": 36, "libc": 36, "cpython": 36, "65821": 36, "699": 36, "708": [36, 37], "703": 36, "regress": 36, "694": 36, "695": 36, "pgconnect_timeout": 36, "527": 36, "686": 36, "652": 36, "eintr": 36, "interruptederror": 36, "475": 36, "guidelin": 36, "667": 36, "load_balance_host": 36, "674": 36, "leak": 36, "679": 36, "608": 36, "register_": 36, "647": 36, "628": 36, "630": 36, "dai": 36, "month": 36, "643": 36, "645": 36, "632": 36, "critic": 36, "guard": 36, "readabl": 36, "permiss": 36, "ssl": 36, "certif": 36, "528": 36, "orjson": 36, "msgspec": 36, "569": 36, "585": 36, "shallow": 36, "real": 36, "565": 36, "591": 36, "clobber": 36, "593": 36, "612": 36, "503": [36, 37], "filedescriptor": 36, "532": 36, "541": 36, "543": 36, "545": 36, "547": 36, "pollut": 36, "473": 36, "479": 36, "484": 36, "464": 36, "460": 36, "slow": 36, "359": 36, "414": 36, "422": 36, "437": 36, "pyright": [36, 37], "typealia": [36, 37], "439": [36, 37], "452": 36, "457": 36, "305": [36, 37], "382": 36, "386": 36, "percent": 36, "sign": 36, "399": 36, "duplic": 36, "emit": 36, "401": 36, "371": 36, "segfault": 36, "372": 36, "374": 36, "378": 36, "arm64": 36, "appl": 36, "m1": [36, 38], "344": 36, "homebrew": 36, "364": 36, "unrecogn": 36, "366": 36, "74": 36, "101": 36, "313": 36, "274": 36, "164": 36, "145": 36, "259": 36, "167": 36, "242": 36, "restrict": 36, "323": 36, "205": 36, "343": 36, "162": 36, "unprint": 36, "nonetheless": 36, "overflowerror": 36, "manylinux2014": 36, "wheel": 36, "124": 36, "301": 36, "incorrect": 36, "blank": 36, "303": 36, "ppc64le": 36, "musllinux": 36, "304": 36, "286": 36, "293": 36, "254": 36, "intenum": 36, "dimens": 36, "253": 36, "255": 36, "mention": 36, "231": 36, "235": 36, "freebsd": 36, "241": 36, "225": 36, "tzdata": 36, "223": 36, "194": 36, "198": 36, "203": 36, "179": 36, "178": 36, "172": 36, "173": 36, "174": 36, "176": 36, "177": 36, "check_standbi": 36, "158": 36, "165": 36, "comparison": 36, "147": 36, "backport": 36, "109": 36, "cve": 36, "2021": 36, "23222": 36, "149": 36, "alpin": 36, "141": 36, "142": 36, "psycopg_binari": 36, "127": 36, "128": 36, "__setitem__": 36, "slice": 36, "typeerror": 36, "129": 36, "125": 36, "112": 36, "80": 36, "75": 36, "78": 36, "82": 36, "83": 36, "103": 36, "runtimewarn": 37, "deprecationwarn": 37, "784": 37, "busi": 37, "709": 37, "520": 37, "656": 37, "559": 37, "659": 37, "__enter__": 37, "540": 37, "482": 37, "493": 37, "refil": 37, "438": 37, "exhaust": 37, "219": 37, "lose": 37, "370": 37, "race": 37, "230": 37, "148": 37, "151": 37, "valueerror": 37, "_compat": 37, "144": 37, "openssl": 38, "libpq_vers": 38, "openssl_vers": 38, "bin": 38, "yml": 38, "cibuildwheel": 38, "bump_vers": 38, "wheelhous": 38, "run_build_macos_arm64": 38, "sh": 38, "git": 38, "download": 38, "artifact": 38, "dir": 38, "mkdir": 38, "unzip": 38, "upload": 38, "testpypi": 38, "twine": 38, "bump": 38, "update_error": 38, "update_oid": 38, "h": 38, "docker": 38, "pxd": 38, "_enum": 38, "grid": 38, "pg_version": 38, "build_macos_arm64": 38, "wheel_win32_before_build": 38, "bat": 38, "rst": 38, "lr": 38, "websit": 38, "repositori": 38}, "objects": {"": [[19, 0, 0, "-", "psycopg"], [21, 0, 0, "-", "psycopg_pool"]], "psycopg": [[15, 1, 1, "", "AsyncClientCursor"], [11, 1, 1, "", "AsyncConnection"], [13, 1, 1, "", "AsyncCopy"], [15, 1, 1, "", "AsyncCursor"], [20, 1, 1, "", "AsyncPipeline"], [15, 1, 1, "", "AsyncRawCursor"], [15, 1, 1, "", "AsyncServerCursor"], [20, 1, 1, "", "AsyncTransaction"], [20, 1, 1, "", "Capabilities"], [15, 1, 1, "", "ClientCursor"], [20, 1, 1, "", "Column"], [11, 1, 1, "", "Connection"], [20, 1, 1, "", "ConnectionInfo"], [13, 1, 1, "", "Copy"], [15, 1, 1, "", "Cursor"], [17, 4, 1, "", "DataError"], [17, 4, 1, "", "DatabaseError"], [17, 4, 1, "", "Error"], [17, 4, 1, "", "IntegrityError"], [17, 4, 1, "", "InterfaceError"], [17, 4, 1, "", "InternalError"], [20, 1, 1, "", "IsolationLevel"], [17, 4, 1, "", "NotSupportedError"], [20, 1, 1, "", "Notify"], [17, 4, 1, "", "OperationalError"], [20, 1, 1, "", "Pipeline"], [17, 4, 1, "", "ProgrammingError"], [15, 1, 1, "", "RawCursor"], [20, 4, 1, "", "Rollback"], [15, 1, 1, "", "ServerCursor"], [20, 1, 1, "", "Transaction"], [17, 4, 1, "", "Warning"], [20, 1, 1, "", "Xid"], [16, 0, 0, "-", "_dns"], [9, 0, 0, "-", "abc"], [10, 0, 0, "-", "adapt"], [19, 7, 1, "", "adapters"], [19, 7, 1, "", "capabilities"], [19, 5, 1, "", "connect"], [12, 0, 0, "-", "conninfo"], [14, 0, 0, "-", "crdb"], [17, 0, 0, "-", "errors"], [22, 0, 0, "-", "pq"], [23, 0, 0, "-", "rows"], [24, 0, 0, "-", "sql"], [25, 0, 0, "-", "types"]], "psycopg.AsyncConnection": [[16, 2, 1, "", "_get_connection_params"], [11, 2, 1, "", "cancel_safe"], [11, 2, 1, "", "close"], [11, 2, 1, "", "commit"], [11, 2, 1, "", "connect"], [11, 2, 1, "", "cursor"], [11, 3, 1, "", "cursor_factory"], [11, 2, 1, "", "execute"], [11, 2, 1, "", "notifies"], [11, 2, 1, "", "pipeline"], [11, 2, 1, "", "rollback"], [11, 3, 1, "", "row_factory"], [11, 3, 1, "", "server_cursor_factory"], [11, 2, 1, "", "set_autocommit"], [11, 2, 1, "", "set_deferrable"], [11, 2, 1, "", "set_isolation_level"], [11, 2, 1, "", "set_read_only"], [11, 2, 1, "", "tpc_commit"], [11, 2, 1, "", "tpc_prepare"], [11, 2, 1, "", "tpc_recover"], [11, 2, 1, "", "tpc_rollback"], [11, 2, 1, "", "transaction"]], "psycopg.AsyncCopy": [[13, 2, 1, "", "read"], [13, 2, 1, "", "read_row"], [13, 2, 1, "", "rows"], [13, 2, 1, "", "write"], [13, 2, 1, "", "write_row"]], "psycopg.AsyncCursor": [[15, 2, 1, "", "close"], [15, 3, 1, "", "connection"], [15, 2, 1, "", "copy"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 2, 1, "", "scroll"], [15, 2, 1, "", "stream"]], "psycopg.AsyncPipeline": [[20, 2, 1, "", "sync"]], "psycopg.AsyncServerCursor": [[15, 2, 1, "", "close"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 2, 1, "", "scroll"]], "psycopg.AsyncTransaction": [[20, 3, 1, "", "connection"]], "psycopg.Capabilities": [[20, 2, 1, "", "has_cancel_safe"], [20, 2, 1, "", "has_encrypt_password"], [20, 2, 1, "", "has_hostaddr"], [20, 2, 1, "", "has_pgbouncer_prepared"], [20, 2, 1, "", "has_pipeline"], [20, 2, 1, "", "has_set_trace_flags"]], "psycopg.ClientCursor": [[15, 2, 1, "", "mogrify"]], "psycopg.Column": [[20, 3, 1, "", "display_size"], [20, 3, 1, "", "internal_size"], [20, 3, 1, "", "name"], [20, 3, 1, "", "precision"], [20, 3, 1, "", "scale"], [20, 3, 1, "", "type_code"]], "psycopg.Connection": [[16, 2, 1, "", "_get_connection_params"], [11, 2, 1, "", "add_notice_handler"], [11, 2, 1, "", "add_notify_handler"], [11, 3, 1, "", "autocommit"], [11, 3, 1, "", "broken"], [11, 2, 1, "", "cancel"], [11, 2, 1, "", "cancel_safe"], [11, 2, 1, "", "close"], [11, 3, 1, "", "closed"], [11, 2, 1, "", "commit"], [11, 2, 1, "", "connect"], [11, 2, 1, "", "cursor"], [11, 3, 1, "", "cursor_factory"], [11, 3, 1, "", "deferrable"], [11, 2, 1, "", "execute"], [11, 2, 1, "", "fileno"], [11, 3, 1, "", "info"], [11, 3, 1, "", "isolation_level"], [11, 2, 1, "", "notifies"], [11, 3, 1, "", "pgconn"], [11, 2, 1, "", "pipeline"], [11, 3, 1, "", "prepare_threshold"], [11, 3, 1, "", "prepared_max"], [11, 3, 1, "", "read_only"], [11, 2, 1, "", "remove_notice_handler"], [11, 2, 1, "", "remove_notify_handler"], [11, 2, 1, "", "rollback"], [11, 3, 1, "", "row_factory"], [11, 3, 1, "", "server_cursor_factory"], [11, 2, 1, "", "set_autocommit"], [11, 2, 1, "", "set_deferrable"], [11, 2, 1, "", "set_isolation_level"], [11, 2, 1, "", "set_read_only"], [11, 2, 1, "", "tpc_begin"], [11, 2, 1, "", "tpc_commit"], [11, 2, 1, "", "tpc_prepare"], [11, 2, 1, "", "tpc_recover"], [11, 2, 1, "", "tpc_rollback"], [11, 2, 1, "", "transaction"], [11, 2, 1, "", "xid"]], "psycopg.ConnectionInfo": [[20, 3, 1, "", "backend_pid"], [20, 3, 1, "", "dbname"], [20, 3, 1, "", "dsn"], [20, 3, 1, "", "encoding"], [20, 3, 1, "", "error_message"], [20, 2, 1, "", "get_parameters"], [20, 3, 1, "", "host"], [20, 3, 1, "", "hostaddr"], [20, 3, 1, "", "options"], [20, 2, 1, "", "parameter_status"], [20, 3, 1, "", "password"], [20, 3, 1, "", "pipeline_status"], [20, 3, 1, "", "port"], [20, 3, 1, "", "server_version"], [20, 3, 1, "", "status"], [20, 3, 1, "", "timezone"], [20, 3, 1, "", "transaction_status"], [20, 3, 1, "", "user"], [20, 3, 1, "", "vendor"]], "psycopg.Copy": [[13, 2, 1, "", "read"], [13, 2, 1, "", "read_row"], [13, 2, 1, "", "rows"], [13, 2, 1, "", "set_types"], [13, 2, 1, "", "write"], [13, 2, 1, "", "write_row"]], "psycopg.Cursor": [[15, 3, 1, "", "_query"], [15, 2, 1, "", "close"], [15, 3, 1, "", "closed"], [15, 3, 1, "", "connection"], [15, 2, 1, "", "copy"], [15, 3, 1, "", "description"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 3, 1, "", "format"], [15, 2, 1, "", "nextset"], [15, 3, 1, "", "pgresult"], [15, 3, 1, "", "row_factory"], [15, 3, 1, "", "rowcount"], [15, 3, 1, "", "rownumber"], [15, 2, 1, "", "scroll"], [15, 3, 1, "", "statusmessage"], [15, 2, 1, "", "stream"]], "psycopg.Error": [[17, 3, 1, "", "diag"], [17, 3, 1, "", "pgconn"], [17, 3, 1, "", "pgresult"], [17, 3, 1, "", "sqlstate"]], "psycopg.IsolationLevel": [[20, 3, 1, "", "READ_COMMITTED"], [20, 3, 1, "", "READ_UNCOMMITTED"], [20, 3, 1, "", "REPEATABLE_READ"], [20, 3, 1, "", "SERIALIZABLE"]], "psycopg.Notify": [[20, 3, 1, "", "channel"], [20, 3, 1, "", "payload"], [20, 3, 1, "", "pid"]], "psycopg.Pipeline": [[20, 2, 1, "", "is_supported"], [20, 2, 1, "", "sync"]], "psycopg.ServerCursor": [[15, 2, 1, "", "close"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 3, 1, "", "itersize"], [15, 3, 1, "", "name"], [15, 2, 1, "", "scroll"], [15, 3, 1, "", "scrollable"], [15, 3, 1, "", "withhold"]], "psycopg.Transaction": [[20, 3, 1, "", "connection"], [20, 3, 1, "", "savepoint_name"]], "psycopg.Xid": [[20, 3, 1, "", "bqual"], [20, 3, 1, "", "database"], [20, 3, 1, "", "format_id"], [20, 3, 1, "", "gtrid"], [20, 3, 1, "", "owner"], [20, 3, 1, "", "prepared"]], "psycopg._dns": [[16, 5, 1, "", "resolve_hostaddr_async"], [16, 5, 1, "", "resolve_srv"], [16, 5, 1, "", "resolve_srv_async"]], "psycopg.abc": [[9, 1, 1, "", "AdaptContext"], [9, 1, 1, "", "Dumper"], [9, 1, 1, "", "Loader"]], "psycopg.abc.AdaptContext": [[9, 6, 1, "", "adapters"], [9, 6, 1, "", "connection"]], "psycopg.abc.Dumper": [[9, 2, 1, "", "dump"], [9, 3, 1, "", "format"], [9, 2, 1, "", "get_key"], [9, 3, 1, "", "oid"], [9, 2, 1, "", "quote"], [9, 2, 1, "", "upgrade"]], "psycopg.abc.Loader": [[9, 3, 1, "", "format"], [9, 2, 1, "", "load"]], "psycopg.adapt": [[10, 1, 1, "", "AdaptersMap"], [10, 1, 1, "", "Dumper"], [10, 1, 1, "", "Loader"], [10, 1, 1, "", "PyFormat"], [10, 1, 1, "", "Transformer"]], "psycopg.adapt.AdaptersMap": [[10, 2, 1, "", "get_dumper"], [10, 2, 1, "", "get_dumper_by_oid"], [10, 2, 1, "", "get_loader"], [10, 2, 1, "", "register_dumper"], [10, 2, 1, "", "register_loader"], [10, 3, 1, "", "types"]], "psycopg.adapt.Dumper": [[10, 2, 1, "", "dump"], [10, 3, 1, "", "format"], [10, 2, 1, "", "get_key"], [10, 2, 1, "", "quote"], [10, 2, 1, "", "upgrade"]], "psycopg.adapt.Loader": [[10, 3, 1, "", "format"], [10, 2, 1, "", "load"]], "psycopg.adapt.PyFormat": [[10, 3, 1, "", "AUTO"], [10, 3, 1, "", "BINARY"], [10, 3, 1, "", "TEXT"]], "psycopg.conninfo": [[12, 5, 1, "", "conninfo_to_dict"], [12, 5, 1, "", "make_conninfo"]], "psycopg.copy": [[13, 1, 1, "", "AsyncLibpqWriter"], [13, 1, 1, "", "AsyncWriter"], [13, 1, 1, "", "FileWriter"], [13, 1, 1, "", "LibpqWriter"], [13, 1, 1, "", "Writer"]], "psycopg.copy.AsyncWriter": [[13, 2, 1, "", "finish"], [13, 2, 1, "", "write"]], "psycopg.copy.Writer": [[13, 2, 1, "", "finish"], [13, 2, 1, "", "write"]], "psycopg.crdb": [[14, 1, 1, "", "AsyncCrdbConnection"], [14, 1, 1, "", "CrdbConnection"], [14, 1, 1, "", "CrdbConnectionInfo"], [14, 7, 1, "", "adapters"], [14, 5, 1, "", "connect"]], "psycopg.crdb.CrdbConnection": [[14, 2, 1, "", "is_crdb"]], "psycopg.crdb.CrdbConnectionInfo": [[14, 3, 1, "", "server_version"], [14, 3, 1, "", "vendor"]], "psycopg.errors": [[17, 4, 1, "", "ConnectionTimeout"], [17, 1, 1, "", "Diagnostic"], [17, 4, 1, "", "PipelineAborted"], [17, 5, 1, "", "lookup"]], "psycopg.errors.Diagnostic": [[17, 3, 1, "", "column_name"], [17, 3, 1, "", "constraint_name"], [17, 3, 1, "", "context"], [17, 3, 1, "", "datatype_name"], [17, 3, 1, "", "internal_position"], [17, 3, 1, "", "internal_query"], [17, 3, 1, "", "message_detail"], [17, 3, 1, "", "message_hint"], [17, 3, 1, "", "message_primary"], [17, 3, 1, "", "schema_name"], [17, 3, 1, "", "severity"], [17, 3, 1, "", "severity_nonlocalized"], [17, 3, 1, "", "source_file"], [17, 3, 1, "", "source_function"], [17, 3, 1, "", "source_line"], [17, 3, 1, "", "sqlstate"], [17, 3, 1, "", "statement_position"], [17, 3, 1, "", "table_name"]], "psycopg.pq": [[22, 1, 1, "", "ConnStatus"], [22, 1, 1, "", "Conninfo"], [22, 1, 1, "", "DiagnosticField"], [22, 1, 1, "", "Escaping"], [22, 1, 1, "", "ExecStatus"], [22, 1, 1, "", "Format"], [22, 1, 1, "", "PGcancel"], [22, 1, 1, "", "PGconn"], [22, 1, 1, "", "PGresult"], [22, 1, 1, "", "Ping"], [22, 1, 1, "", "PipelineStatus"], [22, 1, 1, "", "PollingStatus"], [22, 1, 1, "", "Trace"], [22, 1, 1, "", "TransactionStatus"], [22, 7, 1, "", "__build_version__"], [22, 7, 1, "", "__impl__"], [22, 5, 1, "", "error_message"], [22, 5, 1, "", "version"]], "psycopg.pq.ConnStatus": [[22, 3, 1, "", "ALLOCATED"], [22, 3, 1, "", "BAD"], [22, 3, 1, "", "OK"]], "psycopg.pq.DiagnosticField": [[22, 3, 1, "", "COLUMN_NAME"], [22, 3, 1, "", "CONSTRAINT_NAME"], [22, 3, 1, "", "CONTEXT"], [22, 3, 1, "", "DATATYPE_NAME"], [22, 3, 1, "", "INTERNAL_POSITION"], [22, 3, 1, "", "INTERNAL_QUERY"], [22, 3, 1, "", "MESSAGE_DETAIL"], [22, 3, 1, "", "MESSAGE_HINT"], [22, 3, 1, "", "MESSAGE_PRIMARY"], [22, 3, 1, "", "SCHEMA_NAME"], [22, 3, 1, "", "SEVERITY"], [22, 3, 1, "", "SEVERITY_NONLOCALIZED"], [22, 3, 1, "", "SOURCE_FILE"], [22, 3, 1, "", "SOURCE_FUNCTION"], [22, 3, 1, "", "SOURCE_LINE"], [22, 3, 1, "", "SQLSTATE"], [22, 3, 1, "", "STATEMENT_POSITION"], [22, 3, 1, "", "TABLE_NAME"]], "psycopg.pq.ExecStatus": [[22, 3, 1, "", "BAD_RESPONSE"], [22, 3, 1, "", "COMMAND_OK"], [22, 3, 1, "", "COPY_BOTH"], [22, 3, 1, "", "COPY_IN"], [22, 3, 1, "", "COPY_OUT"], [22, 3, 1, "", "EMPTY_QUERY"], [22, 3, 1, "", "FATAL_ERROR"], [22, 3, 1, "", "NONFATAL_ERROR"], [22, 3, 1, "", "PIPELINE_ABORTED"], [22, 3, 1, "", "PIPELINE_SYNC"], [22, 3, 1, "", "SINGLE_TUPLE"], [22, 3, 1, "", "TUPLES_OK"]], "psycopg.pq.Format": [[22, 3, 1, "", "BINARY"], [22, 3, 1, "", "TEXT"]], "psycopg.pq.PGcancel": [[22, 2, 1, "", "cancel"], [22, 2, 1, "", "free"]], "psycopg.pq.PGconn": [[22, 2, 1, "", "encrypt_password"], [22, 2, 1, "", "get_cancel"], [22, 3, 1, "", "needs_password"], [22, 3, 1, "", "pgconn_ptr"], [22, 2, 1, "", "set_trace_flags"], [22, 2, 1, "", "trace"], [22, 2, 1, "", "untrace"], [22, 3, 1, "", "used_password"]], "psycopg.pq.PGresult": [[22, 3, 1, "", "pgresult_ptr"]], "psycopg.pq.Ping": [[22, 3, 1, "", "NO_ATTEMPT"], [22, 3, 1, "", "NO_RESPONSE"], [22, 3, 1, "", "OK"], [22, 3, 1, "", "REJECT"]], "psycopg.pq.PipelineStatus": [[22, 3, 1, "", "ABORTED"], [22, 3, 1, "", "OFF"], [22, 3, 1, "", "ON"]], "psycopg.pq.PollingStatus": [[22, 3, 1, "", "FAILED"], [22, 3, 1, "", "OK"], [22, 3, 1, "", "READING"], [22, 3, 1, "", "WRITING"]], "psycopg.pq.Trace": [[22, 3, 1, "", "REGRESS_MODE"], [22, 3, 1, "", "SUPPRESS_TIMESTAMPS"]], "psycopg.pq.TransactionStatus": [[22, 3, 1, "", "ACTIVE"], [22, 3, 1, "", "IDLE"], [22, 3, 1, "", "INERROR"], [22, 3, 1, "", "INTRANS"], [22, 3, 1, "", "UNKNOWN"]], "psycopg.psycopg.types.shapely": [[32, 5, 1, "", "register_shapely"]], "psycopg.rows": [[23, 1, 1, "", "AsyncRowFactory"], [23, 1, 1, "", "BaseRowFactory"], [23, 1, 1, "", "RowFactory"], [23, 1, 1, "", "RowMaker"], [23, 5, 1, "", "args_row"], [23, 5, 1, "", "class_row"], [23, 5, 1, "", "dict_row"], [23, 5, 1, "", "kwargs_row"], [23, 5, 1, "", "namedtuple_row"], [23, 5, 1, "", "scalar_row"], [23, 5, 1, "", "tuple_row"]], "psycopg.rows.RowFactory": [[23, 2, 1, "", "__call__"]], "psycopg.rows.RowMaker": [[23, 2, 1, "", "__call__"]], "psycopg.sql": [[24, 1, 1, "", "Composable"], [24, 1, 1, "", "Composed"], [24, 7, 1, "", "DEFAULT"], [24, 1, 1, "", "Identifier"], [24, 1, 1, "", "Literal"], [24, 7, 1, "", "NULL"], [24, 1, 1, "", "Placeholder"], [24, 1, 1, "", "SQL"], [24, 5, 1, "", "quote"]], "psycopg.sql.Composable": [[24, 2, 1, "", "as_bytes"], [24, 2, 1, "", "as_string"]], "psycopg.sql.Composed": [[24, 2, 1, "", "join"]], "psycopg.sql.SQL": [[24, 2, 1, "", "format"], [24, 2, 1, "", "join"]], "psycopg.types": [[25, 1, 1, "", "TypeInfo"], [25, 1, 1, "", "TypesRegistry"]], "psycopg.types.TypeInfo": [[25, 2, 1, "", "fetch"], [25, 2, 1, "", "register"]], "psycopg.types.TypesRegistry": [[25, 2, 1, "", "__getitem__"], [25, 2, 1, "", "get"], [25, 2, 1, "", "get_by_subtype"], [25, 2, 1, "", "get_oid"]], "psycopg.types.composite": [[32, 1, 1, "", "CompositeInfo"], [32, 5, 1, "", "register_composite"]], "psycopg.types.composite.CompositeInfo": [[32, 3, 1, "", "python_type"]], "psycopg.types.enum": [[26, 1, 1, "", "EnumInfo"], [26, 5, 1, "", "register_enum"]], "psycopg.types.enum.EnumInfo": [[26, 3, 1, "", "enum"], [26, 3, 1, "", "labels"]], "psycopg.types.hstore": [[32, 5, 1, "", "register_hstore"]], "psycopg.types.json": [[25, 1, 1, "", "Json"], [25, 1, 1, "", "Jsonb"], [25, 5, 1, "", "set_json_dumps"], [25, 5, 1, "", "set_json_loads"]], "psycopg.types.multirange": [[32, 1, 1, "", "Multirange"], [32, 1, 1, "", "MultirangeInfo"], [32, 5, 1, "", "register_multirange"]], "psycopg.types.range": [[32, 1, 1, "", "Range"], [32, 1, 1, "", "RangeInfo"], [32, 5, 1, "", "register_range"]], "psycopg.types.range.Range": [[32, 3, 1, "", "isempty"], [32, 3, 1, "", "lower"], [32, 3, 1, "", "lower_inc"], [32, 3, 1, "", "lower_inf"], [32, 3, 1, "", "upper"], [32, 3, 1, "", "upper_inc"], [32, 3, 1, "", "upper_inf"]], "psycopg_pool": [[21, 1, 1, "", "AsyncConnectionPool"], [21, 1, 1, "", "AsyncNullConnectionPool"], [21, 1, 1, "", "ConnectionPool"], [21, 1, 1, "", "NullConnectionPool"], [21, 1, 1, "", "PoolClosed"], [21, 1, 1, "", "PoolTimeout"], [21, 1, 1, "", "TooManyRequests"]], "psycopg_pool.AsyncConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "check_connection"], [21, 2, 1, "", "close"], [21, 2, 1, "", "connection"], [21, 2, 1, "", "getconn"], [21, 2, 1, "", "open"], [21, 2, 1, "", "putconn"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]], "psycopg_pool.ConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "check_connection"], [21, 2, 1, "", "close"], [21, 2, 1, "", "connection"], [21, 2, 1, "", "get_stats"], [21, 2, 1, "", "getconn"], [21, 3, 1, "", "max_size"], [21, 3, 1, "", "min_size"], [21, 3, 1, "", "name"], [21, 2, 1, "", "open"], [21, 2, 1, "", "pop_stats"], [21, 2, 1, "", "putconn"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]], "psycopg_pool.NullConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:exception", "5": "py:function", "6": "py:property", "7": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "exception", "Python exception"], "5": ["py", "function", "Python function"], "6": ["py", "property", "Python property"], "7": ["py", "data", "Python data"]}, "titleterms": {"data": [0, 26, 27], "adapt": [0, 10, 25, 26, 28, 32, 34, 35], "configur": 0, "write": [0, 27], "custom": 0, "xml": 0, "exampl": [0, 8, 27], "postgresql": [0, 14, 32, 35, 38], "numer": 0, "python": [0, 26, 30, 35], "float": 0, "handl": [0, 28, 30], "infin": [0, 28], "date": [0, 26, 28], "dumper": [0, 10], "loader": [0, 10], "life": [0, 5], "cycl": [0, 5], "concurr": 1, "oper": [1, 5], "asynchron": [1, 27], "async": [1, 15], "connect": [1, 5, 11, 12, 20, 21, 28, 30, 34], "interrupt": 1, "gevent": 1, "support": [1, 4, 14, 27, 30, 33], "server": [1, 2, 4, 27, 28], "messag": [1, 4], "notif": [1, 20], "detect": 1, "disconnect": 1, "cursor": [2, 15, 28], "type": [2, 8, 10, 25, 26, 32], "client": [2, 4], "side": [2, 28], "bind": [2, 28], "steal": 2, "an": 2, "exist": 2, "raw": 2, "queri": [2, 8, 28, 31], "more": 3, "advanc": 3, "topic": 3, "content": [3, 18, 22, 29], "pipelin": [4, 20], "mode": 4, "flow": 4, "usag": [4, 5, 24, 34], "synchron": 4, "point": 4, "The": [4, 11, 15, 19, 20, 21], "fine": 4, "print": 4, "pool": [5, 8, 21, 30], "basic": [5, 26, 34], "startup": 5, "check": [5, 8], "other": [5, 10, 17, 20, 32], "wai": 5, "creat": [5, 7], "null": [5, 21], "size": 5, "what": [5, 28], "": [5, 28], "right": 5, "qualiti": 5, "log": 5, "stat": 5, "prepar": 6, "statement": [6, 28], "us": [6, 10, 27, 28, 32], "pgbouncer": 6, "row": [7, 8, 23, 27], "factori": [7, 23], "new": [7, 28, 38], "static": 8, "gener": 8, "return": [8, 28], "record": 8, "pydant": 8, "model": 8, "liter": 8, "string": [8, 12, 24, 26], "abc": 9, "psycopg": [9, 17, 18, 19, 28, 29, 34, 35, 36, 38], "abstract": 9, "class": [9, 11, 15, 21], "object": [10, 13, 14, 20, 22, 24, 34], "asyncconnect": 11, "conninfo": 12, "manipul": 12, "copi": [13, 27, 28], "relat": [13, 20], "main": [13, 14, 34], "writer": 13, "crdb": 14, "cockroachdb": 14, "differ": [14, 28], "from": [14, 27, 28], "specif": 14, "rawcursor": 15, "clientcursor": 15, "servercursor": 15, "_dn": 16, "dn": 16, "resolut": 16, "util": [16, 24], "error": 17, "packag": 17, "except": [17, 21], "db": 17, "api": [17, 18], "diagnost": 17, "sqlstate": 17, "list": [17, 26], "known": 17, "3": [18, 28, 29, 34, 35, 36, 37], "modul": [19, 22, 24, 34], "top": 20, "level": 20, "inform": [20, 25], "libpq": [20, 22], "capabl": 20, "descript": 20, "column": 20, "transact": [20, 28, 33], "two": [20, 33], "phase": [20, 33], "commit": [20, 33], "psycopg_pool": [21, 37], "implement": [21, 22, 23], "connectionpool": 21, "asyncconnectionpool": 21, "pq": 22, "wrapper": 22, "wrap": 22, "structur": 22, "function": [22, 24], "todo": 22, "enumer": 22, "formal": 23, "protocol": [23, 33], "sql": [24, 31], "composit": [24, 32], "json": [25, 26], "boolean": 26, "number": 26, "binari": [26, 27, 30, 31], "time": 26, "limit": 26, "datestyl": 26, "intervalstyl": 26, "uuid": 26, "network": 26, "enum": 26, "TO": 27, "read": 27, "block": 27, "tabl": [27, 35], "across": 27, "psycopg2": 28, "multipl": 28, "same": 28, "result": [28, 31], "cast": [28, 32], "rule": 28, "you": 28, "cannot": 28, "IN": 28, "tupl": 28, "i": [28, 38], "subclass": 28, "system": [28, 30], "longer": 28, "file": 28, "base": 28, "callproc": 28, "gone": 28, "client_encod": 28, "characterist": [28, 33], "attribut": 28, "don": 28, "t": 28, "affect": 28, "autocommit": [28, 33], "session": 28, "No": 28, "default": 28, "get": 29, "start": 29, "instal": 30, "local": 30, "pure": 30, "depend": 30, "pass": 31, "paramet": 31, "execut": 31, "argument": 31, "danger": 31, "inject": 31, "rang": 32, "multirang": 32, "hstore": 32, "geometri": 32, "shape": 32, "manag": 33, "context": [33, 34], "nest": 33, "shortcut": 34, "pyscopg": 34, "your": 34, "program": 34, "databas": 35, "document": 35, "releas": [35, 36, 37, 38], "note": [35, 36, 37], "indic": 35, "futur": [36, 37], "2": [36, 37], "unreleas": [36, 37], "1": [36, 37], "19": 36, "current": [36, 37], "18": 36, "17": 36, "16": 36, "15": 36, "14": 36, "13": 36, "12": 36, "11": 36, "10": 36, "9": [36, 37], "8": [36, 37], "7": [36, 37], "6": [36, 37], "5": [36, 37], "4": [36, 37], "0": [36, 37], "0b1": 36, "how": 38, "make": 38, "when": 38, "major": 38, "version": 38}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx": 57}, "alltitles": {"Data adaptation configuration": [[0, "data-adaptation-configuration"]], "Writing a custom adapter: XML": [[0, "writing-a-custom-adapter-xml"]], "Example: PostgreSQL numeric to Python float": [[0, "example-postgresql-numeric-to-python-float"]], "Example: handling infinity date": [[0, "example-handling-infinity-date"]], "Dumpers and loaders life cycle": [[0, "dumpers-and-loaders-life-cycle"]], "Concurrent operations": [[1, "concurrent-operations"]], "Asynchronous operations": [[1, "asynchronous-operations"]], "with async connections": [[1, "with-async-connections"]], "Interrupting async operations": [[1, "interrupting-async-operations"]], "Gevent support": [[1, "gevent-support"]], "Server messages": [[1, "server-messages"]], "Asynchronous notifications": [[1, "asynchronous-notifications"]], "Detecting disconnections": [[1, "detecting-disconnections"]], "Cursor types": [[2, "cursor-types"]], "Client-side cursors": [[2, "client-side-cursors"]], "Client-side-binding cursors": [[2, "client-side-binding-cursors"]], "Server-side cursors": [[2, "server-side-cursors"]], "\u201cStealing\u201d an existing cursor": [[2, "stealing-an-existing-cursor"]], "Raw query cursors": [[2, "raw-query-cursors"]], "More advanced topics": [[3, "more-advanced-topics"]], "Contents:": [[3, null], [18, null], [29, null]], "Pipeline mode support": [[4, "pipeline-mode-support"]], "Client-server messages flow": [[4, "client-server-messages-flow"]], "Pipeline mode usage": [[4, "pipeline-mode-usage"]], "Synchronization points": [[4, "synchronization-points"]], "The fine prints": [[4, "the-fine-prints"]], "Connection pools": [[5, "connection-pools"]], "Basic connection pool usage": [[5, "basic-connection-pool-usage"]], "Pool startup check": [[5, "pool-startup-check"]], "Connections life cycle": [[5, "connections-life-cycle"]], "Other ways to create a pool": [[5, "other-ways-to-create-a-pool"]], "Null connection pools": [[5, "null-connection-pools"], [21, "null-connection-pools"]], "Pool connection and sizing": [[5, "pool-connection-and-sizing"]], "What\u2019s the right size for the pool?": [[5, "what-s-the-right-size-for-the-pool"]], "Connection quality": [[5, "connection-quality"]], "Pool operations logging": [[5, "pool-operations-logging"]], "Pool stats": [[5, "pool-stats"]], "Prepared statements": [[6, "prepared-statements"]], "Using prepared statements with PgBouncer": [[6, "using-prepared-statements-with-pgbouncer"]], "Row factories": [[7, "row-factories"]], "Creating new row factories": [[7, "creating-new-row-factories"]], "Static Typing": [[8, "static-typing"]], "Generic types": [[8, "generic-types"]], "Type of rows returned": [[8, "type-of-rows-returned"]], "Generic pool types": [[8, "generic-pool-types"]], "Example: returning records as Pydantic models": [[8, "example-returning-records-as-pydantic-models"]], "Checking literal strings in queries": [[8, "checking-literal-strings-in-queries"]], "abc \u2013 Psycopg abstract classes": [[9, "abc-psycopg-abstract-classes"]], "adapt \u2013 Types adaptation": [[10, "module-psycopg.adapt"]], "Dumpers and loaders": [[10, "dumpers-and-loaders"]], "Other objects used in adaptations": [[10, "other-objects-used-in-adaptations"]], "Connection classes": [[11, "connection-classes"]], "The Connection class": [[11, "the-connection-class"]], "The AsyncConnection class": [[11, "the-asyncconnection-class"]], "conninfo \u2013 manipulate connection strings": [[12, "conninfo-manipulate-connection-strings"]], "COPY-related objects": [[13, "copy-related-objects"]], "Main Copy objects": [[13, "main-copy-objects"]], "Writer objects": [[13, "writer-objects"]], "crdb \u2013 CockroachDB support": [[14, "module-psycopg.crdb"]], "Main differences from PostgreSQL": [[14, "main-differences-from-postgresql"]], "CockroachDB-specific objects": [[14, "cockroachdb-specific-objects"]], "Cursor classes": [[15, "cursor-classes"]], "The Cursor class": [[15, "the-cursor-class"]], "The RawCursor class": [[15, "the-rawcursor-class"]], "The ClientCursor class": [[15, "the-clientcursor-class"]], "The ServerCursor class": [[15, "the-servercursor-class"]], "Async cursor classes": [[15, "async-cursor-classes"]], "_dns \u2013 DNS resolution utilities": [[16, "module-psycopg._dns"]], "errors \u2013 Package exceptions": [[17, "module-psycopg.errors"]], "DB-API exceptions": [[17, "db-api-exceptions"]], "Other Psycopg errors": [[17, "other-psycopg-errors"]], "Error diagnostics": [[17, "error-diagnostics"]], "SQLSTATE exceptions": [[17, "sqlstate-exceptions"]], "List of known exceptions": [[17, "list-of-known-exceptions"]], "Psycopg 3 API": [[18, "psycopg-3-api"]], "The psycopg module": [[19, "the-psycopg-module"]], "Other top-level objects": [[20, "other-top-level-objects"]], "Connection information": [[20, "connection-information"]], "Libpq capabilities information": [[20, "libpq-capabilities-information"]], "The description Column object": [[20, "the-description-column-object"]], "Notifications": [[20, "notifications"]], "Pipeline-related objects": [[20, "pipeline-related-objects"]], "Transaction-related objects": [[20, "transaction-related-objects"]], "Two-Phase Commit related objects": [[20, "two-phase-commit-related-objects"]], "psycopg_pool \u2013 Connection pool implementations": [[21, "psycopg-pool-connection-pool-implementations"]], "The ConnectionPool class": [[21, "the-connectionpool-class"]], "Pool exceptions": [[21, "pool-exceptions"]], "The AsyncConnectionPool class": [[21, "the-asyncconnectionpool-class"]], "pq \u2013 libpq wrapper module": [[22, "pq-libpq-wrapper-module"]], "pq module implementations": [[22, "pq-module-implementations"]], "Module content": [[22, "module-content"]], "Objects wrapping libpq structures and functions": [[22, "objects-wrapping-libpq-structures-and-functions"]], "TODO": [[22, null]], "Enumerations": [[22, "enumerations"]], "rows \u2013 row factory implementations": [[23, "module-psycopg.rows"]], "Formal rows protocols": [[23, "formal-rows-protocols"]], "sql \u2013 SQL string composition": [[24, "sql-sql-string-composition"]], "Module usage": [[24, "module-usage"]], "sql objects": [[24, "sql-objects"]], "Utility functions": [[24, "utility-functions"]], "types \u2013 Types information and adapters": [[25, "module-psycopg.types"]], "Types information": [[25, "types-information"]], "JSON adapters": [[25, "json-adapters"]], "Adapting basic Python types": [[26, "adapting-basic-python-types"]], "Booleans adaptation": [[26, "booleans-adaptation"]], "Numbers adaptation": [[26, "numbers-adaptation"]], "Strings adaptation": [[26, "strings-adaptation"]], "Binary adaptation": [[26, "binary-adaptation"]], "Date/time types adaptation": [[26, "date-time-types-adaptation"]], "Dates and times limits in Python": [[26, "dates-and-times-limits-in-python"]], "DateStyle and IntervalStyle limits": [[26, "datestyle-and-intervalstyle-limits"]], "JSON adaptation": [[26, "json-adaptation"]], "Lists adaptation": [[26, "lists-adaptation"]], "UUID adaptation": [[26, "uuid-adaptation"]], "Network data types adaptation": [[26, "network-data-types-adaptation"]], "Enum adaptation": [[26, "enum-adaptation"]], "Using COPY TO and COPY FROM": [[27, "using-copy-to-and-copy-from"]], "Writing data row-by-row": [[27, "writing-data-row-by-row"]], "Reading data row-by-row": [[27, "reading-data-row-by-row"]], "Copying block-by-block": [[27, "copying-block-by-block"]], "Binary copy": [[27, "binary-copy"]], "Asynchronous copy support": [[27, "asynchronous-copy-support"]], "Example: copying a table across servers": [[27, "example-copying-a-table-across-servers"]], "Differences from psycopg2": [[28, "differences-from-psycopg2"]], "Server-side binding": [[28, "server-side-binding"]], "Multiple statements in the same query": [[28, "multiple-statements-in-the-same-query"]], "Multiple results returned from multiple statements": [[28, "multiple-results-returned-from-multiple-statements"]], "Different cast rules": [[28, "different-cast-rules"]], "You cannot use IN %s with a tuple": [[28, "you-cannot-use-in-s-with-a-tuple"]], "You cannot use IS %s": [[28, "you-cannot-use-is-s"]], "Cursors subclasses": [[28, "cursors-subclasses"]], "Different adaptation system": [[28, "different-adaptation-system"]], "Copy is no longer file-based": [[28, "copy-is-no-longer-file-based"]], "with connection": [[28, "with-connection"]], "callproc() is gone": [[28, "callproc-is-gone"]], "client_encoding is gone": [[28, "client-encoding-is-gone"]], "Transaction characteristics attributes don\u2019t affect autocommit sessions": [[28, "transaction-characteristics-attributes-don-t-affect-autocommit-sessions"]], "No default infinity dates handling": [[28, "no-default-infinity-dates-handling"]], "What\u2019s new in Psycopg 3": [[28, "what-s-new-in-psycopg-3"]], "Getting started with Psycopg 3": [[29, "getting-started-with-psycopg-3"]], "Installation": [[30, "installation"]], "Supported systems": [[30, "supported-systems"]], "Binary installation": [[30, "binary-installation"]], "Local installation": [[30, "local-installation"]], "Pure Python installation": [[30, "pure-python-installation"]], "Installing the connection pool": [[30, "installing-the-connection-pool"]], "Handling dependencies": [[30, "handling-dependencies"]], "Passing parameters to SQL queries": [[31, "passing-parameters-to-sql-queries"]], "execute() arguments": [[31, "execute-arguments"]], "Danger: SQL injection": [[31, "danger-sql-injection"]], "Binary parameters and results": [[31, "binary-parameters-and-results"]], "Adapting other PostgreSQL types": [[32, "adapting-other-postgresql-types"]], "Composite types casting": [[32, "composite-types-casting"]], "Range adaptation": [[32, "range-adaptation"]], "Multirange adaptation": [[32, "multirange-adaptation"]], "Hstore adaptation": [[32, "hstore-adaptation"]], "Geometry adaptation using Shapely": [[32, "geometry-adaptation-using-shapely"]], "Transactions management": [[33, "transactions-management"]], "Autocommit transactions": [[33, "autocommit-transactions"]], "Transaction contexts": [[33, "transaction-contexts"]], "Nested transactions": [[33, "nested-transactions"]], "Transaction characteristics": [[33, "transaction-characteristics"]], "Two-Phase Commit protocol support": [[33, "two-phase-commit-protocol-support"]], "Basic module usage": [[34, "basic-module-usage"]], "Main objects in Psycopg 3": [[34, "main-objects-in-psycopg-3"]], "Shortcuts": [[34, "shortcuts"]], "Connection context": [[34, "connection-context"]], "Adapting pyscopg to your program": [[34, "adapting-pyscopg-to-your-program"]], "Psycopg 3 \u2013 PostgreSQL database adapter for Python": [[35, "psycopg-3-postgresql-database-adapter-for-python"]], "Documentation": [[35, "documentation"]], "Release notes": [[35, "release-notes"]], "Indices and tables": [[35, "indices-and-tables"]], "psycopg release notes": [[36, "psycopg-release-notes"]], "Future releases": [[36, "future-releases"], [37, "future-releases"]], "Psycopg 3.2 (unreleased)": [[36, "psycopg-3-2-unreleased"]], "Psycopg 3.1.19": [[36, "psycopg-3-1-19"]], "Current release": [[36, "current-release"], [37, "current-release"]], "Psycopg 3.1.18": [[36, "psycopg-3-1-18"]], "Psycopg 3.1.17": [[36, "psycopg-3-1-17"]], "Psycopg 3.1.16": [[36, "psycopg-3-1-16"]], "Psycopg 3.1.15": [[36, "psycopg-3-1-15"]], "Psycopg 3.1.14": [[36, "psycopg-3-1-14"]], "Psycopg 3.1.13": [[36, "psycopg-3-1-13"]], "Psycopg 3.1.12": [[36, "psycopg-3-1-12"]], "Psycopg 3.1.11": [[36, "psycopg-3-1-11"]], "Psycopg 3.1.10": [[36, "psycopg-3-1-10"]], "Psycopg 3.1.9": [[36, "psycopg-3-1-9"]], "Psycopg 3.1.8": [[36, "psycopg-3-1-8"]], "Psycopg 3.1.7": [[36, "psycopg-3-1-7"]], "Psycopg 3.1.6": [[36, "psycopg-3-1-6"]], "Psycopg 3.1.5": [[36, "psycopg-3-1-5"]], "Psycopg 3.1.4": [[36, "psycopg-3-1-4"]], "Psycopg 3.1.3": [[36, "psycopg-3-1-3"]], "Psycopg 3.1.2": [[36, "psycopg-3-1-2"]], "Psycopg 3.1.1": [[36, "psycopg-3-1-1"]], "Psycopg 3.1": [[36, "psycopg-3-1"]], "Psycopg 3.0.17": [[36, "psycopg-3-0-17"]], "Psycopg 3.0.16": [[36, "psycopg-3-0-16"]], "Psycopg 3.0.15": [[36, "psycopg-3-0-15"]], "Psycopg 3.0.14": [[36, "psycopg-3-0-14"]], "Psycopg 3.0.13": [[36, "psycopg-3-0-13"]], "Psycopg 3.0.12": [[36, "psycopg-3-0-12"]], "Psycopg 3.0.11": [[36, "psycopg-3-0-11"]], "Psycopg 3.0.10": [[36, "psycopg-3-0-10"]], "Psycopg 3.0.9": [[36, "psycopg-3-0-9"]], "Psycopg 3.0.8": [[36, "psycopg-3-0-8"]], "Psycopg 3.0.7": [[36, "psycopg-3-0-7"]], "Psycopg 3.0.6": [[36, "psycopg-3-0-6"]], "Psycopg 3.0.5": [[36, "psycopg-3-0-5"]], "Psycopg 3.0.4": [[36, "psycopg-3-0-4"]], "Psycopg 3.0.3": [[36, "psycopg-3-0-3"]], "Psycopg 3.0.2": [[36, "psycopg-3-0-2"]], "Psycopg 3.0.1": [[36, "psycopg-3-0-1"]], "Psycopg 3.0": [[36, "psycopg-3-0"]], "Psycopg 3.0b1": [[36, "psycopg-3-0b1"]], "psycopg_pool release notes": [[37, "psycopg-pool-release-notes"]], "psycopg_pool 3.2.2 (unreleased)": [[37, "psycopg-pool-3-2-2-unreleased"]], "psycopg_pool 3.2.1": [[37, "psycopg-pool-3-2-1"]], "psycopg_pool 3.2.0": [[37, "psycopg-pool-3-2-0"]], "psycopg_pool 3.1.9": [[37, "psycopg-pool-3-1-9"]], "psycopg_pool 3.1.8": [[37, "psycopg-pool-3-1-8"]], "psycopg_pool 3.1.7": [[37, "psycopg-pool-3-1-7"]], "psycopg_pool 3.1.6": [[37, "psycopg-pool-3-1-6"]], "psycopg_pool 3.1.5": [[37, "psycopg-pool-3-1-5"]], "psycopg_pool 3.1.4": [[37, "psycopg-pool-3-1-4"]], "psycopg_pool 3.1.3": [[37, "psycopg-pool-3-1-3"]], "psycopg_pool 3.1.2": [[37, "psycopg-pool-3-1-2"]], "psycopg_pool 3.1.1": [[37, "psycopg-pool-3-1-1"]], "psycopg_pool 3.1.0": [[37, "psycopg-pool-3-1-0"]], "psycopg_pool 3.0.3": [[37, "psycopg-pool-3-0-3"]], "psycopg_pool 3.0.2": [[37, "psycopg-pool-3-0-2"]], "psycopg_pool 3.0.1": [[37, "psycopg-pool-3-0-1"]], "psycopg_pool 3.0": [[37, "psycopg-pool-3-0"]], "How to make a psycopg release": [[38, "how-to-make-a-psycopg-release"]], "When a new PostgreSQL major version is released": [[38, "when-a-new-postgresql-major-version-is-released"]]}, "indexentries": {"asynchronous": [[1, "index-5"], [1, "index-6"]], "ctrl-c": [[1, "index-3"]], "listen": [[1, "index-5"], [1, "index-6"]], "notify": [[1, "index-5"], [1, "index-6"]], "notifications": [[1, "index-5"], [1, "index-6"]], "sql command": [[1, "index-5"], [1, "index-6"], [27, "index-0"]], "asyncio": [[1, "index-1"]], "disconnections": [[1, "index-7"]], "gevent": [[1, "index-4"]], "threads": [[1, "index-0"]], "with": [[1, "index-2"]], "client-binding": [[2, "index-2"]], "client-side": [[2, "index-1"], [24, "index-0"]], "cursor": [[2, "index-0"], [2, "index-1"], [2, "index-2"], [2, "index-3"]], "named": [[2, "index-3"]], "portal": [[2, "index-3"]], "server-side": [[2, "index-3"]], "prepared statements": [[6, "index-0"]], "row factory": [[7, "index-1"]], "row maker": [[7, "index-1"]], "row factories": [[7, "index-0"]], "pep 0484": [[8, "index-0"]], "pep 675": [[8, "index-1"], [15, "index-0"], [24, "index-1"], [36, "index-3"]], "python enhancement proposals": [[8, "index-0"], [8, "index-1"], [15, "index-0"], [24, "index-1"], [36, "index-2"], [36, "index-3"]], "adaptcontext (class in psycopg.abc)": [[9, "psycopg.abc.AdaptContext"]], "dumper (class in psycopg.abc)": [[9, "psycopg.abc.Dumper"]], "loader (class in psycopg.abc)": [[9, "psycopg.abc.Loader"]], "adapters (psycopg.abc.adaptcontext property)": [[9, "psycopg.abc.AdaptContext.adapters"]], "connection (psycopg.abc.adaptcontext property)": [[9, "psycopg.abc.AdaptContext.connection"]], "dump() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.dump"]], "format (psycopg.abc.dumper attribute)": [[9, "psycopg.abc.Dumper.format"]], "format (psycopg.abc.loader attribute)": [[9, "psycopg.abc.Loader.format"]], "get_key() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.get_key"]], "load() (psycopg.abc.loader method)": [[9, "psycopg.abc.Loader.load"]], "module": [[9, "module-psycopg.abc"], [10, "module-psycopg.adapt"], [12, "module-psycopg.conninfo"], [14, "module-psycopg.crdb"], [16, "module-psycopg._dns"], [17, "module-psycopg.errors"], [19, "module-psycopg"], [21, "module-psycopg_pool"], [22, "module-psycopg.pq"], [23, "module-psycopg.rows"], [24, "module-psycopg.sql"], [25, "module-psycopg.types"]], "oid (psycopg.abc.dumper attribute)": [[9, "psycopg.abc.Dumper.oid"]], "psycopg.abc": [[9, "module-psycopg.abc"]], "quote() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.quote"]], "upgrade() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.upgrade"]], "auto (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.AUTO"]], "adaptersmap (class in psycopg.adapt)": [[10, "psycopg.adapt.AdaptersMap"]], "binary (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.BINARY"]], "dumper (class in psycopg.adapt)": [[10, "psycopg.adapt.Dumper"]], "loader (class in psycopg.adapt)": [[10, "psycopg.adapt.Loader"]], "pyformat (class in psycopg.adapt)": [[10, "psycopg.adapt.PyFormat"]], "text (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.TEXT"]], "transformer (class in psycopg.adapt)": [[10, "psycopg.adapt.Transformer"]], "dump() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.dump"]], "format (psycopg.adapt.dumper attribute)": [[10, "psycopg.adapt.Dumper.format"]], "format (psycopg.adapt.loader attribute)": [[10, "psycopg.adapt.Loader.format"]], "get_dumper() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_dumper"]], "get_dumper_by_oid() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_dumper_by_oid"]], "get_key() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.get_key"]], "get_loader() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_loader"]], "load() (psycopg.adapt.loader method)": [[10, "psycopg.adapt.Loader.load"]], "psycopg.adapt": [[10, "module-psycopg.adapt"]], "quote() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.quote"]], "register_dumper() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.register_dumper"]], "register_loader() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.register_loader"]], "types (psycopg.adapt.adaptersmap attribute)": [[10, "psycopg.adapt.AdaptersMap.types"]], "upgrade() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.upgrade"]], "asyncconnection (class in psycopg)": [[11, "psycopg.AsyncConnection"]], "connection (class in psycopg)": [[11, "psycopg.Connection"]], "add_notice_handler() (psycopg.connection method)": [[11, "psycopg.Connection.add_notice_handler"]], "add_notify_handler() (psycopg.connection method)": [[11, "psycopg.Connection.add_notify_handler"]], "autocommit (psycopg.connection attribute)": [[11, "psycopg.Connection.autocommit"]], "broken (psycopg.connection attribute)": [[11, "psycopg.Connection.broken"]], "cancel() (psycopg.connection method)": [[11, "psycopg.Connection.cancel"]], "cancel_safe() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.cancel_safe"]], "cancel_safe() (psycopg.connection method)": [[11, "psycopg.Connection.cancel_safe"]], "close() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.close"]], "close() (psycopg.connection method)": [[11, "psycopg.Connection.close"]], "closed (psycopg.connection attribute)": [[11, "psycopg.Connection.closed"]], "commit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.commit"]], "commit() (psycopg.connection method)": [[11, "psycopg.Connection.commit"]], "connect() (psycopg.asyncconnection class method)": [[11, "psycopg.AsyncConnection.connect"]], "connect() (psycopg.connection class method)": [[11, "psycopg.Connection.connect"]], "cursor() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.cursor"]], "cursor() (psycopg.connection method)": [[11, "psycopg.Connection.cursor"]], "cursor_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.cursor_factory"]], "cursor_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.cursor_factory"]], "deferrable (psycopg.connection attribute)": [[11, "psycopg.Connection.deferrable"]], "execute() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.execute"]], "execute() (psycopg.connection method)": [[11, "psycopg.Connection.execute"]], "fileno() (psycopg.connection method)": [[11, "psycopg.Connection.fileno"]], "info (psycopg.connection attribute)": [[11, "psycopg.Connection.info"]], "isolation_level (psycopg.connection attribute)": [[11, "psycopg.Connection.isolation_level"]], "notifies() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.notifies"]], "notifies() (psycopg.connection method)": [[11, "psycopg.Connection.notifies"]], "pgconn (psycopg.connection attribute)": [[11, "psycopg.Connection.pgconn"]], "pipeline() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.pipeline"]], "pipeline() (psycopg.connection method)": [[11, "psycopg.Connection.pipeline"]], "prepare_threshold (psycopg.connection attribute)": [[11, "psycopg.Connection.prepare_threshold"]], "prepared_max (psycopg.connection attribute)": [[11, "psycopg.Connection.prepared_max"]], "read_only (psycopg.connection attribute)": [[11, "psycopg.Connection.read_only"]], "remove_notice_handler() (psycopg.connection method)": [[11, "psycopg.Connection.remove_notice_handler"]], "remove_notify_handler() (psycopg.connection method)": [[11, "psycopg.Connection.remove_notify_handler"]], "rollback() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.rollback"]], "rollback() (psycopg.connection method)": [[11, "psycopg.Connection.rollback"]], "row_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.row_factory"]], "row_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.row_factory"]], "server_cursor_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.server_cursor_factory"]], "server_cursor_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.server_cursor_factory"]], "set_autocommit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_autocommit"]], "set_autocommit() (psycopg.connection method)": [[11, "psycopg.Connection.set_autocommit"]], "set_deferrable() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_deferrable"]], "set_deferrable() (psycopg.connection method)": [[11, "psycopg.Connection.set_deferrable"]], "set_isolation_level() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_isolation_level"]], "set_isolation_level() (psycopg.connection method)": [[11, "psycopg.Connection.set_isolation_level"]], "set_read_only() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_read_only"]], "set_read_only() (psycopg.connection method)": [[11, "psycopg.Connection.set_read_only"]], "tpc_begin() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_begin"]], "tpc_commit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_commit"]], "tpc_commit() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_commit"]], "tpc_prepare() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_prepare"]], "tpc_prepare() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_prepare"]], "tpc_recover() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_recover"]], "tpc_recover() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_recover"]], "tpc_rollback() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_rollback"]], "tpc_rollback() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_rollback"]], "transaction() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.transaction"]], "transaction() (psycopg.connection method)": [[11, "psycopg.Connection.transaction"]], "xid() (psycopg.connection method)": [[11, "psycopg.Connection.xid"]], "conninfo_to_dict() (in module psycopg.conninfo)": [[12, "psycopg.conninfo.conninfo_to_dict"]], "make_conninfo() (in module psycopg.conninfo)": [[12, "psycopg.conninfo.make_conninfo"]], "psycopg.conninfo": [[12, "module-psycopg.conninfo"]], "asynccopy (class in psycopg)": [[13, "psycopg.AsyncCopy"]], "asynclibpqwriter (class in psycopg.copy)": [[13, "psycopg.copy.AsyncLibpqWriter"]], "asyncwriter (class in psycopg.copy)": [[13, "psycopg.copy.AsyncWriter"]], "copy (class in psycopg)": [[13, "psycopg.Copy"]], "filewriter (class in psycopg.copy)": [[13, "psycopg.copy.FileWriter"]], "libpqwriter (class in psycopg.copy)": [[13, "psycopg.copy.LibpqWriter"]], "writer (class in psycopg.copy)": [[13, "psycopg.copy.Writer"]], "finish() (psycopg.copy.asyncwriter method)": [[13, "psycopg.copy.AsyncWriter.finish"]], "finish() (psycopg.copy.writer method)": [[13, "psycopg.copy.Writer.finish"]], "read() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.read"]], "read() (psycopg.copy method)": [[13, "psycopg.Copy.read"]], "read_row() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.read_row"]], "read_row() (psycopg.copy method)": [[13, "psycopg.Copy.read_row"]], "rows() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.rows"]], "rows() (psycopg.copy method)": [[13, "psycopg.Copy.rows"]], "set_types() (psycopg.copy method)": [[13, "psycopg.Copy.set_types"]], "write() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.write"]], "write() (psycopg.copy method)": [[13, "psycopg.Copy.write"]], "write() (psycopg.copy.asyncwriter method)": [[13, "psycopg.copy.AsyncWriter.write"]], "write() (psycopg.copy.writer method)": [[13, "psycopg.copy.Writer.write"]], "write_row() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.write_row"]], "write_row() (psycopg.copy method)": [[13, "psycopg.Copy.write_row"]], "asynccrdbconnection (class in psycopg.crdb)": [[14, "psycopg.crdb.AsyncCrdbConnection"]], "crdbconnection (class in psycopg.crdb)": [[14, "psycopg.crdb.CrdbConnection"]], "crdbconnectioninfo (class in psycopg.crdb)": [[14, "psycopg.crdb.CrdbConnectionInfo"]], "adapters (in module psycopg.crdb)": [[14, "psycopg.crdb.adapters"]], "connect() (in module psycopg.crdb)": [[14, "psycopg.crdb.connect"]], "is_crdb() (psycopg.crdb.crdbconnection class method)": [[14, "psycopg.crdb.CrdbConnection.is_crdb"]], "psycopg.crdb": [[14, "module-psycopg.crdb"]], "server_version (psycopg.crdb.crdbconnectioninfo attribute)": [[14, "psycopg.crdb.CrdbConnectionInfo.server_version"]], "vendor (psycopg.crdb.crdbconnectioninfo attribute)": [[14, "psycopg.crdb.CrdbConnectionInfo.vendor"]], "asyncclientcursor (class in psycopg)": [[15, "psycopg.AsyncClientCursor"]], "asynccursor (class in psycopg)": [[15, "psycopg.AsyncCursor"]], "asyncrawcursor (class in psycopg)": [[15, "psycopg.AsyncRawCursor"]], "asyncservercursor (class in psycopg)": [[15, "psycopg.AsyncServerCursor"]], "clientcursor (class in psycopg)": [[15, "psycopg.ClientCursor"]], "cursor (class in psycopg)": [[15, "psycopg.Cursor"]], "rawcursor (class in psycopg)": [[15, "psycopg.RawCursor"]], "servercursor (class in psycopg)": [[15, "psycopg.ServerCursor"]], "_query (psycopg.cursor attribute)": [[15, "psycopg.Cursor._query"]], "close() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.close"]], "close() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.close"]], "close() (psycopg.cursor method)": [[15, "psycopg.Cursor.close"]], "close() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.close"]], "closed (psycopg.cursor attribute)": [[15, "psycopg.Cursor.closed"]], "connection (psycopg.asynccursor attribute)": [[15, "psycopg.AsyncCursor.connection"]], "connection (psycopg.cursor attribute)": [[15, "psycopg.Cursor.connection"]], "copy() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.copy"]], "copy() (psycopg.cursor method)": [[15, "psycopg.Cursor.copy"]], "description (psycopg.cursor attribute)": [[15, "psycopg.Cursor.description"]], "execute() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.execute"]], "execute() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.execute"]], "execute() (psycopg.cursor method)": [[15, "psycopg.Cursor.execute"]], "execute() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.execute"]], "executemany() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.executemany"]], "executemany() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.executemany"]], "executemany() (psycopg.cursor method)": [[15, "psycopg.Cursor.executemany"]], "executemany() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.executemany"]], "fetchall() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchall"]], "fetchall() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchall"]], "fetchall() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchall"]], "fetchall() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchall"]], "fetchmany() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchmany"]], "fetchmany() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchmany"]], "fetchmany() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchmany"]], "fetchmany() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchmany"]], "fetchone() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchone"]], "fetchone() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchone"]], "fetchone() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchone"]], "fetchone() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchone"]], "format (psycopg.cursor attribute)": [[15, "psycopg.Cursor.format"]], "itersize (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.itersize"]], "mogrify() (psycopg.clientcursor method)": [[15, "psycopg.ClientCursor.mogrify"]], "name (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.name"]], "nextset() (psycopg.cursor method)": [[15, "psycopg.Cursor.nextset"]], "pgresult (psycopg.cursor attribute)": [[15, "psycopg.Cursor.pgresult"]], "row_factory (psycopg.cursor attribute)": [[15, "psycopg.Cursor.row_factory"]], "rowcount (psycopg.cursor attribute)": [[15, "psycopg.Cursor.rowcount"]], "rownumber (psycopg.cursor attribute)": [[15, "psycopg.Cursor.rownumber"]], "scroll() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.scroll"]], "scroll() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.scroll"]], "scroll() (psycopg.cursor method)": [[15, "psycopg.Cursor.scroll"]], "scroll() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.scroll"]], "scrollable (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.scrollable"]], "statusmessage (psycopg.cursor attribute)": [[15, "psycopg.Cursor.statusmessage"]], "stream() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.stream"]], "stream() (psycopg.cursor method)": [[15, "psycopg.Cursor.stream"]], "withhold (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.withhold"]], "rfc": [[16, "index-0"]], "rfc 2782": [[16, "index-0"]], "_get_connection_params() (psycopg.asyncconnection class method)": [[16, "psycopg.AsyncConnection._get_connection_params"]], "_get_connection_params() (psycopg.connection class method)": [[16, "psycopg.Connection._get_connection_params"]], "psycopg._dns": [[16, "module-psycopg._dns"]], "resolve_hostaddr_async() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_hostaddr_async"]], "resolve_srv() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_srv"]], "resolve_srv_async() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_srv_async"]], "class": [[17, "index-0"]], "connectiontimeout": [[17, "psycopg.errors.ConnectionTimeout"]], "db-api": [[17, "index-1"]], "dataerror": [[17, "psycopg.DataError"]], "databaseerror": [[17, "psycopg.DatabaseError"]], "diagnostic (class in psycopg.errors)": [[17, "psycopg.errors.Diagnostic"]], "error": [[17, "index-0"], [17, "psycopg.Error"]], "exceptions": [[17, "index-1"], [17, "index-2"]], "integrityerror": [[17, "psycopg.IntegrityError"]], "interfaceerror": [[17, "psycopg.InterfaceError"]], "internalerror": [[17, "psycopg.InternalError"]], "notsupportederror": [[17, "psycopg.NotSupportedError"]], "operationalerror": [[17, "psycopg.OperationalError"]], "pipelineaborted": [[17, "psycopg.errors.PipelineAborted"]], "postgresql": [[17, "index-2"]], "programmingerror": [[17, "psycopg.ProgrammingError"]], "warning": [[17, "psycopg.Warning"]], "column_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.column_name"]], "constraint_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.constraint_name"]], "context (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.context"]], "datatype_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.datatype_name"]], "diag (psycopg.error attribute)": [[17, "psycopg.Error.diag"]], "internal_position (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.internal_position"]], "internal_query (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.internal_query"]], "lookup() (in module psycopg.errors)": [[17, "psycopg.errors.lookup"]], "message_detail (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_detail"]], "message_hint (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_hint"]], "message_primary (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_primary"]], "pgconn (psycopg.error attribute)": [[17, "psycopg.Error.pgconn"]], "pgresult (psycopg.error attribute)": [[17, "psycopg.Error.pgresult"]], "psycopg.errors": [[17, "module-psycopg.errors"]], "schema_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.schema_name"]], "severity (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.severity"]], "severity_nonlocalized (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.severity_nonlocalized"]], "source_file (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_file"]], "source_function (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_function"]], "source_line (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_line"]], "sqlstate (psycopg.error attribute)": [[17, "psycopg.Error.sqlstate"]], "sqlstate (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.sqlstate"]], "statement_position (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.statement_position"]], "table_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.table_name"]], "adapters (in module psycopg)": [[19, "psycopg.adapters"]], "capabilities (in module psycopg)": [[19, "psycopg.capabilities"]], "connect() (in module psycopg)": [[19, "psycopg.connect"]], "psycopg": [[19, "module-psycopg"]], "asyncpipeline (class in psycopg)": [[20, "psycopg.AsyncPipeline"]], "asynctransaction (class in psycopg)": [[20, "psycopg.AsyncTransaction"]], "capabilities (class in psycopg)": [[20, "psycopg.Capabilities"]], "column (class in psycopg)": [[20, "psycopg.Column"]], "connectioninfo (class in psycopg)": [[20, "psycopg.ConnectionInfo"]], "isolationlevel (class in psycopg)": [[20, "psycopg.IsolationLevel"]], "notify (class in psycopg)": [[20, "psycopg.Notify"]], "pipeline (class in psycopg)": [[20, "psycopg.Pipeline"]], "read_committed (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.READ_COMMITTED"]], "read_uncommitted (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.READ_UNCOMMITTED"]], "repeatable_read (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.REPEATABLE_READ"]], "rollback": [[20, "psycopg.Rollback"]], "serializable (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.SERIALIZABLE"]], "transaction (class in psycopg)": [[20, "psycopg.Transaction"]], "xid (class in psycopg)": [[20, "psycopg.Xid"]], "backend_pid (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.backend_pid"]], "bqual (psycopg.xid attribute)": [[20, "psycopg.Xid.bqual"]], "channel (psycopg.notify attribute)": [[20, "psycopg.Notify.channel"]], "connection (psycopg.asynctransaction attribute)": [[20, "psycopg.AsyncTransaction.connection"]], "connection (psycopg.transaction attribute)": [[20, "psycopg.Transaction.connection"]], "database (psycopg.xid attribute)": [[20, "psycopg.Xid.database"]], "dbname (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.dbname"]], "display_size (psycopg.column attribute)": [[20, "psycopg.Column.display_size"]], "dsn (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.dsn"]], "encoding (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.encoding"]], "error_message (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.error_message"]], "format_id (psycopg.xid attribute)": [[20, "psycopg.Xid.format_id"]], "get_parameters() (psycopg.connectioninfo method)": [[20, "psycopg.ConnectionInfo.get_parameters"]], "gtrid (psycopg.xid attribute)": [[20, "psycopg.Xid.gtrid"]], "has_cancel_safe() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_cancel_safe"]], "has_encrypt_password() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_encrypt_password"]], "has_hostaddr() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_hostaddr"]], "has_pgbouncer_prepared() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_pgbouncer_prepared"]], "has_pipeline() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_pipeline"]], "has_set_trace_flags() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_set_trace_flags"]], "host (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.host"]], "hostaddr (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.hostaddr"]], "internal_size (psycopg.column attribute)": [[20, "psycopg.Column.internal_size"]], "is_supported() (psycopg.pipeline class method)": [[20, "psycopg.Pipeline.is_supported"]], "name (psycopg.column attribute)": [[20, "psycopg.Column.name"]], "options (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.options"]], "owner (psycopg.xid attribute)": [[20, "psycopg.Xid.owner"]], "parameter_status() (psycopg.connectioninfo method)": [[20, "psycopg.ConnectionInfo.parameter_status"]], "password (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.password"]], "payload (psycopg.notify attribute)": [[20, "psycopg.Notify.payload"]], "pid (psycopg.notify attribute)": [[20, "psycopg.Notify.pid"]], "pipeline_status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.pipeline_status"]], "port (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.port"]], "precision (psycopg.column attribute)": [[20, "psycopg.Column.precision"]], "prepared (psycopg.xid attribute)": [[20, "psycopg.Xid.prepared"]], "savepoint_name (psycopg.transaction attribute)": [[20, "psycopg.Transaction.savepoint_name"]], "scale (psycopg.column attribute)": [[20, "psycopg.Column.scale"]], "server_version (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.server_version"]], "status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.status"]], "sync() (psycopg.asyncpipeline method)": [[20, "psycopg.AsyncPipeline.sync"]], "sync() (psycopg.pipeline method)": [[20, "psycopg.Pipeline.sync"]], "timezone (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.timezone"]], "transaction_status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.transaction_status"]], "type_code (psycopg.column attribute)": [[20, "psycopg.Column.type_code"]], "user (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.user"]], "vendor (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.vendor"]], "asyncconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.AsyncConnectionPool"]], "asyncnullconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.AsyncNullConnectionPool"]], "connection": [[21, "index-0"], [34, "index-1"]], "connectionpool (class in psycopg_pool)": [[21, "psycopg_pool.ConnectionPool"]], "nullconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.NullConnectionPool"]], "pool": [[21, "index-0"]], "poolclosed (class in psycopg_pool)": [[21, "psycopg_pool.PoolClosed"]], "pooltimeout (class in psycopg_pool)": [[21, "psycopg_pool.PoolTimeout"]], "toomanyrequests (class in psycopg_pool)": [[21, "psycopg_pool.TooManyRequests"]], "check() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.check"]], "check() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.check"]], "check() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.check"]], "check_connection() (psycopg_pool.asyncconnectionpool static method)": [[21, "psycopg_pool.AsyncConnectionPool.check_connection"]], "check_connection() (psycopg_pool.connectionpool static method)": [[21, "psycopg_pool.ConnectionPool.check_connection"]], "close() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.close"]], "close() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.close"]], "connection() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.connection"]], "connection() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.connection"]], "get_stats() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.get_stats"]], "getconn() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.getconn"]], "getconn() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.getconn"]], "max_size (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.max_size"]], "min_size (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.min_size"]], "name (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.name"]], "open() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.open"]], "open() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.open"]], "pop_stats() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.pop_stats"]], "psycopg_pool": [[21, "module-psycopg_pool"]], "putconn() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.putconn"]], "putconn() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.putconn"]], "resize() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.resize"]], "resize() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.resize"]], "resize() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.resize"]], "wait() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.wait"]], "wait() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.wait"]], "wait() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.wait"]], "aborted (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.ABORTED"]], "active (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.ACTIVE"]], "allocated (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.ALLOCATED"]], "bad (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.BAD"]], "bad_response (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.BAD_RESPONSE"]], "binary (psycopg.pq.format attribute)": [[22, "psycopg.pq.Format.BINARY"]], "column_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.COLUMN_NAME"]], "command_ok (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COMMAND_OK"]], "constraint_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.CONSTRAINT_NAME"]], "context (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.CONTEXT"]], "copy_both (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_BOTH"]], "copy_in (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_IN"]], "copy_out (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_OUT"]], "connstatus (class in psycopg.pq)": [[22, "psycopg.pq.ConnStatus"]], "conninfo (class in psycopg.pq)": [[22, "psycopg.pq.Conninfo"]], "datatype_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.DATATYPE_NAME"]], "diagnosticfield (class in psycopg.pq)": [[22, "psycopg.pq.DiagnosticField"]], "empty_query (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.EMPTY_QUERY"]], "escaping (class in psycopg.pq)": [[22, "psycopg.pq.Escaping"]], "execstatus (class in psycopg.pq)": [[22, "psycopg.pq.ExecStatus"]], "failed (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.FAILED"]], "fatal_error (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.FATAL_ERROR"]], "format (class in psycopg.pq)": [[22, "psycopg.pq.Format"]], "idle (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.IDLE"]], "inerror (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.INERROR"]], "internal_position (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.INTERNAL_POSITION"]], "internal_query (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.INTERNAL_QUERY"]], "intrans (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.INTRANS"]], "message_detail (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_DETAIL"]], "message_hint (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_HINT"]], "message_primary (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_PRIMARY"]], "nonfatal_error (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.NONFATAL_ERROR"]], "no_attempt (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.NO_ATTEMPT"]], "no_response (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.NO_RESPONSE"]], "off (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.OFF"]], "ok (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.OK"]], "ok (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.OK"]], "ok (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.OK"]], "on (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.ON"]], "pgcancel (class in psycopg.pq)": [[22, "psycopg.pq.PGcancel"]], "pgconn (class in psycopg.pq)": [[22, "psycopg.pq.PGconn"]], "pgresult (class in psycopg.pq)": [[22, "psycopg.pq.PGresult"]], "pipeline_aborted (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.PIPELINE_ABORTED"]], "pipeline_sync (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.PIPELINE_SYNC"]], "psycopg_impl": [[22, "index-1"], [22, "index-2"], [30, "index-1"]], "ping (class in psycopg.pq)": [[22, "psycopg.pq.Ping"]], "pipelinestatus (class in psycopg.pq)": [[22, "psycopg.pq.PipelineStatus"]], "pollingstatus (class in psycopg.pq)": [[22, "psycopg.pq.PollingStatus"]], "reading (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.READING"]], "regress_mode (psycopg.pq.trace attribute)": [[22, "psycopg.pq.Trace.REGRESS_MODE"]], "reject (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.REJECT"]], "schema_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SCHEMA_NAME"]], "severity (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SEVERITY"]], "severity_nonlocalized (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SEVERITY_NONLOCALIZED"]], "single_tuple (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.SINGLE_TUPLE"]], "source_file (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_FILE"]], "source_function (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_FUNCTION"]], "source_line (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_LINE"]], "sqlstate (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SQLSTATE"]], "statement_position (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.STATEMENT_POSITION"]], "suppress_timestamps (psycopg.pq.trace attribute)": [[22, "psycopg.pq.Trace.SUPPRESS_TIMESTAMPS"]], "table_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.TABLE_NAME"]], "text (psycopg.pq.format attribute)": [[22, "psycopg.pq.Format.TEXT"]], "tuples_ok (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.TUPLES_OK"]], "trace (class in psycopg.pq)": [[22, "psycopg.pq.Trace"]], "transactionstatus (class in psycopg.pq)": [[22, "psycopg.pq.TransactionStatus"]], "unknown (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.UNKNOWN"]], "writing (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.WRITING"]], "__build_version__ (in module psycopg.pq)": [[22, "psycopg.pq.__build_version__"]], "__impl__ (in module psycopg.pq)": [[22, "psycopg.pq.__impl__"]], "cancel() (psycopg.pq.pgcancel method)": [[22, "psycopg.pq.PGcancel.cancel"]], "encrypt_password() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.encrypt_password"]], "environment variable": [[22, "index-1"], [22, "index-2"], [30, "index-0"], [30, "index-1"], [36, "index-1"]], "error_message() (in module psycopg.pq)": [[22, "psycopg.pq.error_message"]], "free() (psycopg.pq.pgcancel method)": [[22, "psycopg.pq.PGcancel.free"]], "get_cancel() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.get_cancel"]], "libpq": [[22, "index-0"]], "needs_password (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.needs_password"]], "pgconn_ptr (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.pgconn_ptr"]], "pgresult_ptr (psycopg.pq.pgresult attribute)": [[22, "psycopg.pq.PGresult.pgresult_ptr"]], "psycopg.pq": [[22, "module-psycopg.pq"]], "set_trace_flags() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.set_trace_flags"]], "trace() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.trace"]], "untrace() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.untrace"]], "used_password (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.used_password"]], "version() (in module psycopg.pq)": [[22, "psycopg.pq.version"]], "asyncrowfactory (class in psycopg.rows)": [[23, "psycopg.rows.AsyncRowFactory"]], "baserowfactory (class in psycopg.rows)": [[23, "psycopg.rows.BaseRowFactory"]], "rowfactory (class in psycopg.rows)": [[23, "psycopg.rows.RowFactory"]], "rowmaker (class in psycopg.rows)": [[23, "psycopg.rows.RowMaker"]], "__call__() (psycopg.rows.rowfactory method)": [[23, "psycopg.rows.RowFactory.__call__"]], "__call__() (psycopg.rows.rowmaker method)": [[23, "psycopg.rows.RowMaker.__call__"]], "args_row() (in module psycopg.rows)": [[23, "psycopg.rows.args_row"]], "class_row() (in module psycopg.rows)": [[23, "psycopg.rows.class_row"]], "dict_row() (in module psycopg.rows)": [[23, "psycopg.rows.dict_row"]], "kwargs_row() (in module psycopg.rows)": [[23, "psycopg.rows.kwargs_row"]], "namedtuple_row() (in module psycopg.rows)": [[23, "psycopg.rows.namedtuple_row"]], "psycopg.rows": [[23, "module-psycopg.rows"]], "scalar_row() (in module psycopg.rows)": [[23, "psycopg.rows.scalar_row"]], "tuple_row() (in module psycopg.rows)": [[23, "psycopg.rows.tuple_row"]], "binding": [[24, "index-0"]], "composable (class in psycopg.sql)": [[24, "psycopg.sql.Composable"]], "composed (class in psycopg.sql)": [[24, "psycopg.sql.Composed"]], "default (in module psycopg.sql)": [[24, "psycopg.sql.DEFAULT"]], "identifier (class in psycopg.sql)": [[24, "psycopg.sql.Identifier"]], "literal (class in psycopg.sql)": [[24, "psycopg.sql.Literal"]], "null (in module psycopg.sql)": [[24, "psycopg.sql.NULL"]], "placeholder (class in psycopg.sql)": [[24, "psycopg.sql.Placeholder"]], "sql (class in psycopg.sql)": [[24, "psycopg.sql.SQL"]], "as_bytes() (psycopg.sql.composable method)": [[24, "psycopg.sql.Composable.as_bytes"]], "as_string() (psycopg.sql.composable method)": [[24, "psycopg.sql.Composable.as_string"]], "format() (psycopg.sql.sql method)": [[24, "psycopg.sql.SQL.format"]], "join() (psycopg.sql.composed method)": [[24, "psycopg.sql.Composed.join"]], "join() (psycopg.sql.sql method)": [[24, "psycopg.sql.SQL.join"]], "psycopg.sql": [[24, "module-psycopg.sql"]], "quote() (in module psycopg.sql)": [[24, "psycopg.sql.quote"]], "json (class in psycopg.types.json)": [[25, "psycopg.types.json.Json"]], "jsonb (class in psycopg.types.json)": [[25, "psycopg.types.json.Jsonb"]], "typeinfo (class in psycopg.types)": [[25, "psycopg.types.TypeInfo"]], "typesregistry (class in psycopg.types)": [[25, "psycopg.types.TypesRegistry"]], "__getitem__() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.__getitem__"]], "fetch() (psycopg.types.typeinfo class method)": [[25, "psycopg.types.TypeInfo.fetch"]], "get() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get"]], "get_by_subtype() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get_by_subtype"]], "get_oid() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get_oid"]], "psycopg.types": [[25, "module-psycopg.types"]], "register() (psycopg.types.typeinfo method)": [[25, "psycopg.types.TypeInfo.register"]], "set_json_dumps() (in module psycopg.types.json)": [[25, "psycopg.types.json.set_json_dumps"]], "set_json_loads() (in module psycopg.types.json)": [[25, "psycopg.types.json.set_json_loads"]], "adaptation": [[26, "index-0"], [26, "index-1"], [26, "index-2"], [26, "index-3"], [26, "index-4"], [32, "index-0"], [32, "index-1"], [32, "index-4"]], "binary string": [[26, "index-4"]], "boolean": [[26, "index-1"]], "data types": [[26, "index-0"], [32, "index-0"], [32, "index-1"], [32, "index-2"], [32, "index-3"], [32, "index-4"], [32, "index-5"]], "datestyle": [[26, "index-5"]], "decimal": [[26, "index-2"]], "encoding": [[26, "index-3"]], "enuminfo (class in psycopg.types.enum)": [[26, "psycopg.types.enum.EnumInfo"]], "float": [[26, "index-2"]], "integer": [[26, "index-2"]], "intervalstyle": [[26, "index-5"]], "objects": [[26, "index-0"], [32, "index-0"]], "sql_ascii": [[26, "index-3"]], "strings": [[26, "index-3"]], "unicode": [[26, "index-3"]], "bytea": [[26, "index-4"]], "bytearray": [[26, "index-4"]], "bytes": [[26, "index-4"]], "enum (psycopg.types.enum.enuminfo attribute)": [[26, "psycopg.types.enum.EnumInfo.enum"]], "labels (psycopg.types.enum.enuminfo attribute)": [[26, "psycopg.types.enum.EnumInfo.labels"]], "memoryview": [[26, "index-4"]], "numbers": [[26, "index-2"]], "register_enum() (in module psycopg.types.enum)": [[26, "psycopg.types.enum.register_enum"]], "copy": [[27, "index-0"]], "differences": [[28, "index-0"]], "psycopg2": [[28, "index-0"]], "path": [[30, "index-0"]], "binary": [[31, "index-2"]], "parameters": [[31, "index-0"], [31, "index-2"]], "query": [[31, "index-0"]], "sql injection": [[31, "index-1"]], "security": [[31, "index-1"]], "composite types": [[32, "index-1"]], "compositeinfo (class in psycopg.types.composite)": [[32, "psycopg.types.composite.CompositeInfo"]], "multirange (class in psycopg.types.multirange)": [[32, "psycopg.types.multirange.Multirange"]], "multirangeinfo (class in psycopg.types.multirange)": [[32, "psycopg.types.multirange.MultirangeInfo"]], "postgis": [[32, "index-5"]], "range (class in psycopg.types.range)": [[32, "psycopg.types.range.Range"]], "rangeinfo (class in psycopg.types.range)": [[32, "psycopg.types.range.RangeInfo"]], "dict": [[32, "index-4"]], "geometry": [[32, "index-5"]], "hstore": [[32, "index-4"]], "isempty (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.isempty"]], "lower (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower"]], "lower_inc (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower_inc"]], "lower_inf (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower_inf"]], "namedtuple": [[32, "index-1"]], "psycopg.types.shapely.register_shapely() (in module psycopg)": [[32, "psycopg.psycopg.types.shapely.register_shapely"]], "python_type (psycopg.types.composite.compositeinfo attribute)": [[32, "psycopg.types.composite.CompositeInfo.python_type"]], "range": [[32, "index-2"], [32, "index-3"]], "register_composite() (in module psycopg.types.composite)": [[32, "psycopg.types.composite.register_composite"]], "register_hstore() (in module psycopg.types.hstore)": [[32, "psycopg.types.hstore.register_hstore"]], "register_multirange() (in module psycopg.types.multirange)": [[32, "psycopg.types.multirange.register_multirange"]], "register_range() (in module psycopg.types.range)": [[32, "psycopg.types.range.register_range"]], "tuple": [[32, "index-1"]], "upper (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper"]], "upper_inc (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper_inc"]], "upper_inf (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper_inf"]], "infailedsqltransaction": [[33, "index-1"]], "transaction": [[33, "index-3"]], "transactions management": [[33, "index-0"]], "two-phase commit": [[33, "index-3"]], "idle in transaction": [[33, "index-2"]], "example": [[34, "index-0"]], "usage": [[34, "index-0"]], "`!with`": [[34, "index-1"]], "news": [[36, "index-0"], [37, "index-0"]], "pep 475": [[36, "index-2"]], "pgconnect_timeout": [[36, "index-1"]], "release notes": [[36, "index-0"], [37, "index-0"]]}}) \ No newline at end of file +Search.setIndex({"docnames": ["advanced/adapt", "advanced/async", "advanced/cursors", "advanced/index", "advanced/pipeline", "advanced/pool", "advanced/prepare", "advanced/rows", "advanced/typing", "api/abc", "api/adapt", "api/connections", "api/conninfo", "api/copy", "api/crdb", "api/cursors", "api/dns", "api/errors", "api/index", "api/module", "api/objects", "api/pool", "api/pq", "api/rows", "api/sql", "api/types", "basic/adapt", "basic/copy", "basic/from_pg2", "basic/index", "basic/install", "basic/params", "basic/pgtypes", "basic/transactions", "basic/usage", "index", "news", "news_pool", "release"], "filenames": ["advanced/adapt.rst", "advanced/async.rst", "advanced/cursors.rst", "advanced/index.rst", "advanced/pipeline.rst", "advanced/pool.rst", "advanced/prepare.rst", "advanced/rows.rst", "advanced/typing.rst", "api/abc.rst", "api/adapt.rst", "api/connections.rst", "api/conninfo.rst", "api/copy.rst", "api/crdb.rst", "api/cursors.rst", "api/dns.rst", "api/errors.rst", "api/index.rst", "api/module.rst", "api/objects.rst", "api/pool.rst", "api/pq.rst", "api/rows.rst", "api/sql.rst", "api/types.rst", "basic/adapt.rst", "basic/copy.rst", "basic/from_pg2.rst", "basic/index.rst", "basic/install.rst", "basic/params.rst", "basic/pgtypes.rst", "basic/transactions.rst", "basic/usage.rst", "index.rst", "news.rst", "news_pool.rst", "release.rst"], "titles": ["Data adaptation configuration", "Concurrent operations", "Cursor types", "More advanced topics", "Pipeline mode support", "Connection pools", "Prepared statements", "Row factories", "Static Typing", "abc \u2013 Psycopg abstract classes", "adapt \u2013 Types adaptation", "Connection classes", "conninfo \u2013 manipulate connection strings", "COPY-related objects", "crdb \u2013 CockroachDB support", "Cursor classes", "_dns \u2013 DNS resolution utilities", "errors \u2013 Package exceptions", "Psycopg 3 API", "The psycopg module", "Other top-level objects", "psycopg_pool \u2013 Connection pool implementations", "pq \u2013 libpq wrapper module", "rows \u2013 row factory implementations", "sql \u2013 SQL string composition", "types \u2013 Types information and adapters", "Adapting basic Python types", "Using COPY TO and COPY FROM", "Differences from psycopg2", "Getting started with Psycopg 3", "Installation", "Passing parameters to SQL queries", "Adapting other PostgreSQL types", "Transactions management", "Basic module usage", "Psycopg 3 \u2013 PostgreSQL database adapter for Python", "psycopg release notes", "psycopg_pool release notes", "How to make a psycopg release"], "terms": {"The": [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 13, 14, 16, 17, 18, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "system": [0, 5, 6, 8, 10, 11, 17, 20, 22, 25, 29, 31, 36], "i": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36, 37], "core": 0, "psycopg": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33, 37], "allow": [0, 1, 2, 4, 5, 10, 11, 13, 15, 16, 17, 20, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "customis": [0, 10, 19, 25, 26, 28, 34], "wai": [0, 1, 2, 3, 6, 10, 11, 14, 15, 16, 21, 23, 24, 26, 27, 28, 30, 31, 33, 34], "object": [0, 1, 2, 4, 5, 7, 8, 9, 11, 15, 17, 18, 19, 21, 23, 25, 26, 27, 28, 29, 31, 32, 33, 35, 36], "ar": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 37, 38], "convert": [0, 9, 10, 12, 13, 14, 15, 17, 19, 20, 23, 24, 25, 26, 31, 32, 33, 36], "when": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 14, 15, 17, 19, 20, 21, 23, 24, 26, 27, 28, 31, 32, 33, 34, 36, 37], "queri": [0, 1, 3, 4, 6, 7, 10, 11, 14, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 29, 32, 33, 34, 35, 36], "perform": [0, 1, 2, 4, 5, 9, 11, 13, 15, 16, 21, 22, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36], "how": [0, 1, 4, 7, 9, 10, 11, 14, 15, 16, 19, 23, 25, 26, 28, 29, 30, 31, 33, 34], "valu": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 34, 36, 37, 38], "result": [0, 1, 2, 4, 5, 7, 9, 10, 11, 13, 15, 17, 20, 22, 23, 24, 25, 26, 27, 29, 30, 32, 33, 34, 36, 37], "return": [0, 1, 2, 3, 4, 5, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 31, 32, 34, 36, 37], "For": [0, 1, 2, 4, 5, 7, 8, 9, 11, 13, 15, 16, 17, 18, 19, 20, 23, 27, 28, 30, 31, 32, 33], "high": [0, 4], "level": [0, 1, 5, 6, 11, 15, 18, 19, 22, 33, 35], "view": [0, 11], "convers": [0, 5, 6, 9, 10, 25, 26, 32, 34, 36], "type": [0, 3, 7, 9, 11, 13, 14, 15, 17, 18, 19, 20, 21, 23, 24, 27, 28, 29, 31, 34, 35, 36, 37], "between": [0, 4, 5, 10, 15, 17, 26, 28, 30, 31, 32, 33, 34], "pleas": [0, 1, 5, 7, 11, 14, 15, 17, 21, 26, 27, 28, 29, 30, 31], "look": [0, 3, 4, 5, 10, 11, 16, 17, 18, 25, 26, 28, 29, 31, 33, 36], "pass": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 15, 17, 20, 21, 22, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35], "paramet": [0, 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 35, 36, 37], "sql": [0, 2, 6, 8, 10, 11, 15, 17, 18, 22, 26, 27, 28, 29, 34, 35, 36], "us": [0, 1, 2, 3, 4, 5, 7, 8, 9, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 33, 34, 35, 36, 37, 38], "describ": [0, 2, 4, 6, 9, 13, 15, 20, 21, 22, 23, 25, 27], "thi": [0, 1, 2, 3, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], "page": [0, 5, 15, 21, 31], "you": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34], "intend": [0, 11], "rule": [0, 8, 13, 16, 17, 24, 26, 27, 29, 36], "chang": [0, 1, 2, 4, 5, 6, 7, 10, 11, 15, 16, 17, 20, 21, 24, 26, 27, 28, 29, 32, 33, 34, 36], "implement": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 15, 16, 18, 19, 20, 25, 26, 28, 30, 32, 33, 34, 35, 36], "adaptcontext": [0, 9, 10, 11, 14, 18, 19, 24, 25, 26, 32], "protocol": [0, 6, 7, 9, 10, 11, 14, 18, 20, 25, 27, 29, 30, 34, 36], "instanc": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 34], "connect": [0, 2, 3, 4, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 22, 23, 24, 25, 26, 27, 29, 31, 32, 33, 35, 36, 37], "cursor": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 31, 32, 33, 34, 35, 36], "everi": [0, 1, 2, 5, 9, 10, 11, 15, 16, 17, 19, 20, 21, 22, 23, 25, 26, 28, 31, 32, 33], "context": [0, 1, 4, 5, 9, 10, 11, 14, 15, 17, 19, 20, 21, 22, 24, 25, 26, 28, 29, 32, 36, 37], "deriv": [0, 17, 36], "from": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 20, 21, 22, 23, 24, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38], "anoth": [0, 5, 7, 10, 15], "inherit": [0, 9, 24, 25], "its": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 15, 16, 17, 19, 21, 24, 25, 27, 32, 33, 34], "map": [0, 10, 11, 14, 15, 19, 24, 25, 26, 28, 31, 32, 34], "creat": [0, 1, 2, 3, 10, 11, 13, 14, 15, 19, 21, 22, 23, 24, 25, 26, 28, 31, 32, 33, 34, 37, 38], "": [0, 1, 2, 4, 7, 8, 9, 10, 14, 15, 17, 20, 23, 24, 26, 27, 29, 30, 31, 32, 33, 34], "By": [0, 1, 8, 10, 11, 13, 15, 21, 25, 26, 28, 33], "default": [0, 1, 5, 6, 7, 8, 10, 11, 13, 14, 15, 19, 20, 21, 23, 24, 25, 26, 29, 31, 33, 34, 36, 37], "obtain": [0, 2, 5, 13, 15, 17, 21, 26, 27, 30, 34], "an": [0, 1, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37, 38], "global": [0, 5, 10, 11, 20, 24, 25, 26, 32, 33], "expos": [0, 2, 6, 7, 9, 10, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 33, 34], "content": [0, 8, 38], "affect": [0, 7, 10, 11, 14, 15, 17, 26, 29, 32, 33, 36], "afterward": [0, 2, 5, 10], "mai": [0, 1, 2, 4, 5, 6, 9, 11, 14, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33], "specifi": [0, 2, 5, 7, 8, 9, 10, 11, 12, 13, 15, 17, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36], "differ": [0, 1, 2, 5, 6, 8, 10, 11, 15, 17, 18, 20, 21, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 36], "templat": [0, 10, 11, 14, 19, 24, 25], "attribut": [0, 1, 2, 6, 7, 9, 10, 11, 14, 15, 17, 19, 20, 22, 23, 25, 26, 29, 32, 33, 36], "adaptersmap": [0, 9, 10, 11, 19, 25], "contain": [0, 1, 2, 4, 6, 9, 12, 13, 14, 16, 19, 20, 24, 25, 26, 30, 31, 32], "class": [0, 2, 5, 7, 8, 10, 13, 14, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 28, 32, 34, 35, 36, 37, 38], "oid": [0, 9, 10, 13, 15, 19, 20, 25, 26, 32, 36, 38], "e": [0, 2, 4, 5, 9, 10, 11, 13, 14, 15, 16, 17, 22, 24, 25, 26, 28, 30, 34], "g": [0, 2, 9, 10, 11, 13, 14, 15, 16, 17, 24, 25, 26, 28, 30], "regist": [0, 1, 10, 11, 17, 25, 26, 27, 32, 36], "your": [0, 1, 4, 5, 6, 7, 8, 9, 11, 13, 21, 23, 24, 26, 28, 29, 30, 31, 32, 33], "own": [0, 1, 2, 4, 7, 13, 23, 26, 28, 32], "builtin": [0, 9, 19, 25, 28, 32, 34], "byte": [0, 9, 10, 11, 13, 15, 22, 24, 25, 26, 27, 33, 36], "sequenc": [0, 4, 7, 9, 11, 13, 15, 23, 24, 26, 27, 31, 32, 33, 36], "format": [0, 5, 8, 9, 10, 13, 14, 15, 20, 22, 24, 26, 27, 28, 31, 33, 36], "understood": 0, "string": [0, 2, 3, 9, 10, 11, 13, 14, 16, 17, 18, 20, 21, 22, 25, 27, 28, 29, 31, 32, 33, 35, 36], "shouldn": [0, 9, 11, 15, 31], "t": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 12, 14, 15, 16, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 36, 37], "quot": [0, 2, 9, 10, 24, 28, 31], "databas": [0, 1, 2, 5, 7, 8, 9, 11, 12, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34], "function": [0, 1, 2, 5, 7, 8, 11, 12, 14, 15, 16, 17, 18, 21, 23, 25, 26, 28, 31, 32, 33, 34, 35, 36], "pqexecparam": 0, "so": [0, 1, 2, 4, 6, 9, 10, 11, 15, 16, 20, 21, 24, 26, 27, 28, 30, 31, 32, 33, 34, 38], "escap": [0, 8, 9, 22, 24, 26, 31, 36], "necessari": [0, 1, 5, 8, 13, 16, 21, 24, 27, 32], "usual": [0, 1, 2, 4, 11, 15, 17, 20, 22, 23, 24, 27, 28, 31, 34], "also": [0, 1, 2, 4, 5, 7, 8, 9, 11, 13, 15, 16, 17, 19, 20, 21, 22, 24, 26, 27, 28, 31, 32, 33, 34, 37], "suggest": [0, 28], "server": [0, 3, 5, 6, 9, 10, 11, 14, 15, 16, 17, 19, 20, 21, 22, 26, 29, 30, 31, 33, 34, 35, 36, 37, 38], "what": [0, 1, 2, 7, 8, 11, 13, 15, 17, 23, 26, 27, 29, 31, 33, 34], "via": [0, 1, 4, 8, 20, 28, 30, 31], "opposit": [0, 4, 17, 24, 27], "oper": [0, 3, 4, 10, 11, 13, 15, 16, 17, 20, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36], "read": [0, 2, 4, 11, 13, 15, 20, 22, 25, 28, 29, 30, 31, 32, 36], "out": [0, 1, 2, 15, 17, 23, 26, 27, 34, 36], "instanti": [0, 2, 15], "demand": [0, 33], "transform": [0, 9, 10], "execut": [0, 1, 2, 4, 5, 6, 7, 8, 11, 13, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 32, 33, 34, 36], "onli": [0, 1, 2, 4, 5, 8, 9, 10, 11, 14, 15, 17, 20, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 36], "children": [0, 32], "alreadi": [0, 2, 5, 6, 10, 15, 17, 21, 23, 27, 32, 33], "newli": [0, 35], "ones": [0, 1, 5, 6, 11, 12, 13, 15, 17, 21, 22, 24, 26, 31, 32, 33, 38], "exist": [0, 4, 5, 15, 17, 32, 34], "doesn": [0, 2, 4, 5, 6, 8, 10, 12, 14, 15, 16, 20, 21, 22, 24, 25, 26, 27, 28, 32, 33, 34], "provid": [0, 1, 4, 5, 8, 11, 14, 15, 16, 21, 23, 31, 32], "becaus": [0, 1, 2, 4, 5, 6, 7, 13, 15, 16, 17, 20, 21, 24, 26, 27, 28, 30, 31, 32, 33], "just": [0, 1, 2, 4, 5, 9, 10, 15, 26, 34], "too": [0, 1, 2, 5, 6, 8, 9, 10, 13, 15, 21, 22, 24, 26, 28, 30, 31, 32, 33, 36], "mani": [0, 1, 4, 15, 21, 24, 26, 28, 31, 36], "pars": [0, 4, 6, 12, 13, 22, 25, 32, 36], "elementtre": 0, "veri": [0, 2, 21], "simpl": [0, 2, 5, 11, 21, 23, 25, 33, 34], "base": [0, 10, 13, 17, 24, 25, 26, 27, 29, 34], "load": [0, 5, 9, 10, 22, 25, 26, 27, 28, 29, 32, 36], "method": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37], "import": [0, 1, 2, 5, 7, 8, 10, 13, 15, 16, 17, 19, 20, 22, 23, 24, 25, 26, 27, 28, 30, 32, 33, 34], "etre": 0, "et": 0, "xmlloader": 0, "def": [0, 1, 5, 7, 8, 16, 25, 26, 34], "self": [0, 7, 8, 10, 11, 14, 15, 19, 21, 25, 26, 30, 34, 36, 37], "fromstr": 0, "conn": [0, 1, 2, 4, 5, 7, 8, 11, 14, 15, 19, 20, 21, 22, 23, 24, 25, 26, 28, 32, 33, 34], "register_load": [0, 10, 25], "now": [0, 4, 8, 21, 22, 24, 28, 30, 31, 33, 34, 36], "cur": [0, 1, 2, 4, 5, 7, 8, 11, 13, 15, 17, 23, 24, 26, 27, 28, 31, 33, 34], "select": [0, 1, 2, 4, 5, 7, 8, 15, 20, 22, 23, 24, 25, 26, 27, 28, 31, 32, 33, 34, 36], "xmlpars": 0, "document": [0, 1, 2, 4, 6, 14, 15, 17, 19, 20, 21, 22, 26, 27, 29, 30, 32, 33, 38], "version": [0, 1, 2, 4, 5, 6, 8, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 28, 30, 33, 36], "1": [0, 1, 2, 4, 5, 6, 8, 11, 13, 14, 15, 16, 17, 20, 21, 22, 24, 26, 27, 28, 30, 32, 33, 34], "0": [0, 1, 4, 5, 6, 8, 9, 11, 15, 16, 19, 20, 21, 22, 24, 26, 31, 32, 33, 34, 35], "book": 0, "titl": 0, "manual": [0, 1, 13, 16, 31, 33, 38], "chapter": [0, 3], "elem": 0, "fetchon": [0, 1, 2, 4, 5, 7, 8, 11, 15, 23, 26, 28, 31, 32, 34], "element": [0, 24, 25, 26, 31, 32], "0x7ffb55142ef0": 0, "make": [0, 1, 2, 4, 5, 6, 8, 9, 10, 12, 15, 16, 20, 21, 26, 28, 30, 32, 33, 34, 36, 37], "easi": [0, 23, 28], "one": [0, 1, 2, 4, 5, 7, 8, 10, 11, 15, 16, 17, 20, 21, 25, 26, 27, 28, 30, 31, 32, 36, 38], "need": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 14, 15, 19, 21, 22, 23, 24, 25, 26, 28, 30, 31, 33, 34], "dump": [0, 9, 10, 25, 26, 32, 36], "xmldumper": 0, "set": [0, 1, 2, 5, 6, 7, 10, 11, 13, 15, 20, 21, 22, 25, 26, 28, 32, 33, 34, 36, 37], "can": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34], "help": [0, 15, 23, 25], "tostr": 0, "register_dump": [0, 10], "possibl": [0, 2, 5, 7, 8, 9, 10, 11, 13, 15, 16, 21, 22, 24, 26, 28, 30, 31, 33, 34, 36, 37], "xpath": 0, "text": [0, 1, 9, 10, 13, 15, 22, 25, 26, 27, 28, 31, 32, 34, 36], "note": [0, 1, 2, 4, 5, 6, 8, 9, 11, 13, 14, 15, 21, 23, 24, 26, 28, 30, 31, 33, 34], "typesregistri": [0, 10, 19, 25], "ani": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 16, 20, 21, 23, 24, 25, 26, 27, 28, 31, 32, 33, 35, 36], "inform": [0, 1, 5, 10, 15, 17, 18, 19, 22, 23, 26, 27, 30, 32, 34, 35, 36], "extens": [0, 15, 28, 30, 32, 33, 34, 36], "thei": [0, 1, 2, 4, 5, 6, 7, 9, 11, 13, 15, 16, 17, 21, 24, 26, 27, 28, 31, 32, 33, 34], "have": [0, 1, 2, 3, 4, 5, 10, 11, 13, 15, 17, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34], "been": [0, 1, 2, 4, 5, 9, 17, 20, 21, 22, 28, 34], "typeinfo": [0, 9, 19, 25, 26, 32, 36], "normal": [0, 1, 2, 4, 5, 8, 9, 10, 11, 13, 15, 20, 21, 24, 26, 27, 28, 29, 31, 32], "decim": [0, 20, 26, 32], "both": [0, 1, 5, 8, 17, 19, 23, 26, 27, 28, 30, 31, 32, 33, 34, 37], "fix": [0, 5, 20, 26, 33, 36, 37], "precis": [0, 17, 20, 22, 26, 30], "arithmet": 0, "subject": [0, 27], "round": [0, 4], "sometim": [0, 1, 2, 5, 26, 28, 31], "howev": [0, 1, 2, 5, 6, 13, 14, 15, 17, 20, 21, 22, 24, 25, 26, 27, 28, 33, 34], "want": [0, 1, 4, 5, 7, 8, 9, 10, 11, 15, 21, 24, 26, 27, 28, 30, 31, 32, 33, 34], "point": [0, 3, 11, 20, 26, 31, 32, 36], "math": 0, "get": [0, 1, 14, 15, 18, 21, 25, 26, 32, 35, 38], "mayb": 0, "slower": [0, 20], "mix": [0, 1, 2, 26, 31, 36], "caus": [0, 1, 4, 17, 28, 33, 36, 37], "error": [0, 1, 4, 5, 8, 11, 13, 15, 18, 19, 20, 21, 22, 26, 28, 30, 31, 33, 35, 36, 37, 38], "If": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 36, 38], "fine": [0, 3], "potenti": [0, 24], "loss": [0, 26], "simpli": [0, 9, 11, 30], "receiv": [0, 1, 2, 4, 5, 7, 8, 11, 15, 17, 20, 21, 23, 26, 34, 36], "same": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 14, 15, 20, 21, 22, 26, 27, 29, 30, 31, 33, 34, 36], "float4": [0, 26, 36], "float8": [0, 26], "textual": [0, 31], "represent": [0, 9, 10, 22, 24, 25, 26, 31, 32], "two": [0, 1, 2, 4, 10, 11, 14, 18, 27, 28, 29, 31, 32, 36], "compat": [0, 1, 6, 8, 17, 21, 27, 36], "123": [0, 26], "45": [0, 26], "floatload": 0, "In": [0, 1, 2, 4, 5, 9, 10, 11, 13, 15, 16, 17, 21, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 37], "take": [0, 2, 3, 4, 5, 7, 9, 11, 18, 23, 26, 28, 29, 31], "effect": [0, 1, 4, 15, 20, 33], "other": [0, 1, 2, 3, 11, 14, 15, 18, 19, 21, 22, 24, 25, 26, 28, 29, 30, 31, 33, 34, 35, 36, 37], "suppos": 0, "work": [0, 2, 4, 5, 8, 10, 14, 15, 21, 24, 26, 27, 28, 30, 32, 33, 36], "which": [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 13, 14, 15, 17, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 36, 37], "avail": [0, 4, 5, 6, 7, 9, 10, 11, 15, 17, 19, 20, 21, 22, 24, 25, 26, 28, 30, 31, 32, 33, 36], "traceback": [0, 20, 22, 26, 28], "most": [0, 2, 4, 10, 15, 20, 22, 26, 27, 28, 30, 31, 34], "recent": [0, 6, 20, 22, 26, 28], "call": [0, 1, 2, 4, 5, 7, 9, 11, 13, 15, 16, 17, 20, 21, 22, 23, 26, 28, 31, 32, 33, 34, 36, 37], "last": [0, 10, 11, 15, 20, 22, 26, 28, 36, 38], "dataerror": [0, 17, 19, 26, 36], "larg": [0, 2, 5, 9, 14, 21, 26, 28, 31, 36], "after": [0, 1, 2, 4, 5, 6, 7, 10, 11, 13, 15, 17, 20, 21, 22, 26, 28, 30, 32, 33, 36, 37], "year": [0, 8, 26, 28, 36], "10k": [0, 28], "One": [0, 1, 2, 11, 16, 28, 33], "would": [0, 2, 4, 8, 15, 23, 27, 28, 30, 33, 34], "store": [0, 2, 5, 6, 7, 9, 15, 21, 25, 26, 32, 33], "datetim": [0, 8, 9, 20, 26, 27, 28, 31], "max": [0, 11, 26, 28], "let": [0, 21, 33, 34], "subclass": [0, 8, 10, 13, 14, 15, 16, 17, 21, 24, 25, 26, 29, 32], "them": [0, 1, 2, 4, 5, 9, 11, 13, 15, 17, 20, 21, 24, 25, 26, 27, 28, 31, 32, 34], "scope": [0, 10, 34], "case": [0, 1, 2, 5, 8, 9, 10, 11, 15, 16, 17, 20, 21, 24, 26, 27, 28, 30, 31, 33, 34, 36, 38], "dateload": 0, "datedump": 0, "infdatedump": 0, "obj": [0, 8, 9, 10, 22, 24, 25, 26], "b": [0, 10, 22, 24, 26, 31, 32], "elif": 0, "min": [0, 28], "els": [0, 1, 5, 8, 15, 19, 20, 28, 33, 34], "super": [0, 8, 16], "infdateload": 0, "new": [0, 2, 3, 4, 5, 8, 9, 11, 13, 14, 15, 16, 17, 19, 20, 21, 23, 24, 26, 29, 33, 34], "2020": [0, 31], "12": [0, 20, 22, 26, 27, 28, 30, 34], "31": [0, 28, 36], "9999": [0, 26, 28], "instruct": [0, 25], "follow": [0, 1, 2, 4, 5, 6, 8, 11, 14, 15, 17, 20, 21, 24, 26, 28, 30, 32, 33], "where": [0, 1, 2, 4, 5, 8, 9, 10, 11, 13, 24, 25, 26, 28, 31, 32, 33, 34], "local": [0, 7, 29, 38], "manag": [0, 1, 2, 4, 5, 6, 9, 10, 11, 13, 15, 20, 21, 22, 25, 26, 27, 28, 29, 31, 32, 34, 35, 36, 37], "dure": [0, 1, 4, 13, 15, 17, 21, 22, 36], "requir": [0, 1, 2, 5, 9, 13, 15, 17, 19, 20, 21, 22, 26, 30, 31, 32, 33], "dispatch": 0, "postgr": [0, 1, 9, 10, 12, 13, 22, 26, 28, 34], "back": [0, 4, 5, 10, 11, 20, 21, 25, 26, 27, 32, 33, 34], "copi": [0, 4, 10, 11, 15, 18, 24, 29, 35, 36], "thu": [0, 17], "all": [0, 1, 2, 5, 9, 11, 15, 17, 18, 20, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34, 37, 38], "made": [0, 1, 5, 10, 20, 21, 24, 30, 33], "current": [0, 4, 5, 8, 11, 15, 16, 17, 20, 21, 22, 25, 27, 33, 34], "argument": [0, 2, 7, 8, 10, 11, 13, 15, 16, 21, 22, 23, 24, 25, 26, 28, 29], "accord": [0, 5, 8, 9, 10, 15, 17, 24, 26, 27, 32, 33], "placehold": [0, 2, 9, 10, 15, 24, 28, 31, 34, 36], "pick": [0, 21, 31], "binari": [0, 2, 9, 10, 11, 13, 15, 22, 28, 29, 32, 35, 36, 38], "auto": [0, 10, 24, 26], "ha": [0, 1, 2, 4, 5, 9, 10, 11, 13, 15, 17, 20, 21, 22, 26, 28, 30, 31, 33, 34, 35, 36], "enough": [0, 2, 9], "decid": [0, 1, 6, 21], "best": [0, 2, 5, 10, 22, 31], "list": [0, 2, 7, 8, 9, 11, 13, 15, 16, 21, 24, 25, 27, 28, 29, 32, 34, 36], "depend": [0, 4, 15, 16, 17, 29, 32, 36, 37], "whether": [0, 1, 9, 15, 32], "integ": [0, 20, 22, 24, 26, 27, 31, 32, 33, 34, 36], "bigint": [0, 26, 27], "number": [0, 1, 5, 6, 11, 14, 15, 17, 20, 21, 22, 24, 29, 31, 33, 36, 38], "size": [0, 2, 3, 8, 9, 15, 20, 21, 27, 36], "mechan": [0, 5, 9, 31], "get_kei": [0, 9, 10], "upgrad": [0, 9, 10, 30, 38], "more": [0, 1, 2, 4, 5, 6, 7, 8, 11, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 33, 34, 35, 36, 37], "specif": [0, 5, 17, 18, 19, 22, 24, 26, 30, 32, 33], "upon": [0, 1, 11, 21, 36], "success": [0, 1, 4, 15, 16, 21, 38], "request": [0, 1, 2, 4, 5, 11, 15, 20, 21, 22, 24, 31, 38], "pgresult": [0, 7, 15, 17, 22, 36], "recurs": [0, 11, 36], "arrai": [0, 9, 14, 19, 25, 26, 28, 36], "composit": [0, 2, 8, 14, 18, 25, 29, 31, 35, 36], "As": [0, 1, 4, 5, 8, 14, 19, 28, 33], "consequ": [0, 1, 4, 5, 28, 33, 36], "certain": [0, 1, 2, 4, 5, 10, 19, 22, 26, 33, 36], "choic": [0, 5, 7, 15, 22, 31], "onc": [0, 3, 4, 5, 8, 9, 10, 15, 26, 33], "per": [0, 4, 17, 36], "up": [0, 1, 5, 10, 16, 17, 20, 21, 25, 26, 30, 31, 33], "encod": [0, 9, 10, 11, 20, 22, 24, 26, 28, 36], "fast": [0, 22], "path": [0, 5, 20, 30, 36], "each": [0, 1, 2, 4, 14, 15, 17, 19, 21, 23, 31, 34, 36], "fail": [0, 1, 4, 5, 9, 15, 17, 19, 20, 21, 22, 26, 27, 28, 30, 31, 33, 36, 37], "isn": [0, 28, 33], "right": [0, 2, 4, 23, 28, 30, 31, 32, 33], "whose": [0, 5, 8, 24, 25, 28], "write": [1, 3, 7, 8, 10, 11, 13, 14, 17, 22, 26, 28, 29, 31, 33, 36], "code": [1, 2, 5, 8, 17, 21, 31, 33, 34, 36], "than": [1, 2, 4, 5, 6, 11, 15, 17, 21, 22, 23, 24, 26, 27, 28, 33, 36], "time": [1, 2, 4, 5, 6, 8, 11, 15, 17, 19, 20, 21, 22, 24, 28, 29, 31, 33, 36], "thread": [1, 5, 11, 21, 34, 36], "safe": [1, 5, 8, 11, 21, 24], "design": [1, 2, 15, 35], "sever": [1, 2, 4, 5, 6, 7, 9, 10, 11, 14, 15, 17, 22, 26, 28, 31, 33, 34], "lightweight": 1, "independ": [1, 10], "share": [1, 11, 15], "transact": [1, 4, 5, 11, 15, 17, 18, 21, 22, 27, 29, 34, 35, 36, 37], "mean": [1, 2, 5, 6, 8, 10, 11, 17, 20, 21, 26, 27, 32, 33, 34], "start": [1, 4, 5, 6, 10, 11, 16, 18, 20, 21, 28, 30, 33, 35, 37], "state": [1, 2, 4, 5, 10, 11, 15, 17, 19, 20, 21, 22, 23, 33, 36], "until": [1, 4, 5, 11, 13, 15, 20, 21, 33], "rollback": [1, 4, 11, 17, 20, 21, 33, 34, 36], "It": [1, 7, 9, 11, 13, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 30, 32, 34], "see": [1, 2, 5, 8, 10, 11, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36, 37], "session": [1, 6, 11, 14, 15, 20, 26, 29, 33, 34], "even": [1, 4, 5, 6, 11, 21, 24, 26, 28, 31, 32, 33, 34], "still": [1, 6, 11, 15, 17, 21, 24, 27, 28, 30, 33, 34], "uncommit": 1, "might": [1, 2, 4, 5, 8, 9, 11, 15, 17, 20, 22, 28, 30, 32, 33, 34, 36, 37], "desir": [1, 2, 7], "someth": [1, 2, 5, 11, 15, 16, 26, 27, 33], "consid": [1, 5, 15, 22, 26, 28, 34], "should": [1, 2, 4, 5, 6, 8, 9, 10, 11, 13, 15, 21, 22, 24, 26, 27, 28, 30, 31, 32, 33, 34], "retriev": [1, 2, 15, 23, 26, 32, 33, 34, 36], "serial": [1, 26, 33, 34], "abl": [1, 2, 11, 15, 25, 26, 30, 33], "run": [1, 2, 4, 21, 22, 28, 30, 31, 33, 36, 38], "coordin": [1, 32], "access": [1, 5, 11, 15, 17, 20, 23, 28, 31, 33, 35], "program": [1, 2, 5, 11, 14, 17, 20, 21, 23, 24, 28, 29, 30, 31, 33, 35], "non": [1, 8, 11, 15, 16, 20, 26, 28, 33, 34, 36], "expect": [1, 13, 15, 21, 22, 26, 27, 28, 32, 33], "massiv": [1, 15], "parallel": 1, "rather": [1, 15, 17, 21, 23, 28], "impact": 1, "handl": [1, 2, 3, 4, 9, 11, 16, 17, 20, 25, 26, 29, 32, 33, 36, 37], "limit": [1, 17, 21, 27, 28], "grumpi": 1, "sysadmin": 1, "long": [1, 5, 6, 26, 27, 33], "beard": 1, "strict": [1, 8, 36], "control": [1, 2, 6, 8, 11, 15, 17, 21, 22, 28, 33, 34, 36], "max_connect": 1, "avoid": [1, 6, 15, 21, 36, 37], "starv": 1, "pool": [1, 3, 6, 18, 28, 29, 35, 37, 38], "process": [1, 2, 4, 5, 11, 17, 20, 22, 27, 33, 34, 36], "cannot": [1, 2, 5, 9, 14, 20, 21, 24, 26, 29, 30, 33], "across": [1, 5, 29], "facil": 1, "multiprocess": 1, "modul": [1, 2, 5, 7, 9, 10, 11, 12, 16, 17, 18, 20, 23, 26, 27, 28, 29, 30, 31, 32, 35, 36, 37], "fork": [1, 36], "framework": 1, "web": [1, 31], "sure": [1, 4, 5, 6, 15, 16, 21, 26, 30, 33, 34, 37], "worker": [1, 5, 21, 36], "do": [1, 2, 4, 5, 6, 11, 15, 16, 21, 26, 27, 28, 31, 33, 34], "probabl": [1, 2, 4, 5, 10, 15, 21, 26, 28, 30, 31, 33], "find": [1, 4, 9, 14, 26, 28, 31, 32, 34], "broken": [1, 5, 11, 21, 36], "counterpart": [1, 2, 15, 26, 27], "asyncconnect": [1, 2, 9, 14, 15, 16, 18, 19, 20, 21, 25, 27, 34, 36], "asynccursor": [1, 2, 11, 13, 15], "asyncio": [1, 2, 11, 13, 15, 21, 34], "interfac": [1, 2, 4, 5, 11, 13, 15, 16, 17, 21, 22, 24, 28, 30, 35], "pretti": [1, 32], "much": [1, 4, 21, 22, 28, 32], "sync": [1, 4, 11, 15, 17, 20, 22, 27, 33, 36, 37], "order": [1, 2, 4, 15, 21, 25, 26, 27, 28, 30, 31, 32, 33, 36], "scatter": 1, "await": [1, 5, 11, 13, 15, 16, 21, 25, 27], "keyword": [1, 5, 6, 11, 12, 15, 21, 23, 24], "here": [1, 8, 15, 16, 21, 28, 30, 33, 34], "dbname": [1, 12, 20, 34], "test": [1, 2, 21, 28, 30, 32, 34, 38], "user": [1, 2, 12, 20, 21, 22, 28, 30, 32, 34], "aconn": [1, 25], "acur": 1, "insert": [1, 2, 4, 15, 24, 26, 27, 28, 31, 33, 34], "INTO": [1, 4, 15, 24, 26, 28, 31, 33, 34], "num": [1, 34], "data": [1, 2, 3, 4, 7, 8, 9, 10, 11, 13, 14, 15, 17, 19, 20, 22, 23, 25, 28, 29, 31, 32, 33, 34, 35, 36], "100": [1, 4, 11, 15, 27, 34], "abc": [1, 18, 21, 34, 35], "record": [1, 2, 3, 4, 7, 11, 13, 15, 23, 25, 27, 28, 31, 33, 34], "print": [1, 3, 5, 7, 8, 19, 24, 27, 31, 34], "task": [1, 21, 37], "3": [1, 2, 4, 5, 6, 8, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 26, 27, 30, 32, 33], "dn": [1, 18, 35], "name": [1, 2, 5, 7, 8, 10, 11, 13, 15, 16, 17, 20, 21, 22, 23, 24, 25, 26, 28, 31, 32, 34, 36], "resolut": [1, 11, 18, 35], "block": [1, 4, 5, 11, 13, 15, 16, 20, 21, 28, 29, 33, 34, 36], "befor": [1, 5, 10, 11, 14, 15, 16, 21, 22, 24, 26, 27, 30, 31, 32, 33, 36, 37], "To": [1, 27], "hostaddr": [1, 11, 19, 20], "resolve_hostaddr_async": [1, 11, 16, 18], "automat": [1, 6, 11, 15, 16, 21, 22, 24, 25, 26, 28, 31, 32, 33], "On": [1, 11, 13, 14, 26, 27, 30, 31, 38], "window": [1, 30, 36], "proactoreventloop": 1, "loop": [1, 33, 37], "selectoreventloop": 1, "earli": [1, 5, 20], "set_event_loop_polici": 1, "windowsselectoreventlooppolici": 1, "seen": [1, 20, 22], "basic": [1, 3, 23, 28, 29, 30, 35, 38], "usag": [1, 2, 3, 7, 18, 21, 26, 28, 29, 30, 32, 35, 36], "act": [1, 21], "close": [1, 5, 11, 15, 17, 20, 21, 22, 28, 33, 34, 36, 37], "leav": [1, 5, 15, 21, 26, 27, 30, 31, 33, 36, 37], "commit": [1, 4, 5, 11, 14, 15, 18, 21, 27, 29, 34, 36], "almost": 1, "d": [1, 31], "quit": [1, 31], "don": [1, 2, 5, 9, 10, 11, 15, 21, 22, 25, 26, 29, 30, 31, 32, 33, 36, 37], "factori": [1, 2, 3, 8, 11, 15, 18, 28, 32, 34, 35, 36], "That": 1, "step": 1, "instead": [1, 2, 5, 7, 11, 13, 14, 15, 19, 20, 24, 26, 27, 28, 30, 31, 34, 36, 37], "condens": 1, "less": [1, 2, 4, 11, 22, 33], "doubl": [1, 24, 31], "thing": [1, 26, 30, 33, 34], "never": [1, 17, 20, 21, 31], "o": [1, 24, 30, 31, 36], "ctrl": [1, 36], "c": [1, 7, 22, 26, 30, 36], "main": [1, 2, 5, 11, 15, 18, 20, 21, 29, 33], "cancel": [1, 11, 14, 22, 33, 36, 37], "put": [1, 5, 28], "recov": [1, 20], "similar": [1, 2, 5, 8, 11, 13, 15, 16, 21, 24, 28, 33, 36], "behavior": [1, 22], "similarli": [1, 14, 21, 32], "happen": [1, 4, 5, 10, 15, 17, 20, 21, 24, 26, 28, 31, 32, 33, 37], "either": [1, 4, 5, 11, 13, 20, 22, 23, 26, 31, 32, 33], "indirectli": 1, "signal": [1, 11, 25, 36], "directli": [1, 2, 13, 15, 24, 36], "python": [1, 2, 3, 4, 8, 9, 10, 13, 14, 15, 19, 20, 22, 23, 24, 25, 27, 28, 29, 31, 32, 33, 34, 36, 37], "ask": [1, 5], "postgresql": [1, 2, 3, 4, 6, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 33, 34, 36], "postmast": 1, "encount": [1, 4, 17], "standard": [1, 2, 17, 19, 20, 26, 33, 34, 36], "cancellederror": 1, "rememb": [1, 28, 31, 33], "doe": [1, 4, 7, 8, 15, 34], "guarante": [1, 15, 17, 21, 30], "complet": [1, 2, 5, 8, 17, 20, 23, 25, 27, 28, 33, 38], "ultim": 1, "exit": [1, 5, 11, 15, 20, 21, 27, 33, 34, 36], "prematur": [1, 20, 36], "due": [1, 33], "know": [1, 5, 8, 9, 10, 26, 31], "outcom": 1, "statement": [1, 2, 3, 4, 8, 11, 15, 17, 20, 24, 27, 29, 31, 33, 34, 35, 36], "altern": [1, 9, 26, 28, 30], "previou": [1, 4, 5, 7, 11, 15, 26, 27, 33], "recommend": 1, "handler": [1, 11, 20], "longer": [1, 4, 21, 29, 33], "box": [1, 26], "found": [1, 5, 8, 10, 17, 25, 32, 33, 36], "patch": 1, "monkei": 1, "patch_select": 1, "patch_al": 1, "behav": [1, 5, 11, 14, 15, 25, 28, 32, 33, 34], "collabor": 1, "unlik": [1, 4, 11, 22, 25, 31], "psycopg2": [1, 2, 29, 33, 34, 35, 36], "psycogreen": 1, "wa": [1, 2, 4, 5, 8, 11, 17, 20, 21, 22, 28, 33, 36], "initi": [1, 4, 5, 11, 15, 17, 21, 36], "accident": 1, "4": [1, 5, 17, 20, 21, 22, 26, 32], "offici": [1, 30], "14": [1, 4, 15, 20, 22, 26, 32], "send": [1, 2, 4, 5, 11, 15, 20, 28, 31, 34], "togeth": [1, 2, 17, 20, 34], "about": [1, 4, 5, 6, 9, 10, 11, 14, 15, 16, 19, 20, 21, 23, 25, 26, 27, 30, 31, 32, 34], "warn": [1, 9, 15, 16, 17, 19, 20, 21, 36, 37], "debug": [1, 5, 15, 30, 36], "notic": [1, 11, 32, 34], "rais": [1, 4, 5, 8, 10, 11, 12, 15, 16, 17, 20, 21, 22, 25, 26, 27, 33, 34, 36, 37], "indic": [1, 21, 26], "familiar": [1, 28, 29, 34, 35], "some": [1, 5, 9, 13, 14, 15, 21, 23, 24, 26, 27, 30, 31, 34, 36], "report": [1, 8, 15, 17, 20, 22, 36], "psql": [1, 11, 15, 28, 30, 33], "progress": [1, 15, 20], "sent": [1, 2, 4, 5, 15, 17, 20, 31, 32, 33], "pl": [1, 2, 17], "pgsql": [1, 2, 17], "lower": [1, 32], "except": [1, 4, 5, 8, 9, 11, 15, 18, 19, 20, 22, 26, 27, 33, 34, 35, 36], "otherwis": [1, 5, 6, 8, 9, 11, 15, 20, 21, 22, 24, 25, 26, 31], "appropri": [1, 15, 28, 31], "databaseerror": [1, 17, 19], "client_min_messag": 1, "ignor": [1, 21, 33, 36], "client": [1, 3, 5, 6, 9, 11, 15, 17, 19, 20, 21, 22, 26, 28, 30, 31, 36], "add_notice_handl": [1, 11, 17], "invok": [1, 9, 11, 21, 22, 24, 32], "whenev": [1, 11, 31], "callback": [1, 5, 11, 17, 21, 37], "diagnost": [1, 11, 18], "diag": [1, 17], "log_notic": 1, "f": [1, 5, 7, 8, 13, 22, 27, 31, 33], "sai": 1, "message_primari": [1, 17, 22], "autocommit": [1, 4, 11, 14, 15, 19, 27, 29], "true": [1, 4, 5, 6, 11, 13, 14, 15, 17, 19, 20, 21, 22, 26, 28, 31, 32, 33, 36, 37], "statusmessag": [1, 15], "termin": [1, 4, 5, 14, 15, 17, 21, 33, 34, 36], "dealloc": [1, 6, 11], "later": [1, 7, 13, 21, 24], "extract": [1, 7, 25], "forward": 1, "whole": [1, 2], "interact": [1, 4, 11, 14, 16, 28, 33, 34, 36], "offer": [1, 2, 13, 22, 25, 28, 32], "command": [1, 2, 4, 6, 11, 14, 15, 20, 22, 26, 28, 30, 31, 32, 33, 34, 38], "listen": [1, 11, 14], "notifi": [1, 9, 11, 14, 20, 28, 36], "refer": [1, 5, 6, 10, 14, 15, 17, 18, 21, 26], "exampl": [1, 3, 4, 5, 9, 12, 13, 15, 16, 17, 20, 21, 23, 24, 26, 28, 29, 31, 32, 33, 34, 38], "form": [1, 2, 11, 15, 16, 20, 22, 24, 27, 28, 31, 32, 33], "commun": [1, 4, 5, 15, 20, 22, 28, 35, 36], "keep": [1, 2, 5, 16, 21, 30, 33], "mode": [1, 3, 8, 11, 13, 15, 17, 20, 22, 27, 28, 32, 35, 36], "wish": 1, "manner": 1, "reserv": 1, "simplest": 1, "consum": [1, 2, 4, 15, 28], "gener": [1, 2, 3, 5, 7, 11, 15, 17, 20, 21, 23, 24, 26, 28, 31, 32, 37], "stop": [1, 11, 15, 33], "2": [1, 2, 4, 5, 6, 8, 11, 14, 15, 16, 19, 20, 21, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 35], "option": [1, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 24, 25, 26, 27, 31, 32, 36], "perfectli": [1, 27], "valid": [1, 8, 12, 17, 20, 26, 28, 36], "mychan": 1, "gen": [1, 15], "payload": [1, 20], "hello": [1, 2, 4, 27, 31, 33], "hei": 1, "output": [1, 4, 23, 26, 31], "channel": [1, 11, 20], "pid": [1, 14, 20], "961823": 1, "add_notify_handl": [1, 11], "immedi": [1, 4, 5, 6, 20, 21, 33], "lambda": 1, "n": [1, 5, 20, 24], "got": 1, "meanwhil": 1, "lost": [1, 5, 21], "brutal": 1, "poll": [1, 22], "endless": [1, 15], "stream": [1, 4, 14, 15, 22, 27, 36], "fashion": 1, "besid": [1, 34], "ineffici": [1, 24], "unless": [1, 5, 6, 11, 13, 15, 27, 33], "realli": [1, 24, 31], "useless": 1, "traffic": 1, "averag": 1, "delai": [1, 5], "half": 1, "A": [1, 2, 4, 5, 6, 7, 9, 11, 12, 13, 15, 17, 20, 21, 22, 23, 24, 26, 28, 30, 31, 32, 33, 34, 35], "effici": [1, 2, 7, 10, 15, 27, 31], "addit": [1, 5, 16, 17, 32], "wait": [1, 4, 5, 11, 21, 24, 37], "check": [1, 3, 6, 7, 9, 11, 14, 17, 19, 20, 21, 23, 26, 31, 32, 37, 38], "dedic": [1, 5], "activ": [1, 5, 15, 20, 21, 22, 29, 33, 36], "awaken": 1, "selector": [1, 11], "fileno": [1, 11, 22], "file": [1, 11, 13, 16, 17, 22, 26, 27, 29, 30, 36], "like": [1, 5, 10, 11, 13, 14, 15, 23, 24, 26, 27, 28, 32, 33, 36], "rest": [1, 5, 31], "sel": 1, "defaultselector": 1, "event_read": 1, "while": [1, 15, 27, 28, 31, 34, 36, 37], "timeout": [1, 5, 11, 17, 21, 36, 37], "60": 1, "continu": [1, 20, 31, 33], "No": [1, 17, 21, 22, 29, 33], "fd": 1, "minut": [1, 21], "ok": [1, 20, 22, 30, 38], "try": [1, 4, 5, 9, 11, 15, 17, 21, 22, 30, 32, 33, 34, 36], "operationalerror": [1, 16, 17, 19, 21, 36], "were": [1, 11, 38], "panick": 1, "logger": [1, 5, 20, 33], "we": [1, 4, 10, 15, 30, 31, 33], "our": 1, "sy": [1, 21, 22], "add_read": 1, "ev": 1, "event": [1, 5, 37], "get_event_loop": 1, "wait_for": 1, "timeouterror": 1, "guess": [1, 15], "kind": 2, "aspect": 2, "bound": [2, 15, 31, 32], "better": [2, 4, 7, 22, 36], "prepar": [2, 3, 4, 5, 7, 11, 15, 20, 28, 33, 35, 36], "reduc": [2, 5, 15, 21, 36], "memori": [2, 15, 17, 36], "footprint": 2, "stricter": 2, "definit": [2, 9, 10, 15, 28, 32], "adapt": [2, 3, 5, 9, 11, 13, 14, 15, 18, 19, 20, 21, 22, 23, 24, 27, 29, 36], "partial": [2, 9, 10, 15, 26], "dataset": 2, "everydai": 2, "manipul": [2, 16, 18, 22, 26, 28, 31, 35], "style": [2, 15, 24, 26, 33], "support": [2, 3, 6, 7, 8, 11, 15, 16, 17, 18, 20, 22, 23, 24, 25, 26, 28, 29, 31, 32, 35, 36, 37], "strategi": 2, "packag": [2, 5, 16, 18, 21, 22, 25, 30, 32, 35, 36, 38], "async": [2, 3, 4, 5, 11, 13, 14, 16, 18, 20, 21, 23, 25, 27, 28, 33, 34, 36, 37], "prefix": [2, 36], "conjunct": [2, 14], "storag": 2, "clientcursor": [2, 18, 28, 36], "cient": 2, "servercursor": [2, 4, 11, 18, 36], "rawcursor": [2, 18], "cursor_factori": [2, 11, 14, 15, 19, 28, 36], "produc": [2, 8, 9, 15, 27, 33], "pattern": [2, 4, 5, 15, 16, 21, 27, 28, 34], "repli": 2, "transfer": 2, "sibl": 2, "scalabl": 2, "transmit": [2, 4, 31], "iter": [2, 11, 13, 15, 21, 24, 27, 32, 34, 36], "row": [2, 3, 4, 11, 13, 14, 15, 18, 19, 28, 29, 32, 34, 35, 36], "quick": 2, "downsid": 2, "entir": [2, 15, 21, 33], "proport": 2, "hold": [2, 15, 21, 25, 32], "suitabl": [2, 11, 24, 27, 32], "reason": [2, 5, 15, 24, 26, 31, 33], "small": [2, 4, 9], "previous": [2, 4, 11, 22, 33], "separ": [2, 5, 10, 15, 16, 21, 24, 28, 30, 31, 37], "parametris": 2, "build": [2, 10, 15, 22, 30, 36, 38], "featur": [2, 4, 11, 15, 17, 19, 20, 22, 31, 32, 33, 35, 38], "optim": [2, 24], "particular": [2, 33], "languag": [2, 35], "descript": [2, 7, 15, 18, 22, 23, 36], "problem": [2, 15, 17, 20, 24, 26, 27, 28, 31, 33, 36], "asyncclientcursor": [2, 15], "merg": [2, 12, 15, 24, 28, 31, 32], "parametr": [2, 8, 15, 28], "updat": [2, 10, 15, 16, 28, 30, 33, 38], "delet": [2, 28, 36, 38], "behaviour": [2, 4, 5, 11, 14, 15, 21, 25, 26, 27, 28, 32, 33, 34, 36], "could": [2, 9, 16, 17, 26, 27, 28, 31, 33], "port": [2, 12, 16, 20, 28, 36], "easili": [2, 31], "greater": [2, 5, 6, 20, 21, 26, 28], "flexibl": [2, 28], "tabl": [2, 4, 8, 13, 15, 17, 24, 28, 29, 31, 32, 33, 34], "init": [2, 21, 36], "dsn": [2, 7, 20, 28, 34], "idl": [2, 5, 11, 15, 20, 21, 22, 33, 37], "piro": [2, 12], "0x7fd977ae2880": 2, "off": [2, 22], "especi": [2, 4, 5, 13, 15, 26, 28, 32], "wide": 2, "field": [2, 7, 8, 17, 20, 22, 23, 24, 26, 27, 28, 31], "snippet": [2, 24], "concept": [2, 5], "portal": [2, 36], "necessarili": [2, 17], "first": [2, 5, 6, 11, 15, 21, 23, 27, 28, 33, 36, 37], "few": [2, 5, 9, 11, 12, 16, 17, 20, 21, 23, 25, 28, 31, 32, 33, 34], "track": 2, "resourc": [2, 5, 6, 11, 15, 17, 21, 28, 33, 34], "asyncservercursor": [2, 11, 15], "behind": [2, 5], "scene": 2, "fetch": [2, 4, 7, 8, 11, 15, 23, 25, 26, 28, 32, 34, 36], "move": [2, 15, 30], "scroll": [2, 15, 36], "larger": [2, 21, 26], "fit": 2, "huge": 2, "declar": [2, 6, 7, 15, 31, 32, 37], "give": [2, 21, 27], "good": [2, 20], "idea": [2, 5], "reffunc": 2, "refcursor": 2, "AS": [2, 8, 26, 31, 32], "begin": [2, 4, 11, 13, 20, 22, 33, 36], "open": [2, 4, 5, 13, 14, 15, 21, 27, 33, 34, 36, 37], "FOR": 2, "col": 2, "end": [2, 4, 5, 11, 15, 25, 27, 28, 30, 33, 34], "plpgsql": 2, "curnam": 2, "skip": [2, 4], "fetchmani": [2, 15, 34], "asyncrawcursor": [2, 15], "nativ": [2, 32], "etc": [2, 16, 17, 21, 32], "unmodifi": 2, "reli": [2, 5, 37], "deal": [2, 22, 23, 26, 33, 34], "complex": [2, 4, 23], "insid": [2, 11, 27, 28, 31, 33], "dollar": 2, "elsewher": [2, 4], "accept": [2, 5, 7, 11, 12, 21, 26, 28, 31], "posit": [2, 15, 21, 23, 24, 28, 31], "tupl": [2, 7, 8, 9, 10, 11, 13, 15, 20, 23, 25, 26, 27, 29, 31, 32, 34, 36], "dictionari": [2, 7, 8, 12, 23, 26, 31, 32], "There": [2, 4, 17, 22, 28, 33], "assert": 2, "familiaris": 3, "yourself": [3, 27], "section": [3, 18, 29, 36], "concurr": [3, 4, 5, 11, 21, 33, 34, 35], "asynchron": [3, 11, 13, 14, 19, 20, 28, 29, 35, 36], "interrupt": [3, 5, 11, 27, 36], "gevent": [3, 11, 36], "messag": [3, 5, 11, 15, 20, 22, 30, 33, 36], "notif": [3, 11, 14, 18, 36], "detect": [3, 36], "disconnect": [3, 17], "static": [3, 5, 7, 9, 21, 23, 28, 31, 35], "pydant": 3, "model": [3, 14, 33], "liter": [3, 9, 24, 31, 32, 36], "startup": 3, "life": [3, 10, 34], "cycl": [3, 10, 30, 34], "null": [3, 8, 18, 24, 27, 28, 37], "qualiti": 3, "log": [3, 21, 36], "stat": [3, 21], "side": [3, 4, 9, 11, 14, 15, 17, 26, 29, 31, 35, 36], "bind": [3, 4, 15, 22, 29, 31, 35, 36], "raw": [3, 7, 15, 36], "configur": [3, 5, 8, 9, 10, 11, 13, 17, 19, 21, 22, 25, 26, 28, 31, 32, 34, 35], "custom": [3, 7, 9, 10, 11, 13, 28, 32], "xml": 3, "numer": [3, 9, 17, 20, 26], "float": [3, 11, 21, 26, 31, 36], "infin": [3, 26, 29], "date": [3, 8, 9, 24, 27, 29, 31, 32], "dumper": [3, 9, 11, 18, 25, 27, 31, 32, 36], "loader": [3, 9, 11, 18, 25, 26, 28, 31, 32, 36], "pgbouncer": [3, 5, 20, 33, 36], "pipelin": [3, 11, 15, 17, 18, 22, 35, 36], "flow": 3, "synchron": [3, 11, 21], "applic": [4, 5, 8, 21, 26, 30, 33], "without": [4, 5, 8, 10, 13, 15, 16, 21, 23, 26, 30, 34], "advantag": [4, 26, 28], "sinc": [4, 11, 16, 32], "multipl": [4, 5, 16, 24, 29, 36], "singl": [4, 11, 12, 15, 17, 24, 26, 28, 31, 34], "network": [4, 5, 22, 29, 36], "roundtrip": [4, 15], "signific": 4, "boost": [4, 27], "distant": 4, "latenc": [4, 5], "ping": [4, 22], "being": [4, 5, 21, 33], "rapid": 4, "benefit": 4, "trip": 4, "300": [4, 21, 26, 36], "m": [4, 26], "awai": [4, 31], "30": [4, 21, 26, 28], "second": [4, 8, 20, 21, 26, 27, 31], "alon": [4, 15, 27], "spend": [4, 33], "littl": 4, "buffer": [4, 13, 31], "flush": 4, "establish": [4, 5, 10, 11, 14, 19, 22], "extend": [4, 9, 10, 16, 25, 28, 36], "detail": [4, 5, 6, 7, 8, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 24, 25, 26, 27, 28, 31, 32, 33, 34], "around": [4, 21, 22, 27, 28, 36], "understand": 4, "closer": 4, "tell": [4, 9], "far": [4, 27], "readyforqueri": [4, 22], "mytabl": [4, 17, 25, 26], "group": [4, 20, 33, 36], "direct": [4, 28, 35], "parsecomplet": [4, 22], "bindcomplet": [4, 22], "nodata": [4, 17, 22], "commandcomplet": [4, 22], "id": [4, 8, 11, 14, 15, 20, 24, 26, 28, 31, 33, 34], "rowdescript": [4, 22], "datarow": [4, 22], "consecut": 4, "pai": [4, 5, 33], "overhead": 4, "four": 4, "leg": 4, "combin": 4, "respons": [4, 22, 34], "batch": [4, 15, 24, 28, 36], "abov": [4, 5, 6, 8, 20, 27, 30, 33, 34], "enter": [4, 5, 21, 33, 34, 36], "yield": [4, 11, 21], "At": [4, 5, 8, 11, 21, 22], "resum": 4, "within": [4, 5, 11, 20, 21, 32, 34, 36], "executemani": [4, 15, 24, 34, 36], "othert": 4, "world": [4, 27], "abort": [4, 17, 21, 22, 33], "subsequ": 4, "queue": [4, 5, 21, 37], "next": [4, 15, 38], "pipelineabort": [4, 17], "includ": [4, 17, 20, 22, 24, 25, 26, 28, 30, 31, 32, 33, 36, 38], "sens": [4, 9], "job": [4, 5, 21, 38], "intern": [4, 17, 20, 21, 22, 33, 36, 37], "possibli": [4, 37], "nest": [4, 7, 11, 14, 20, 28, 32], "issu": [4, 8, 36], "reset": [4, 5, 21, 36], "full": [4, 5, 21], "wrap": [4, 11, 15, 18, 24, 25, 26, 28, 33], "implicit": [4, 28, 33, 36, 37], "failur": [4, 17, 20, 33, 36, 37], "invalid": [4, 11, 17, 23, 24, 36], "propag": [4, 33, 36], "p": [4, 8, 11, 22, 38], "no_such_t": 4, "three": [4, 11, 27, 31, 33], "undefinedt": [4, 17], "relat": [4, 15, 17, 18, 21, 31, 34, 35, 36], "discard": [4, 5, 21, 27, 32, 33], "item": [4, 15, 20, 24, 32], "exact": 4, "somewhat": [4, 24], "arbitrari": [4, 8, 21], "appli": [4, 13, 16, 21, 26, 27], "atom": [4, 33], "experiment": [4, 15, 16, 32], "Its": [4, 13, 19, 21], "condit": [4, 6, 17, 33, 37], "hasn": 4, "explor": 4, "natur": 4, "inher": 4, "gain": [4, 31], "experi": [4, 28], "feedback": [4, 32], "welcom": 4, "bug": 4, "shortcom": [4, 11], "forc": [4, 11, 15, 22], "u": 4, "must": [4, 6, 10, 11, 13, 15, 16, 21, 23, 24, 27, 28, 30, 31, 33], "libpq": [4, 6, 11, 15, 18, 28, 30, 35, 36, 38], "higher": [4, 6], "has_pipelin": [4, 20], "capabl": [4, 6, 11, 18, 19, 26, 36], "librari": [4, 19, 20, 22, 25, 26, 30, 32, 36], "rel": [5, 15, 24], "explain": [5, 11, 20, 29, 33], "connectionpool": [5, 8, 18, 37], "api": [5, 15, 19, 34, 35], "distribut": [5, 14, 21, 30, 32, 33, 36], "pip": [5, 16, 21, 22, 30], "instal": [5, 16, 21, 22, 29, 32, 35, 36, 38], "psycopg_pool": [5, 18, 30, 35], "somewher": [5, 13, 24], "roll": [5, 11, 20, 27, 33, 34], "releas": [5, 15, 30, 33], "amount": [5, 11, 21], "min_siz": [5, 21, 37], "max_siz": [5, 21, 37], "readi": [5, 7, 11, 21, 30], "serv": [5, 21], "caller": [5, 25, 33], "soon": [5, 11, 21, 33], "asyncconnectionpool": [5, 18, 37], "yet": [5, 8, 17, 20, 31, 33], "misconfigur": 5, "pooltimeout": [5, 21], "lifetim": [5, 15, 21], "environ": [5, 11, 20, 21, 30, 36], "well": [5, 10, 14, 32], "acquir": [5, 21], "use_th": 5, "spike": 5, "background": [5, 21], "conninfo": [5, 11, 14, 16, 18, 19, 21, 22, 35], "kwarg": [5, 8, 9, 11, 12, 14, 15, 16, 19, 21, 24, 37], "connection_class": [5, 8, 21], "constructor": [5, 7, 8, 9, 10, 13, 20, 21, 37], "someon": [5, 33], "typic": [5, 15, 23, 25, 31], "becom": [5, 21, 37], "finish": [5, 13, 15, 22, 23, 33], "stare": 5, "cleanup": 5, "along": 5, "max_lifetim": [5, 21, 37], "creation": [5, 15, 21, 37], "final": [5, 30, 34], "mandatori": [5, 21], "safest": 5, "db": [5, 12, 16, 18, 19, 26, 34, 35], "py": [5, 30, 38], "my_funct": 5, "shutdown": [5, 36], "fastapi": 5, "fals": [5, 6, 11, 14, 15, 19, 20, 21, 26, 28, 32, 37], "app": 5, "on_ev": 5, "open_pool": 5, "close_pool": 5, "prove": 5, "futur": [5, 16, 21, 31, 32], "explicitli": [5, 6, 9, 11, 15, 21, 28, 31, 33], "deprec": [5, 11, 16], "remov": [5, 11, 16, 30, 37], "deploi": 5, "hand": [5, 17, 21, 28], "balanc": 5, "extern": [5, 17], "switch": [5, 11], "introduc": [5, 17, 36], "nullconnectionpool": [5, 21, 37], "beforehand": [5, 30], "kept": [5, 11], "conveni": [5, 24, 34], "regul": 5, "given": [5, 10, 11, 15, 28], "further": [5, 6, 11, 13, 15, 16, 21, 27, 30, 33], "queu": [5, 21], "throttl": 5, "max_wait": [5, 21], "respect": [5, 16, 31, 36, 37], "paid": 5, "involv": 5, "dynam": [5, 8, 15, 16, 24, 25, 27, 28, 30, 31], "attempt": [5, 17, 21, 22, 32, 36, 37], "exponenti": [5, 21, 37], "backoff": [5, 21, 37], "increas": 5, "maximum": [5, 11, 21], "reconnect_timeout": [5, 21], "reach": 5, "reconnect_fail": [5, 21, 37], "alert": 5, "infrastructur": 5, "restart": [5, 21], "alwai": [5, 11, 20, 21, 26, 31], "scenario": 5, "domin": 5, "analysi": 5, "grow": [5, 21], "decreas": 5, "eventu": [5, 11, 16, 21, 24, 33], "unus": [5, 15, 21], "max_idl": [5, 21], "big": 5, "question": 5, "who": [5, 8, 31, 35], "imagin": [5, 11], "get_stat": [5, 21], "monitor": 5, "tune": 5, "runtim": [5, 8, 19, 21, 31], "resiz": [5, 21], "held": [5, 33], "idle_session_timeout": 5, "kill": 5, "haven": 5, "verifi": [5, 6, 17, 19, 21, 30], "cours": [5, 26, 32], "impli": [5, 26], "check_connect": [5, 21, 37], "kei": [5, 9, 11, 15, 17, 20, 23, 25, 26, 32, 34], "least": [5, 6, 10, 30], "info": [5, 11, 14, 15, 19, 20, 22, 25, 26, 27, 32], "script": [5, 33, 36, 38], "threadpoolexecutor": 5, "as_complet": 5, "basicconfig": 5, "asctim": 5, "levelnam": 5, "getlogg": 5, "setlevel": 5, "squar": 5, "sleep": 5, "rec": [5, 8, 15, 32], "max_work": 5, "executor": 5, "submit": 5, "rang": [5, 14, 17, 25, 28, 29, 36], "2023": 5, "09": [5, 17, 22], "20": [5, 17, 24, 26, 27, 28, 30, 31, 32], "11": [5, 22, 31, 37], "02": [5, 17, 22], "39": [5, 17, 22], "718": 5, "720": 5, "ad": [5, 11, 15, 17, 21, 24, 26, 33], "root": [5, 17], "721": 5, "722": 5, "40": [5, 17, 27], "724": 5, "725": [5, 36], "726": 5, "41": 5, "728": 5, "9": [5, 17, 20, 22, 26, 30], "729": 5, "730": 5, "remain": [5, 15, 20, 21, 33], "unchang": [5, 16], "constitut": 5, "stabl": [5, 16, 36, 38], "pop_stat": [5, 21], "latter": [5, 11, 19, 26, 36], "counter": [5, 21], "graphit": 5, "prometheu": 5, "rigid": 5, "metric": [5, 21], "pool_min": 5, "pool_max": 5, "pool_siz": 5, "pool_avail": 5, "requests_wait": 5, "usage_m": 5, "total": [5, 32, 36], "outsid": [5, 11, 20, 28, 33], "requests_num": 5, "requests_queu": 5, "wasn": [5, 6, 11], "requests_wait_m": 5, "requests_error": 5, "returns_bad": 5, "bad": [5, 8, 17, 20, 22, 31, 36], "connections_num": 5, "connections_m": 5, "spent": 5, "connections_error": 5, "connections_lost": 5, "identifi": [5, 8, 9, 20, 21, 24, 25, 27, 28, 31, 33], "plan": [6, 36], "optimis": [6, 10, 15], "prepare_threshold": [6, 11, 14, 19, 36], "prepared_max": [6, 11], "associ": [6, 15, 32], "freed": 6, "regardless": [6, 34], "none": [6, 7, 9, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 32, 33, 36], "met": [6, 30], "disabl": [6, 11, 22, 26, 36], "plenti": 6, "pqsendprepar": 6, "pqsendqueryprepar": 6, "middlewar": [6, 11, 33], "caveat": 6, "22": [6, 14, 17], "newer": [6, 15, 20], "max_prepared_stat": 6, "17": [6, 11, 20, 22], "has_pgbouncer_prepar": [6, 20], "suit": [7, 32], "programm": [7, 17], "dict_row": [7, 8, 18, 23, 28], "row_factori": [7, 8, 11, 14, 15, 19, 23, 28], "john": [7, 8, 23], "33": 7, "ag": [7, 23], "overrid": [7, 10, 11, 12, 15, 21, 25, 26], "namedtuple_row": [7, 18, 23, 28], "class_row": [7, 8, 18, 23], "args_row": [7, 18, 23], "dataclass": [7, 23], "person": [7, 8, 23, 33], "str": [7, 8, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 31, 32, 36], "int": [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 23, 25, 26, 27, 28, 32], "weight": 7, "annot": [7, 8, 21, 36, 37], "executeani": 7, "dict": [7, 8, 12, 16, 20, 21, 26, 28, 32, 36], "callabl": [7, 11, 21, 23, 25, 32], "maker": 7, "role": [7, 17, 25, 26], "inspect": [7, 11, 17, 21, 23, 36], "properti": [7, 9, 11, 15, 20, 33], "repeatedli": [7, 36], "column": [7, 15, 18, 23, 27, 28, 31, 32], "sanitis": [7, 10], "variabl": [7, 11, 20, 21, 24, 30, 31, 32, 36], "formal": [7, 18], "repres": [7, 9, 10, 11, 17, 20, 22, 23, 24, 25, 26, 28, 32, 33], "rowfactori": [7, 11, 14, 15, 19, 23], "rowmak": [7, 23], "dictrowfactori": 7, "__init__": [7, 8], "__call__": [7, 23], "zip": [7, 38], "dict_row_factori": 7, "make_row": 7, "These": [7, 10, 13, 14, 15, 17, 22, 23, 26, 33], "first_nam": [7, 8, 23], "last_nam": [7, 8, 23, 31], "sourc": [8, 17, 24, 27, 31, 38], "pep": [8, 15, 24, 36], "0484": 8, "hint": [8, 36], "mypi": [8, 23, 32], "correct": [8, 30, 31, 34, 36, 37], "fetchal": [8, 15, 34], "unknown": [8, 19, 20, 22, 25, 26, 36], "plumb": 8, "practic": 8, "accordingli": 8, "dconn": 8, "dcur": 8, "drec": 8, "moment": [8, 21], "consist": [8, 16, 36], "agre": 8, "dictrow": [8, 23], "reveal_typ": 8, "myconnect": 8, "arg": [8, 9, 24], "enforc": [8, 37], "incompat": 8, "basemodel": 8, "dob": 8, "fetch_person": 8, "2000": [8, 24], "01": [8, 24, 26, 34], "jane": 8, "white": 8, "keyerror": [8, 17, 25], "born": 8, "input": [8, 12, 15, 16, 24, 26, 27, 31, 36], "675": [8, 15, 24, 36], "come": [8, 17, 20, 24, 26, 27, 31, 33], "express": [8, 24, 26, 31, 34], "done": 8, "get_record": 8, "my_tabl": [8, 24, 33], "compos": [8, 11, 15, 24, 27, 28], "count_record": 8, "count": [8, 33], "analyz": 8, "pyre": 8, "checker": [8, 31], "cl": [9, 10, 16, 23, 25, 26], "inaccur": 9, "everyth": [9, 23], "union": [9, 10, 11, 12, 13, 14, 15, 16, 19, 20, 21, 22, 24, 25, 26], "bytearrai": [9, 10, 26, 36], "memoryview": [9, 10, 26, 36], "undefin": 9, "scratch": 9, "car": 9, "burn": 9, "cake": 9, "me": 9, "didn": [9, 15, 30], "known": [9, 25, 31, 32], "infer": 9, "cast": [9, 13, 24, 26, 27, 29, 36], "registri": [9, 10, 14, 25], "pyformat": [9, 10, 22, 24], "dumperkei": [9, 10], "defin": [9, 10, 11, 15, 16, 17, 21, 23, 26, 31, 32, 36], "timestamptz": [9, 13, 26], "timestamp": [9, 20, 26, 28], "tzinfo": [9, 26, 36], "int2": [9, 26], "int4": [9, 13, 14, 19, 25, 26, 27], "int8": [9, 14], "overflow": [9, 28, 36], "smaller": [9, 26], "again": [9, 21, 22, 33], "get_dump": [9, 10], "itself": [9, 15, 17, 28, 30, 31, 34], "reus": [9, 36], "explan": [9, 10, 11, 16], "baseconnect": 9, "overview": [10, 14], "abstract": [10, 13, 18, 24, 35], "member": [10, 11, 26], "pq": [10, 11, 15, 17, 18, 20, 24, 30, 35, 36, 38], "won": [10, 24, 26], "specialis": [10, 14, 25], "enum": [10, 20, 22, 29, 36, 38], "choos": [10, 11, 13, 26, 30, 31, 36], "underli": [10, 11, 22, 25], "parent": [10, 15, 21], "child": 10, "wider": [10, 28, 33], "initialis": [10, 32], "adptersmap": 10, "empti": [10, 13, 26, 28, 32, 36, 37], "cheap": 10, "chosen": [10, 11, 22, 31], "lazi": 10, "fulli": [10, 27], "qualifi": [10, 20, 24, 33], "uuid": [10, 29], "get_dumper_by_oid": 10, "set_typ": [10, 13, 27, 36], "loar": 10, "programmingerror": [10, 11, 12, 17, 19, 36], "get_load": 10, "assum": 10, "wrapper": [11, 14, 17, 18, 20, 25, 26, 32, 35], "compar": [11, 33, 36], "dbapi": [11, 15, 17, 19, 20, 28, 33], "compliant": [11, 15], "classic": [11, 15], "eventlet": 11, "classmethod": [11, 14, 16, 20, 25], "bool": [11, 14, 15, 19, 20, 21, 26, 32], "5": [11, 14, 17, 19, 20, 21, 22], "url": 11, "pair": [11, 21, 26, 32], "tuple_row": [11, 14, 15, 18, 23], "special": [11, 20, 26], "alias": [11, 36, 37], "clean": [11, 21], "scrollabl": [11, 15], "withhold": [11, 15], "server_cursor_factori": 11, "param": [11, 12, 15, 16], "disallow": [11, 15], "innermost": [11, 33], "outermost": [11, 33], "pend": [11, 20, 27], "savepoint_nam": [11, 20], "force_rollback": 11, "savepoint": [11, 17, 20, 33, 36], "op": [11, 21, 36], "syntax": [11, 15, 17, 26, 28, 31], "tx": [11, 20], "writabl": [11, 15], "set_autocommit": [11, 36], "setter": 11, "characterist": [11, 29], "isolation_level": [11, 20, 33], "isol": [11, 20, 33], "default_transaction_isol": [11, 33], "set_isolation_level": [11, 33], "isolationlevel": [11, 20], "read_onli": [11, 28, 33, 36], "default_transaction_read_onli": [11, 28], "set_read_onli": 11, "deferr": [11, 33, 36], "default_transaction_deferr": 11, "set_deferr": 11, "pgconn": [11, 14, 17, 20, 22, 36], "low": [11, 15, 22], "connectioninfo": [11, 14, 20, 28, 36], "old": [11, 22], "cool": 11, "cancel_saf": [11, 20, 36], "leverag": 11, "secur": [11, 24], "improv": [11, 27, 33, 36], "older": [11, 14], "fall": 11, "has_cancel_saf": [11, 20], "legaci": [11, 20, 26], "pqcancel": [11, 20, 22], "insecur": 11, "origin": 11, "therefor": 11, "stop_aft": [11, 36], "actual": [11, 22, 33], "arriv": 11, "packet": 11, "remove_notify_handl": 11, "unregist": [11, 26], "remove_notice_handl": 11, "descriptor": [11, 17], "phase": [11, 14, 18, 22, 29, 36], "introductori": 11, "xid": [11, 20, 33], "format_id": [11, 20], "gtrid": [11, 20], "bqual": [11, 20], "tpc_": 11, "constraint": [11, 17], "tpc_begin": [11, 33], "tpc": 11, "noth": 11, "transaction_statu": [11, 15, 20], "furthermor": [11, 26, 28], "plain": 11, "tpc_recov": [11, 20, 33], "tpc_prepar": [11, 33], "tpc_commit": [11, 33], "tpc_rollback": [11, 33], "prior": 11, "particip": 11, "recoveri": [11, 33], "usabl": [11, 22, 36], "algorithm": [11, 22], "jdbc": [11, 33], "driver": [11, 33], "xa": [11, 20, 33], "tripl": 11, "unpack": [11, 20, 38], "correctli": [11, 21, 36], "extra": [11, 21, 22, 30], "owner": [11, 20], "popul": [11, 14, 25], "pg_prepared_xact": 11, "inspir": [11, 15, 33], "coroutin": [11, 15, 21, 25], "match": [11, 15, 26, 27], "asyncrowfactori": [11, 14, 15, 23], "resolv": [11, 16, 36], "domain": [11, 36], "care": [11, 31, 34], "quirk": 11, "asynciter": [11, 13, 15, 21], "asyncpipelin": [11, 20], "asynctransact": [11, 20], "asyncgener": 11, "util": [12, 18, 22, 35], "conninfo_to_dict": [12, 16, 18], "jeff": 12, "com": [12, 16], "host": [12, 16, 20, 30, 36], "make_conninfo": [12, 18], "5432": 12, "asynccopi": [13, 15, 27], "present": [13, 16, 24, 28, 31, 35], "exchang": 13, "destin": [13, 27], "filewrit": 13, "TO": [13, 15, 20, 26, 28, 29, 35, 36], "write_row": [13, 27], "unpars": [13, 27, 31, 33], "equival": [13, 15, 16, 26, 31, 32, 33, 34], "read_row": [13, 27], "overcom": 13, "lack": [13, 36], "metadata": 13, "helper": [13, 15, 25], "written": [13, 33], "libpqwrit": 13, "offlin": 13, "asyncwrit": [13, 15], "exc": 13, "baseexcept": [13, 34], "io": 13, "save": [13, 26, 38], "target": [13, 15, 16, 24, 27, 33], "pgcopi": 13, "wb": [13, 27], "semant": [13, 15, 28], "asynclibpqwrit": 13, "front": 14, "backend": [14, 20], "tweak": [14, 21], "backend_pid": [14, 20], "show": [14, 26, 34, 36], "session_id": 14, "lieu": 14, "pg_terminate_backend": 14, "miss": [14, 17, 36], "slightli": 14, "changefe": [14, 15], "push": [14, 38], "alia": [14, 19], "crdbconnect": 14, "asynccrdbconnect": 14, "is_crdb": 14, "crdbconnectioninfo": 14, "vendor": [14, 20], "server_vers": [14, 20, 22], "21": [14, 17], "10": [14, 20, 21, 22, 24, 26, 27, 28, 30, 31, 34], "210210": 14, "among": [14, 15, 38], "multirang": [14, 29, 36], "hstore": [14, 29], "geometr": 14, "jsonb": [14, 25, 26], "cidr": [14, 26], "json": [14, 18, 29, 36], "though": [15, 28, 30, 33], "free": [15, 22, 28, 34], "chain": [15, 34], "stringliter": 15, "params_seq": 15, "creativ": [15, 27], "nextset": [15, 28, 36], "bunch": 15, "primari": [15, 34], "taken": [15, 23, 24, 33], "exactli": 15, "append": [15, 20], "break": [15, 31], "rowcount": [15, 36], "cumul": 15, "writer": [15, 18, 36], "materi": 15, "subscrib": 15, "cockroachdb": [15, 18, 35, 36], "bewar": 15, "left": [15, 21, 24, 31, 33, 34, 37], "refus": [15, 33], "chanc": [15, 33], "restor": [15, 36], "contextlib": 15, "particularli": [15, 26, 27, 30], "generate_seri": 15, "10000": 15, "intran": [15, 20, 22, 34], "inerror": [15, 20, 22], "resultset": 15, "alter": [15, 28], "recordset": 15, "arrays": 15, "through": [15, 22, 36], "offset": [15, 26, 36], "absolut": [15, 20, 24], "indexerror": 15, "statu": [15, 20, 22], "tag": [15, 38], "42": [15, 17, 24, 26, 28], "preced": [15, 25, 26], "rownumb": [15, 36], "index": [15, 28, 32, 35], "_queri": 15, "part": [15, 24, 28], "public": [15, 18, 36], "reliabl": [15, 31, 36], "touch": 15, "replac": [15, 16, 21, 24, 34], "problemat": 15, "mogrifi": 15, "literalstr": [15, 24, 36], "NO": 15, "WITH": [15, 17], "alloc": [15, 17, 22], "lock": [15, 17, 33], "procedur": [15, 20, 28, 33], "crete": 15, "steal": [15, 31], "iters": 15, "backward": 15, "boundari": 15, "w": [15, 36], "r": [15, 24, 27, 38], "scheme": 16, "dnspython": 16, "resolve_srv": [16, 18], "srv": 16, "lookup": [16, 17, 25], "rfc": 16, "2782": 16, "comma": [16, 24, 31], "_servic": 16, "_proto": 16, "entri": [16, 26], "insensit": 16, "_get_connection_param": [16, 18], "srvcognizantconnect": 16, "db1": 16, "cnn": [16, 26], "_postgr": 16, "_tcp": 16, "org": 16, "resolve_srv_async": [16, 18], "hook": 16, "anymor": [16, 17], "hostnam": 16, "address": [16, 20, 26, 28, 36], "inconsist": 16, "length": 16, "doc": [16, 38], "unneed": 16, "asyncdnsconnect": 16, "examin": 17, "complianc": 17, "__": [17, 19, 24], "interfaceerror": [17, 19], "integrityerror": [17, 19], "internalerror": [17, 19], "notsupportederror": [17, 19, 20], "catch": 17, "picklabl": 17, "went": 17, "wrong": [17, 31, 33, 36], "needs_password": [17, 22], "used_password": [17, 22], "divis": 17, "zero": [17, 21, 26], "under": 17, "unexpect": [17, 26], "occur": [17, 36], "integr": [17, 34], "foreign": [17, 31], "connectiontimeout": 17, "connect_timeout": 17, "pqresulterrorfield": [17, 22], "pg_diag_sever": 17, "column_nam": [17, 22], "constraint_nam": [17, 22], "datatype_nam": [17, 22], "internal_posit": [17, 22], "internal_queri": [17, 22], "message_detail": [17, 22], "message_hint": [17, 22], "schema_nam": [17, 22], "severity_nonloc": [17, 22], "source_fil": [17, 22], "source_funct": [17, 22], "source_lin": [17, 22], "statement_posit": [17, 22], "table_nam": [17, 22, 24, 27], "letter": [17, 26], "idiomat": 17, "IN": [17, 26, 29], "exclus": 17, "nowait": 17, "locknotavail": 17, "6": [17, 22, 30], "15": [17, 20, 34], "camelcas": 17, "22012": 17, "division_by_zero": 17, "divisionbyzero": 17, "disambigu": 17, "clash": 17, "below": [17, 21], "constant": [17, 22, 24, 28, 36], "undefined_t": 17, "55p03": 17, "02000": 17, "02001": 17, "noadditionaldynamicresultsetsreturn": 17, "03": 17, "Not": 17, "03000": 17, "sqlstatementnotyetcomplet": 17, "08": [17, 26], "08000": 17, "connectionexcept": 17, "08001": 17, "sqlclientunabletoestablishsqlconnect": 17, "08003": 17, "connectiondoesnotexist": 17, "08004": 17, "sqlserverrejectedestablishmentofsqlconnect": 17, "08006": 17, "connectionfailur": 17, "08007": 17, "transactionresolutionunknown": 17, "08p01": 17, "protocolviol": 17, "trigger": [17, 38], "action": [17, 33, 38], "09000": 17, "triggeredactionexcept": 17, "0a": 17, "0a000": 17, "featurenotsupport": 17, "0b": 17, "0b000": 17, "invalidtransactioniniti": 17, "0f": 17, "locat": 17, "0f000": 17, "locatorexcept": 17, "0f001": 17, "invalidlocatorspecif": 17, "0l": 17, "grantor": 17, "0l000": 17, "invalidgrantor": 17, "0lp01": 17, "invalidgrantoper": 17, "0p": 17, "0p000": 17, "invalidrolespecif": 17, "0z": 17, "0z000": 17, "diagnosticsexcept": 17, "0z002": 17, "stackeddiagnosticsaccessedwithoutactivehandl": 17, "20000": 17, "casenotfound": 17, "cardin": 17, "violat": 17, "21000": 17, "cardinalityviol": 17, "22000": 17, "dataexcept": 17, "22001": 17, "stringdatarighttrunc": 17, "22002": 17, "nullvaluenoindicatorparamet": 17, "22003": 17, "numericvalueoutofrang": 17, "22004": 17, "nullvaluenotallow": 17, "22005": 17, "errorinassign": 17, "22007": 17, "invaliddatetimeformat": 17, "22008": 17, "datetimefieldoverflow": 17, "22009": 17, "invalidtimezonedisplacementvalu": 17, "2200b": 17, "escapecharacterconflict": 17, "2200c": 17, "invaliduseofescapecharact": 17, "2200d": 17, "invalidescapeoctet": 17, "2200f": 17, "zerolengthcharacterstr": 17, "2200g": 17, "mostspecifictypemismatch": 17, "2200h": 17, "sequencegeneratorlimitexceed": 17, "2200l": 17, "notanxmldocu": 17, "2200m": 17, "invalidxmldocu": 17, "2200n": 17, "invalidxmlcont": 17, "2200": 17, "invalidxmlcom": 17, "2200t": 17, "invalidxmlprocessinginstruct": 17, "22010": 17, "invalidindicatorparametervalu": 17, "22011": 17, "substringerror": 17, "22013": 17, "invalidprecedingorfollowings": 17, "22014": 17, "invalidargumentforntilefunct": 17, "22015": 17, "intervalfieldoverflow": 17, "22016": 17, "invalidargumentfornthvaluefunct": 17, "22018": 17, "invalidcharactervalueforcast": 17, "22019": 17, "invalidescapecharact": 17, "2201b": 17, "invalidregularexpress": 17, "2201e": 17, "invalidargumentforlogarithm": 17, "2201f": 17, "invalidargumentforpowerfunct": 17, "2201g": 17, "invalidargumentforwidthbucketfunct": 17, "2201w": 17, "invalidrowcountinlimitclaus": 17, "2201x": 17, "invalidrowcountinresultoffsetclaus": 17, "22021": 17, "characternotinrepertoir": 17, "22022": 17, "indicatoroverflow": 17, "22023": 17, "invalidparametervalu": 17, "22024": 17, "unterminatedcstr": 17, "22025": 17, "invalidescapesequ": 17, "22026": 17, "stringdatalengthmismatch": 17, "22027": 17, "trimerror": 17, "2202e": 17, "arraysubscripterror": 17, "2202g": 17, "invalidtablesamplerepeat": 17, "2202h": 17, "invalidtablesampleargu": 17, "22030": 17, "duplicatejsonobjectkeyvalu": 17, "22031": 17, "invalidargumentforsqljsondatetimefunct": 17, "22032": 17, "invalidjsontext": 17, "22033": 17, "invalidsqljsonsubscript": 17, "22034": 17, "morethanonesqljsonitem": 17, "22035": 17, "nosqljsonitem": 17, "22036": 17, "nonnumericsqljsonitem": 17, "22037": 17, "nonuniquekeysinajsonobject": 17, "22038": 17, "singletonsqljsonitemrequir": 17, "22039": 17, "sqljsonarraynotfound": 17, "2203a": 17, "sqljsonmembernotfound": 17, "2203b": 17, "sqljsonnumbernotfound": 17, "2203c": 17, "sqljsonobjectnotfound": 17, "2203d": 17, "toomanyjsonarrayel": 17, "2203e": 17, "toomanyjsonobjectmemb": 17, "2203f": 17, "sqljsonscalarrequir": 17, "2203g": 17, "sqljsonitemcannotbecasttotargettyp": 17, "22p01": 17, "floatingpointexcept": 17, "22p02": 17, "invalidtextrepresent": 17, "22p03": 17, "invalidbinaryrepresent": 17, "22p04": 17, "badcopyfileformat": 17, "22p05": 17, "untranslatablecharact": [17, 26], "22p06": 17, "nonstandarduseofescapecharact": 17, "23": [17, 19, 25], "23000": 17, "integrityconstraintviol": 17, "23001": 17, "restrictviol": 17, "23502": 17, "notnullviol": 17, "23503": 17, "foreignkeyviol": 17, "23505": 17, "uniqueviol": 17, "23514": 17, "checkviol": 17, "23p01": 17, "exclusionviol": 17, "24": [17, 26, 27], "24000": 17, "invalidcursorst": 17, "25": [17, 25], "25000": 17, "invalidtransactionst": 17, "25001": 17, "activesqltransact": [17, 28], "25002": 17, "branchtransactionalreadyact": 17, "25003": 17, "inappropriateaccessmodeforbranchtransact": 17, "25004": 17, "inappropriateisolationlevelforbranchtransact": 17, "25005": 17, "noactivesqltransactionforbranchtransact": 17, "25006": 17, "readonlysqltransact": 17, "25007": 17, "schemaanddatastatementmixingnotsupport": 17, "25008": 17, "heldcursorrequiressameisolationlevel": 17, "25p01": 17, "noactivesqltransact": 17, "25p02": 17, "infailedsqltransact": [17, 33], "25p03": 17, "idleintransactionsessiontimeout": 17, "26": 17, "26000": 17, "invalidsqlstatementnam": 17, "27": 17, "27000": 17, "triggereddatachangeviol": 17, "28": [17, 22], "author": [17, 31], "28000": 17, "invalidauthorizationspecif": 17, "28p01": 17, "invalidpassword": 17, "2b": 17, "privileg": 17, "2b000": 17, "dependentprivilegedescriptorsstillexist": 17, "2bp01": 17, "dependentobjectsstillexist": 17, "2d": 17, "2d000": 17, "invalidtransactiontermin": 17, "2f": 17, "routin": 17, "2f000": 17, "sqlroutineexcept": 17, "2f002": 17, "modifyingsqldatanotpermit": 17, "2f003": 17, "prohibitedsqlstatementattempt": 17, "2f004": 17, "readingsqldatanotpermit": 17, "2f005": 17, "functionexecutednoreturnstat": 17, "34": 17, "34000": 17, "invalidcursornam": 17, "38": 17, "38000": 17, "externalroutineexcept": 17, "38001": 17, "containingsqlnotpermit": 17, "38002": 17, "modifyingsqldatanotpermittedext": 17, "38003": 17, "prohibitedsqlstatementattemptedext": 17, "38004": 17, "readingsqldatanotpermittedext": 17, "invoc": 17, "39000": 17, "externalroutineinvocationexcept": 17, "39001": 17, "invalidsqlstatereturn": 17, "39004": 17, "nullvaluenotallowedext": 17, "39p01": 17, "triggerprotocolviol": 17, "39p02": 17, "srfprotocolviol": 17, "39p03": 17, "eventtriggerprotocolviol": 17, "3b": 17, "3b000": 17, "savepointexcept": 17, "3b001": 17, "invalidsavepointspecif": 17, "3d": 17, "catalog": [17, 25], "3d000": 17, "invalidcatalognam": 17, "3f": 17, "schema": [17, 24, 25, 27], "3f000": 17, "invalidschemanam": 17, "40000": 17, "transactionrollback": 17, "40001": 17, "serializationfailur": [17, 33], "40002": 17, "transactionintegrityconstraintviol": 17, "40003": 17, "statementcompletionunknown": 17, "40p01": 17, "deadlockdetect": 17, "42000": 17, "syntaxerrororaccessruleviol": 17, "42501": 17, "insufficientprivileg": 17, "42601": 17, "syntaxerror": [17, 26, 28, 31], "42602": 17, "invalidnam": 17, "42611": 17, "invalidcolumndefinit": 17, "42622": 17, "nametoolong": 17, "42701": 17, "duplicatecolumn": 17, "42702": 17, "ambiguouscolumn": 17, "42703": 17, "undefinedcolumn": 17, "42704": 17, "undefinedobject": 17, "42710": 17, "duplicateobject": 17, "42712": 17, "duplicatealia": 17, "42723": 17, "duplicatefunct": 17, "42725": 17, "ambiguousfunct": 17, "42803": 17, "groupingerror": 17, "42804": 17, "datatypemismatch": 17, "42809": 17, "wrongobjecttyp": 17, "42830": 17, "invalidforeignkei": 17, "42846": 17, "cannotcoerc": 17, "42883": 17, "undefinedfunct": 17, "428c9": 17, "generatedalwai": 17, "42939": 17, "reservednam": 17, "42p01": 17, "42p02": 17, "undefinedparamet": [17, 28], "42p03": 17, "duplicatecursor": 17, "42p04": 17, "duplicatedatabas": 17, "42p05": 17, "duplicatepreparedstat": 17, "42p06": 17, "duplicateschema": 17, "42p07": 17, "duplicatet": 17, "42p08": 17, "ambiguousparamet": 17, "42p09": 17, "ambiguousalia": 17, "42p10": 17, "invalidcolumnrefer": 17, "42p11": 17, "invalidcursordefinit": 17, "42p12": 17, "invaliddatabasedefinit": 17, "42p13": 17, "invalidfunctiondefinit": 17, "42p14": 17, "invalidpreparedstatementdefinit": 17, "42p15": 17, "invalidschemadefinit": 17, "42p16": 17, "invalidtabledefinit": 17, "42p17": 17, "invalidobjectdefinit": 17, "42p18": 17, "indeterminatedatatyp": [17, 28], "42p19": 17, "invalidrecurs": 17, "42p20": 17, "windowingerror": 17, "42p21": 17, "collationmismatch": 17, "42p22": 17, "indeterminatecol": 17, "44": 17, "44000": 17, "withcheckoptionviol": 17, "53": 17, "insuffici": 17, "53000": 17, "insufficientresourc": 17, "53100": 17, "diskful": 17, "53200": 17, "outofmemori": 17, "53300": 17, "toomanyconnect": 17, "53400": 17, "configurationlimitexceed": 17, "54": 17, "exceed": 17, "54000": 17, "programlimitexceed": 17, "54001": 17, "statementtoocomplex": 17, "54011": 17, "toomanycolumn": 17, "54023": 17, "toomanyargu": 17, "55": 17, "prerequisit": [17, 30], "55000": 17, "objectnotinprerequisitest": 17, "55006": 17, "objectinus": 17, "55p02": 17, "cantchangeruntimeparam": 17, "55p04": 17, "unsafenewenumvalueusag": 17, "57": 17, "intervent": 17, "57000": 17, "operatorintervent": 17, "57014": 17, "querycancel": [17, 36], "57p01": 17, "adminshutdown": 17, "57p02": 17, "crashshutdown": 17, "57p03": 17, "cannotconnectnow": 17, "57p04": 17, "databasedrop": 17, "57p05": 17, "idlesessiontimeout": 17, "58": 17, "58000": 17, "systemerror": 17, "58030": 17, "ioerror": 17, "58p01": 17, "undefinedfil": 17, "58p02": 17, "duplicatefil": 17, "72": [17, 36], "snapshot": 17, "72000": 17, "snapshottooold": 17, "f0": 17, "f0000": 17, "configfileerror": 17, "f0001": 17, "lockfileexist": 17, "hv": 17, "med": 17, "hv000": 17, "fdwerror": 17, "hv001": 17, "fdwoutofmemori": 17, "hv002": 17, "fdwdynamicparametervalueneed": 17, "hv004": 17, "fdwinvaliddatatyp": 17, "hv005": 17, "fdwcolumnnamenotfound": 17, "hv006": 17, "fdwinvaliddatatypedescriptor": 17, "hv007": 17, "fdwinvalidcolumnnam": 17, "hv008": 17, "fdwinvalidcolumnnumb": 17, "hv009": 17, "fdwinvaliduseofnullpoint": 17, "hv00a": 17, "fdwinvalidstringformat": 17, "hv00b": 17, "fdwinvalidhandl": 17, "hv00c": 17, "fdwinvalidoptionindex": 17, "hv00d": 17, "fdwinvalidoptionnam": 17, "hv00j": 17, "fdwoptionnamenotfound": 17, "hv00k": 17, "fdwreplyhandl": 17, "hv00l": 17, "fdwunabletocreateexecut": 17, "hv00m": 17, "fdwunabletocreaterepli": 17, "hv00n": 17, "fdwunabletoestablishconnect": 17, "hv00p": 17, "fdwnoschema": 17, "hv00q": 17, "fdwschemanotfound": 17, "hv00r": 17, "fdwtablenotfound": 17, "hv010": 17, "fdwfunctionsequenceerror": 17, "hv014": 17, "fdwtoomanyhandl": 17, "hv021": 17, "fdwinconsistentdescriptorinform": 17, "hv024": 17, "fdwinvalidattributevalu": 17, "hv090": 17, "fdwinvalidstringlengthorbufferlength": 17, "hv091": 17, "fdwinvaliddescriptorfieldidentifi": 17, "p0": 17, "p0000": 17, "plpgsqlerror": 17, "p0001": 17, "raiseexcept": 17, "p0002": 17, "nodatafound": 17, "p0003": 17, "toomanyrow": 17, "p0004": 17, "assertfailur": 17, "xx": 17, "xx000": 17, "internalerror_": 17, "xx001": 17, "datacorrupt": 17, "xx002": 17, "indexcorrupt": 17, "conceptu": 18, "advanc": [18, 28, 35], "topic": [18, 34, 35], "top": [18, 35], "scalar_row": [18, 23, 36], "kwargs_row": [18, 23], "sqlstate": [18, 19, 22, 36], "structur": [18, 23, 28, 32], "enumer": 18, "crdb": [18, 35, 36], "_dn": [18, 35], "encrypt": [19, 22, 36], "password": [19, 20, 22, 28], "has_encrypt_password": [19, 20], "has_hostaddr": [19, 20], "hostadd": 19, "1007": [19, 25], "get_paramet": 20, "pqstatu": [20, 22], "ordinarili": 20, "pqtransactionstatu": [20, 22], "pipeline_statu": 20, "pqpipelinestatu": [20, 22], "pqbackendpid": 20, "pqserververs": 20, "major": 20, "minor": 20, "revis": 20, "digit": 20, "drop": [20, 36, 37], "00": [20, 26, 34], "90305": 20, "100002": 20, "error_messag": [20, 22], "pqerrormessag": 20, "timezon": [20, 26, 28], "zoneinfo": [20, 26, 36], "europ": [20, 26], "rome": [20, 26], "pqhost": 20, "ip": [20, 36], "directori": [20, 38], "unix": 20, "socket": [20, 22], "distinguish": 20, "pqhostaddr": 20, "pqport": 20, "pqdb": 20, "pquser": 20, "pqpass": 20, "line": [20, 26, 28, 30, 38], "pqoption": 20, "parameter_statu": 20, "param_nam": 20, "standard_conforming_str": 20, "pqparameterstatu": 20, "codec": 20, "client_encod": [20, 26, 29, 36], "latin9": [20, 26], "iso8859": 20, "euc_tw": 20, "mule_intern": 20, "sql_ascii": [20, 26, 36], "has_someth": 20, "boolean": [20, 29, 32, 36], "degrad": 20, "gracefulli": [20, 36], "why": [20, 28], "crash": [20, 24, 36], "clear": [20, 22, 31], "13": [20, 22, 26], "encrypt_password": [20, 22], "has_set_trace_flag": 20, "set_trace_flag": [20, 22], "anywai": [20, 21], "7": [20, 22, 26, 30], "type_cod": 20, "display_s": 20, "varchar": [20, 26, 36], "internal_s": 20, "scale": 20, "attach": [20, 26, 36], "is_support": 20, "read_uncommit": 20, "read_commit": 20, "repeatable_read": [20, 33], "serializ": [20, 33], "enclos": 20, "branch": [20, 33, 38], "maintain": [21, 30], "multithread": 21, "asyncnullconnectionpool": 21, "ct": 21, "3600": [21, 26], "600": 21, "num_work": 21, "alot": 21, "fundament": 21, "meaning": 21, "expand": 21, "minimum": 21, "go": [21, 28, 33, 34], "equal": [21, 31, 32], "shrink": 21, "getconn": 21, "throw": 21, "sequenti": 21, "toomanyrequest": 21, "hour": 21, "random": 21, "mass": 21, "evict": 21, "stai": 21, "shrunk": 21, "reconnect": [21, 37], "factor": 21, "repeat": [21, 24, 26, 31, 33, 36], "anyth": [21, 28, 30], "fell": 21, "implicitli": [21, 32, 33], "my_pool": 21, "fill": [21, 34, 37], "re": 21, "unavail": 21, "poolclos": [21, 37], "expir": 21, "although": [21, 26, 33], "sec": 21, "prefer": [21, 26, 30, 33], "properli": 21, "hardest": 21, "dispos": 21, "quietli": 21, "correspond": [21, 26, 32], "putconn": 21, "deplet": 21, "sad": 21, "love": 21, "comfort": 21, "couldn": [21, 22], "signatur": [21, 27], "pool_async": 21, "explicit": [21, 33, 34, 36], "preemptiv": 21, "fuss": 21, "sit": 21, "built": [22, 32, 38], "pure": [22, 26, 29], "ctype": [22, 30, 36], "compil": [22, 30], "cython": 22, "develop": [22, 30, 33, 34], "machin": [22, 30], "pre": 22, "bundl": 22, "easiest": 22, "tool": [22, 30, 33, 38], "platform": [22, 30, 36], "__impl__": 22, "export": 22, "env": 22, "var": 22, "psycopg_impl": [22, 30], "importerror": 22, "psycopg_c": [22, 38], "pqlibvers": 22, "__build_version__": [22, 36], "160002": 22, "speedup": 22, "utf8": [22, 26], "fallback": 22, "decod": [22, 26, 28, 36], "pgconn_ptr": 22, "pointer": 22, "ffi": 22, "get_cancel": 22, "pgcancel": 22, "pqgetcancel": 22, "authent": 22, "pqconnectionneedspassword": 22, "pqconnectionusedpassword": 22, "passwd": 22, "pqencryptpasswordconn": 22, "enc": 22, "rolenam": 22, "scram": 22, "sha": 22, "256": 22, "4096": 22, "trace": [22, 36], "enabl": [22, 28], "pqtrace": 22, "flag": 22, "pqsettraceflag": 22, "untrac": 22, "pquntrac": 22, "stderr": 22, "suppress_timestamp": 22, "regress_mod": 22, "nnnn": 22, "8": [22, 26, 30, 32], "29": 22, "2022": 22, "16": [22, 30], "648035": 22, "tuples_ok": 22, "0x7f18a18ba040": 22, "pgresult_ptr": 22, "interpol": 22, "token": 22, "__del__": 22, "pqfreecancel": 22, "abandon": 22, "connstatu": [22, 36], "status": 22, "pgcancelconn": 22, "pqcancelstatu": 22, "pollingstatu": 22, "pqconnectpol": 22, "transactionstatu": 22, "execstatu": 22, "pqresultstatu": 22, "empty_queri": 22, "command_ok": 22, "copy_out": 22, "copy_in": 22, "bad_respons": 22, "nonfatal_error": 22, "fatal_error": 22, "copy_both": 22, "single_tupl": 22, "pipeline_sync": 22, "pipeline_abort": 22, "tuples_chunk": 22, "pipelinestatu": 22, "ON": 22, "diagnosticfield": 22, "pqpingparam": 22, "reject": [22, 27], "no_respons": 22, "no_attempt": 22, "basecursor": 23, "tuplerow": 23, "namedtupl": [23, 32], "mangl": [23, 36], "scalar": [23, 26, 36], "baserowfactori": 23, "myclass": 23, "smith": 23, "func": 23, "flavour": [23, 36], "sort": 24, "accid": 24, "seriou": 24, "untrust": [24, 31], "escape_identifi": 24, "hoc": 24, "danger": [24, 29], "forgotten": 24, "presenc": 24, "charact": [24, 26, 31, 33], "exploit": 24, "weak": 24, "fly": 24, "clearli": 24, "untouch": 24, "pkei": 24, "my_nam": 24, "some_t": [24, 31], "meant": 24, "as_str": [24, 36], "full_queri": 24, "join": [24, 36], "field1": 24, "field2": 24, "field3": 24, "hierarchi": 24, "common": [24, 28, 34], "dot": 24, "hardcod": 24, "place": [24, 30, 31], "evalu": [24, 32], "tailor": 24, "account": [24, 28], "as_byt": [24, 36], "undergo": [24, 26], "foo": [24, 26, 28, 31, 32], "bar": [24, 26, 28, 31, 32], "modifi": [24, 27, 33], "peopl": [24, 28, 34], "tbl": 24, "rourk": 24, "seq": 24, "snip": 24, "baz": 24, "t1": 24, "t2": 24, "ba": 24, "t3": 24, "z": [24, 32], "s1": 24, "fo": 24, "s2": 24, "s3": 24, "add": [24, 30, 32, 36, 37, 38], "ambigu": [24, 26, 36], "q1": 24, "len": 24, "q2": 24, "comp": 24, "joiner": 24, "interpos": 24, "interpret": [24, 36], "cach": [24, 36], "often": [24, 28, 31], "concret": 25, "straightforward": 25, "compon": [25, 32, 33], "register_hstor": [25, 32], "upfront": 25, "mytyp": 25, "seamlessli": 25, "subtyp": [25, 32], "mytypearrai": 25, "mytypeload": 25, "array_oid": [25, 26, 32], "regtyp": [25, 32], "delimit": [25, 27, 31], "recognis": 25, "compositeinfo": [25, 32], "rangeinfo": [25, 32], "multirangeinfo": [25, 32], "enuminfo": [25, 26], "collect": 25, "typeregistri": 25, "__getitem__": 25, "1009": 25, "get_oid": 25, "get_by_subtyp": 25, "set_json_dump": [25, 26], "serialis": 25, "set_json_load": [25, 26], "numpi": [26, 36], "bool_": 26, "smallint": [26, 27], "smallest": 26, "gladli": [26, 28], "down": 26, "promot": 26, "eas": [26, 28], "menu": 26, "cr\u00e8me": 26, "br\u00fbl\u00e9e": 26, "99": 26, "utf": 26, "ascii": [26, 36], "char": [26, 36], "latin": 26, "european": 26, "accent": 26, "euro": 26, "symbol": [26, 28, 36], "latin1": 26, "0xe2": 26, "0x82": 26, "0xac": 26, "rare": [26, 28], "cr": 26, "xc3": 26, "xa8m": 26, "br": 26, "xbbl": 26, "xa9e": 26, "xe2": 26, "x82": 26, "xac": 26, "bytea": [26, 36], "unalt": 26, "0x00": 26, "imag": [26, 31], "cpu": [26, 36], "bandwidth": 26, "timetz": 26, "timedelta": 26, "interv": [26, 36], "london": 26, "2048": 26, "07": [26, 34], "utc": [26, 28], "summer": 26, "2042": [26, 34], "00z": 26, "silli": 26, "daylight": 26, "winter": 26, "7200": 26, "whatev": [26, 36], "utcoffset": 26, "zone": [26, 36], "iso": 26, "ymd": 26, "guc": [26, 28], "de": 26, "functool": 26, "ujson": 26, "faster": 26, "parse_float": 26, "over": [26, 27, 33], "uuid4": 26, "uuidencod": 26, "jsonencod": 26, "isinst": [26, 33], "uuid_dump": 26, "0a40799d": 26, "3980": 26, "4c65": 26, "8315": 26, "2956b18ab0e1": 26, "neither": [26, 33], "nor": [26, 33], "stdin": [26, 27], "wherea": [26, 31], "gen_random_uuid": 26, "97f0dd62": 26, "3bd2": 26, "459e": 26, "89b8": 26, "a5e36ea3c16c": 26, "shot": 26, "ipaddress": 26, "ipv4address": 26, "ipv4interfac": 26, "inet": 26, "ipv4network": 26, "ipv6address": 26, "ipv6interfac": 26, "ipv6network": 26, "ipv6": 26, "192": 26, "168": 26, "ffff": 26, "120": 26, "102": 26, "bidirect": 26, "register_enum": 26, "myintenum": 26, "label": 26, "userrol": 26, "admin": 26, "editor": 26, "guest": 26, "user_rol": 26, "some_editor": 26, "pg_typeof": [26, 32], "vice": 26, "versa": 26, "matter": 26, "mediev": 26, "abbey_rol": 26, "abbot": 26, "scribe": 26, "monk": 26, "lowercaserol": 26, "lowercase_rol": 26, "stdout": [27, 36], "col1": 27, "col2": 27, "conclud": 27, "sampl": 27, "col3": 27, "csv": 27, "thank": 27, "easier": 27, "current_d": 27, "2046": 27, "block_siz": 27, "finicki": 27, "carefulli": 27, "portion": 27, "dsn_src": 27, "conn1": 27, "dsn_tgt": 27, "conn2": [27, 32], "src": 27, "copy1": 27, "tgt": 27, "copy2": 27, "ident": 27, "omit": [27, 38], "tri": [28, 33], "awar": 28, "workaround": 28, "chan": 28, "set_config": 28, "pg_notifi": 28, "usernam": 28, "semicolon": 28, "obviou": [28, 33], "split": 28, "cur_pg2": 28, "readili": 28, "cur_pg3": 28, "variad": 28, "candid": 28, "json_build_arrai": 28, "determin": [28, 36], "construct": 28, "NOT": 28, "fact": [28, 30], "unari": 28, "distinct": 28, "analog": 28, "achiev": [28, 33], "realdictcursor": 28, "namedtuplecursor": 28, "dictcursor": 28, "rewritten": 28, "Their": 28, "copy_expert": 28, "wise": 28, "surpris": [28, 33, 34], "finer": [28, 33], "simplist": 28, "function_nam": 28, "procedure_nam": 28, "unicod": 28, "But": 28, "bc": 28, "past": 28, "biject": 28, "pervers": 28, "arguabl": 28, "lesser": 28, "flatten": 28, "y10k": 28, "redesign": [28, 35], "shortcut": 29, "pyscopg": 29, "inject": [29, 34], "geometri": [29, 36], "shape": [29, 36], "callproc": 29, "gone": 29, "short": 30, "pypi": [30, 36, 37], "fun": 30, "psycopg3": [30, 34], "linux": [30, 36], "maco": [30, 36, 38], "github": [30, 38], "workflow": [30, 38], "unoffici": 30, "conda": 30, "bsd": [30, 36], "solari": [30, 36], "unsupport": 30, "wire": 30, "smooth": 30, "ride": 30, "quickest": 30, "situat": 30, "proce": 30, "did": 30, "great": 30, "learn": 30, "speed": 30, "link": 30, "libssl": 30, "product": 30, "site": [30, 31], "header": 30, "python3": 30, "dev": [30, 38], "pg_config": 30, "troubleshoot": 30, "handi": 30, "hack": 30, "debian": 30, "sudo": 30, "apt": 30, "libpq5": 30, "fulfil": 30, "project": [30, 32], "txt": 30, "setup": 30, "pyproject": 30, "toml": 30, "servic": [30, 36], "bit": [31, 33], "created_at": 31, "18": [31, 34], "reilli": 31, "roughli": [31, 34], "updated_at": 31, "resembl": 31, "regular": [31, 32], "subtl": 31, "appear": 31, "unescap": 31, "na\u00efv": 31, "approach": 31, "concaten": 31, "recip": 31, "terribl": 31, "WILL": 31, "miser": 31, "attack": 31, "craft": 31, "malform": 31, "unauthor": 31, "destruct": 31, "widespread": 31, "memo": 31, "hang": [31, 36, 37], "onto": 31, "desk": 31, "robust": 31, "stress": 31, "hacker": 31, "countri": 31, "comput": 31, "disk": 31, "cd": [31, 38], "embarrass": 31, "ever": 31, "bought": 31, "cassett": 31, "tape": 31, "con": 31, "artist": 31, "seduc": 31, "cat": 31, "credit": 31, "card": [31, 32], "sunglass": 31, "gui": 31, "balaclava": 31, "fridg": 31, "drink": 31, "beer": 31, "toilet": 31, "seat": 31, "paper": 31, "orient": 31, "improp": 31, "pg_type": 31, "typinput": 31, "typoutput": 31, "typsend": 31, "typrec": 31, "winner": 31, "image_data": 31, "image_id": 31, "register_composit": 32, "field_nam": 32, "field_typ": 32, "python_typ": 32, "my_card": 32, "heart": 32, "spade": 32, "card_back": 32, "face": 32, "info2": 32, "blue": 32, "famili": 32, "upper": 32, "unbound": 32, "replic": 32, "normalis": 32, "immut": 32, "hashabl": 32, "nonempti": 32, "isempti": 32, "lower_inc": 32, "upper_inc": 32, "lower_inf": 32, "upper_inf": 32, "daterang": 32, "register_rang": 32, "subtype_oid": 32, "strrang": 32, "disjoint": 32, "mutabl": 32, "overlap": 32, "mutablesequ": 32, "complain": 32, "datemultirang": 32, "register_multirang": 32, "range_oid": 32, "strmultirang": 32, "mr": 32, "q": 32, "l": [32, 38], "embed": 32, "gist": 32, "gin": 32, "search": 32, "btree": 32, "uniqu": 32, "contrib": 32, "postgi": 32, "likewis": 32, "postggi": 32, "register_shap": 32, "st_geomfromgeojson": 32, "48": 32, "23456": 32, "12345": 32, "multipolygon": 32, "0x7fb131f3cd90": 32, "unaffect": [32, 33], "conn_str": 32, "0101000020e61000009279e40f061e48c0f2b0506b9a1f3440": 32, "seem": 33, "visibl": 33, "disappoint": 33, "undesir": 33, "fire": 33, "thankfulli": 33, "persist": [33, 34], "closur": 33, "bloat": 33, "live": 33, "suspend": 33, "vacuum": 33, "With": 33, "benefici": 33, "transpar": 33, "finalis": [33, 34], "attent": 33, "sub": 33, "proper": 33, "essenc": 33, "experienc": 33, "inner": 33, "outer": 33, "seri": 33, "successfulli": 33, "tx1": 33, "num_ok": 33, "tx2": 33, "unreliable_oper": 33, "save_number_of_success": 33, "revert": 33, "bubbl": 33, "intercept": 33, "jump": 33, "hypothet": 33, "cancelcommand": 33, "outer_tx": 33, "inner_tx": 33, "process_command": 33, "propos": 33, "neg": 33, "32": 33, "64": 33, "assign": 33, "200": [33, 36], "emploi": 33, "interoper": 33, "java": 33, "recogn": 33, "sqlite3": 34, "encapsul": 34, "leaner": 34, "706497": 34, "un": 34, "intent": 34, "quirki": 34, "smoothest": 34, "everyon": 35, "modern": 35, "ticket": [36, 37], "332": 36, "340": 36, "560": 36, "772": 36, "723": 36, "589": 36, "v17": 36, "603": 36, "754": 36, "716": 36, "604": 36, "preserv": 36, "keyboardinterrupt": 36, "chunk": 36, "793": 36, "excess": 36, "strip": 36, "752": 36, "deadlock": 36, "685": 36, "719": 36, "musl": 36, "libc": 36, "cpython": 36, "65821": 36, "699": 36, "708": [36, 37], "703": 36, "regress": 36, "694": 36, "695": 36, "pgconnect_timeout": 36, "527": 36, "686": 36, "652": 36, "eintr": 36, "interruptederror": 36, "475": 36, "guidelin": 36, "667": 36, "load_balance_host": 36, "674": 36, "leak": 36, "679": 36, "608": 36, "register_": 36, "647": 36, "628": 36, "630": 36, "dai": 36, "month": 36, "643": 36, "645": 36, "632": 36, "critic": 36, "guard": 36, "readabl": 36, "permiss": 36, "ssl": 36, "certif": 36, "528": 36, "orjson": 36, "msgspec": 36, "569": 36, "585": 36, "shallow": 36, "real": 36, "565": 36, "591": 36, "clobber": 36, "593": 36, "612": 36, "503": [36, 37], "filedescriptor": 36, "532": 36, "541": 36, "543": 36, "545": 36, "547": 36, "pollut": 36, "473": 36, "479": 36, "484": 36, "464": 36, "460": 36, "slow": 36, "359": 36, "414": 36, "422": 36, "437": 36, "pyright": [36, 37], "typealia": [36, 37], "439": [36, 37], "452": 36, "457": 36, "305": [36, 37], "382": 36, "386": 36, "percent": 36, "sign": 36, "399": 36, "duplic": 36, "emit": 36, "401": 36, "371": 36, "segfault": 36, "372": 36, "374": 36, "378": 36, "arm64": 36, "appl": 36, "m1": [36, 38], "344": 36, "homebrew": 36, "364": 36, "unrecogn": 36, "366": 36, "74": 36, "101": 36, "313": 36, "274": 36, "164": 36, "145": 36, "259": 36, "167": 36, "242": 36, "restrict": 36, "323": 36, "205": 36, "343": 36, "162": 36, "unprint": 36, "nonetheless": 36, "overflowerror": 36, "manylinux2014": 36, "wheel": 36, "124": 36, "301": 36, "incorrect": 36, "blank": 36, "303": 36, "ppc64le": 36, "musllinux": 36, "304": 36, "286": 36, "293": 36, "254": 36, "intenum": 36, "dimens": 36, "253": 36, "255": 36, "mention": 36, "231": 36, "235": 36, "freebsd": 36, "241": 36, "225": 36, "tzdata": 36, "223": 36, "194": 36, "198": 36, "203": 36, "179": 36, "178": 36, "172": 36, "173": 36, "174": 36, "176": 36, "177": 36, "check_standbi": 36, "158": 36, "165": 36, "comparison": 36, "147": 36, "backport": 36, "109": 36, "cve": 36, "2021": 36, "23222": 36, "149": 36, "alpin": 36, "141": 36, "142": 36, "psycopg_binari": 36, "127": 36, "128": 36, "__setitem__": 36, "slice": 36, "typeerror": 36, "129": 36, "125": 36, "112": 36, "80": 36, "75": 36, "78": 36, "82": 36, "83": 36, "103": 36, "runtimewarn": 37, "deprecationwarn": 37, "784": 37, "busi": 37, "709": 37, "520": 37, "656": 37, "559": 37, "659": 37, "__enter__": 37, "540": 37, "482": 37, "493": 37, "refil": 37, "438": 37, "exhaust": 37, "219": 37, "lose": 37, "370": 37, "race": 37, "230": 37, "148": 37, "151": 37, "valueerror": 37, "_compat": 37, "144": 37, "openssl": 38, "libpq_vers": 38, "openssl_vers": 38, "bin": 38, "yml": 38, "cibuildwheel": 38, "bump_vers": 38, "wheelhous": 38, "run_build_macos_arm64": 38, "sh": 38, "git": 38, "download": 38, "artifact": 38, "dir": 38, "mkdir": 38, "unzip": 38, "upload": 38, "testpypi": 38, "twine": 38, "bump": 38, "update_error": 38, "update_oid": 38, "h": 38, "docker": 38, "pxd": 38, "_enum": 38, "grid": 38, "pg_version": 38, "build_macos_arm64": 38, "wheel_win32_before_build": 38, "bat": 38, "rst": 38, "lr": 38, "websit": 38, "repositori": 38}, "objects": {"": [[19, 0, 0, "-", "psycopg"], [21, 0, 0, "-", "psycopg_pool"]], "psycopg": [[15, 1, 1, "", "AsyncClientCursor"], [11, 1, 1, "", "AsyncConnection"], [13, 1, 1, "", "AsyncCopy"], [15, 1, 1, "", "AsyncCursor"], [20, 1, 1, "", "AsyncPipeline"], [15, 1, 1, "", "AsyncRawCursor"], [15, 1, 1, "", "AsyncServerCursor"], [20, 1, 1, "", "AsyncTransaction"], [20, 1, 1, "", "Capabilities"], [15, 1, 1, "", "ClientCursor"], [20, 1, 1, "", "Column"], [11, 1, 1, "", "Connection"], [20, 1, 1, "", "ConnectionInfo"], [13, 1, 1, "", "Copy"], [15, 1, 1, "", "Cursor"], [17, 4, 1, "", "DataError"], [17, 4, 1, "", "DatabaseError"], [17, 4, 1, "", "Error"], [17, 4, 1, "", "IntegrityError"], [17, 4, 1, "", "InterfaceError"], [17, 4, 1, "", "InternalError"], [20, 1, 1, "", "IsolationLevel"], [17, 4, 1, "", "NotSupportedError"], [20, 1, 1, "", "Notify"], [17, 4, 1, "", "OperationalError"], [20, 1, 1, "", "Pipeline"], [17, 4, 1, "", "ProgrammingError"], [15, 1, 1, "", "RawCursor"], [20, 4, 1, "", "Rollback"], [15, 1, 1, "", "ServerCursor"], [20, 1, 1, "", "Transaction"], [17, 4, 1, "", "Warning"], [20, 1, 1, "", "Xid"], [16, 0, 0, "-", "_dns"], [9, 0, 0, "-", "abc"], [10, 0, 0, "-", "adapt"], [19, 7, 1, "", "adapters"], [19, 7, 1, "", "capabilities"], [19, 5, 1, "", "connect"], [12, 0, 0, "-", "conninfo"], [14, 0, 0, "-", "crdb"], [17, 0, 0, "-", "errors"], [22, 0, 0, "-", "pq"], [23, 0, 0, "-", "rows"], [24, 0, 0, "-", "sql"], [25, 0, 0, "-", "types"]], "psycopg.AsyncConnection": [[16, 2, 1, "", "_get_connection_params"], [11, 2, 1, "", "cancel_safe"], [11, 2, 1, "", "close"], [11, 2, 1, "", "commit"], [11, 2, 1, "", "connect"], [11, 2, 1, "", "cursor"], [11, 3, 1, "", "cursor_factory"], [11, 2, 1, "", "execute"], [11, 2, 1, "", "notifies"], [11, 2, 1, "", "pipeline"], [11, 2, 1, "", "rollback"], [11, 3, 1, "", "row_factory"], [11, 3, 1, "", "server_cursor_factory"], [11, 2, 1, "", "set_autocommit"], [11, 2, 1, "", "set_deferrable"], [11, 2, 1, "", "set_isolation_level"], [11, 2, 1, "", "set_read_only"], [11, 2, 1, "", "tpc_commit"], [11, 2, 1, "", "tpc_prepare"], [11, 2, 1, "", "tpc_recover"], [11, 2, 1, "", "tpc_rollback"], [11, 2, 1, "", "transaction"]], "psycopg.AsyncCopy": [[13, 2, 1, "", "read"], [13, 2, 1, "", "read_row"], [13, 2, 1, "", "rows"], [13, 2, 1, "", "write"], [13, 2, 1, "", "write_row"]], "psycopg.AsyncCursor": [[15, 2, 1, "", "close"], [15, 3, 1, "", "connection"], [15, 2, 1, "", "copy"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 2, 1, "", "scroll"], [15, 2, 1, "", "stream"]], "psycopg.AsyncPipeline": [[20, 2, 1, "", "sync"]], "psycopg.AsyncServerCursor": [[15, 2, 1, "", "close"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 2, 1, "", "scroll"]], "psycopg.AsyncTransaction": [[20, 3, 1, "", "connection"]], "psycopg.Capabilities": [[20, 2, 1, "", "has_cancel_safe"], [20, 2, 1, "", "has_encrypt_password"], [20, 2, 1, "", "has_hostaddr"], [20, 2, 1, "", "has_pgbouncer_prepared"], [20, 2, 1, "", "has_pipeline"], [20, 2, 1, "", "has_set_trace_flags"]], "psycopg.ClientCursor": [[15, 2, 1, "", "mogrify"]], "psycopg.Column": [[20, 3, 1, "", "display_size"], [20, 3, 1, "", "internal_size"], [20, 3, 1, "", "name"], [20, 3, 1, "", "precision"], [20, 3, 1, "", "scale"], [20, 3, 1, "", "type_code"]], "psycopg.Connection": [[16, 2, 1, "", "_get_connection_params"], [11, 2, 1, "", "add_notice_handler"], [11, 2, 1, "", "add_notify_handler"], [11, 3, 1, "", "autocommit"], [11, 3, 1, "", "broken"], [11, 2, 1, "", "cancel"], [11, 2, 1, "", "cancel_safe"], [11, 2, 1, "", "close"], [11, 3, 1, "", "closed"], [11, 2, 1, "", "commit"], [11, 2, 1, "", "connect"], [11, 2, 1, "", "cursor"], [11, 3, 1, "", "cursor_factory"], [11, 3, 1, "", "deferrable"], [11, 2, 1, "", "execute"], [11, 2, 1, "", "fileno"], [11, 3, 1, "", "info"], [11, 3, 1, "", "isolation_level"], [11, 2, 1, "", "notifies"], [11, 3, 1, "", "pgconn"], [11, 2, 1, "", "pipeline"], [11, 3, 1, "", "prepare_threshold"], [11, 3, 1, "", "prepared_max"], [11, 3, 1, "", "read_only"], [11, 2, 1, "", "remove_notice_handler"], [11, 2, 1, "", "remove_notify_handler"], [11, 2, 1, "", "rollback"], [11, 3, 1, "", "row_factory"], [11, 3, 1, "", "server_cursor_factory"], [11, 2, 1, "", "set_autocommit"], [11, 2, 1, "", "set_deferrable"], [11, 2, 1, "", "set_isolation_level"], [11, 2, 1, "", "set_read_only"], [11, 2, 1, "", "tpc_begin"], [11, 2, 1, "", "tpc_commit"], [11, 2, 1, "", "tpc_prepare"], [11, 2, 1, "", "tpc_recover"], [11, 2, 1, "", "tpc_rollback"], [11, 2, 1, "", "transaction"], [11, 2, 1, "", "xid"]], "psycopg.ConnectionInfo": [[20, 3, 1, "", "backend_pid"], [20, 3, 1, "", "dbname"], [20, 3, 1, "", "dsn"], [20, 3, 1, "", "encoding"], [20, 3, 1, "", "error_message"], [20, 2, 1, "", "get_parameters"], [20, 3, 1, "", "host"], [20, 3, 1, "", "hostaddr"], [20, 3, 1, "", "options"], [20, 2, 1, "", "parameter_status"], [20, 3, 1, "", "password"], [20, 3, 1, "", "pipeline_status"], [20, 3, 1, "", "port"], [20, 3, 1, "", "server_version"], [20, 3, 1, "", "status"], [20, 3, 1, "", "timezone"], [20, 3, 1, "", "transaction_status"], [20, 3, 1, "", "user"], [20, 3, 1, "", "vendor"]], "psycopg.Copy": [[13, 2, 1, "", "read"], [13, 2, 1, "", "read_row"], [13, 2, 1, "", "rows"], [13, 2, 1, "", "set_types"], [13, 2, 1, "", "write"], [13, 2, 1, "", "write_row"]], "psycopg.Cursor": [[15, 3, 1, "", "_query"], [15, 2, 1, "", "close"], [15, 3, 1, "", "closed"], [15, 3, 1, "", "connection"], [15, 2, 1, "", "copy"], [15, 3, 1, "", "description"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 3, 1, "", "format"], [15, 2, 1, "", "nextset"], [15, 3, 1, "", "pgresult"], [15, 3, 1, "", "row_factory"], [15, 3, 1, "", "rowcount"], [15, 3, 1, "", "rownumber"], [15, 2, 1, "", "scroll"], [15, 3, 1, "", "statusmessage"], [15, 2, 1, "", "stream"]], "psycopg.Error": [[17, 3, 1, "", "diag"], [17, 3, 1, "", "pgconn"], [17, 3, 1, "", "pgresult"], [17, 3, 1, "", "sqlstate"]], "psycopg.IsolationLevel": [[20, 3, 1, "", "READ_COMMITTED"], [20, 3, 1, "", "READ_UNCOMMITTED"], [20, 3, 1, "", "REPEATABLE_READ"], [20, 3, 1, "", "SERIALIZABLE"]], "psycopg.Notify": [[20, 3, 1, "", "channel"], [20, 3, 1, "", "payload"], [20, 3, 1, "", "pid"]], "psycopg.Pipeline": [[20, 2, 1, "", "is_supported"], [20, 2, 1, "", "sync"]], "psycopg.ServerCursor": [[15, 2, 1, "", "close"], [15, 2, 1, "", "execute"], [15, 2, 1, "", "executemany"], [15, 2, 1, "", "fetchall"], [15, 2, 1, "", "fetchmany"], [15, 2, 1, "", "fetchone"], [15, 3, 1, "", "itersize"], [15, 3, 1, "", "name"], [15, 2, 1, "", "scroll"], [15, 3, 1, "", "scrollable"], [15, 3, 1, "", "withhold"]], "psycopg.Transaction": [[20, 3, 1, "", "connection"], [20, 3, 1, "", "savepoint_name"]], "psycopg.Xid": [[20, 3, 1, "", "bqual"], [20, 3, 1, "", "database"], [20, 3, 1, "", "format_id"], [20, 3, 1, "", "gtrid"], [20, 3, 1, "", "owner"], [20, 3, 1, "", "prepared"]], "psycopg._dns": [[16, 5, 1, "", "resolve_hostaddr_async"], [16, 5, 1, "", "resolve_srv"], [16, 5, 1, "", "resolve_srv_async"]], "psycopg.abc": [[9, 1, 1, "", "AdaptContext"], [9, 1, 1, "", "Dumper"], [9, 1, 1, "", "Loader"]], "psycopg.abc.AdaptContext": [[9, 6, 1, "", "adapters"], [9, 6, 1, "", "connection"]], "psycopg.abc.Dumper": [[9, 2, 1, "", "dump"], [9, 3, 1, "", "format"], [9, 2, 1, "", "get_key"], [9, 3, 1, "", "oid"], [9, 2, 1, "", "quote"], [9, 2, 1, "", "upgrade"]], "psycopg.abc.Loader": [[9, 3, 1, "", "format"], [9, 2, 1, "", "load"]], "psycopg.adapt": [[10, 1, 1, "", "AdaptersMap"], [10, 1, 1, "", "Dumper"], [10, 1, 1, "", "Loader"], [10, 1, 1, "", "PyFormat"], [10, 1, 1, "", "Transformer"]], "psycopg.adapt.AdaptersMap": [[10, 2, 1, "", "get_dumper"], [10, 2, 1, "", "get_dumper_by_oid"], [10, 2, 1, "", "get_loader"], [10, 2, 1, "", "register_dumper"], [10, 2, 1, "", "register_loader"], [10, 3, 1, "", "types"]], "psycopg.adapt.Dumper": [[10, 2, 1, "", "dump"], [10, 3, 1, "", "format"], [10, 2, 1, "", "get_key"], [10, 2, 1, "", "quote"], [10, 2, 1, "", "upgrade"]], "psycopg.adapt.Loader": [[10, 3, 1, "", "format"], [10, 2, 1, "", "load"]], "psycopg.adapt.PyFormat": [[10, 3, 1, "", "AUTO"], [10, 3, 1, "", "BINARY"], [10, 3, 1, "", "TEXT"]], "psycopg.conninfo": [[12, 5, 1, "", "conninfo_to_dict"], [12, 5, 1, "", "make_conninfo"]], "psycopg.copy": [[13, 1, 1, "", "AsyncLibpqWriter"], [13, 1, 1, "", "AsyncWriter"], [13, 1, 1, "", "FileWriter"], [13, 1, 1, "", "LibpqWriter"], [13, 1, 1, "", "Writer"]], "psycopg.copy.AsyncWriter": [[13, 2, 1, "", "finish"], [13, 2, 1, "", "write"]], "psycopg.copy.Writer": [[13, 2, 1, "", "finish"], [13, 2, 1, "", "write"]], "psycopg.crdb": [[14, 1, 1, "", "AsyncCrdbConnection"], [14, 1, 1, "", "CrdbConnection"], [14, 1, 1, "", "CrdbConnectionInfo"], [14, 7, 1, "", "adapters"], [14, 5, 1, "", "connect"]], "psycopg.crdb.CrdbConnection": [[14, 2, 1, "", "is_crdb"]], "psycopg.crdb.CrdbConnectionInfo": [[14, 3, 1, "", "server_version"], [14, 3, 1, "", "vendor"]], "psycopg.errors": [[17, 4, 1, "", "ConnectionTimeout"], [17, 1, 1, "", "Diagnostic"], [17, 4, 1, "", "PipelineAborted"], [17, 5, 1, "", "lookup"]], "psycopg.errors.Diagnostic": [[17, 3, 1, "", "column_name"], [17, 3, 1, "", "constraint_name"], [17, 3, 1, "", "context"], [17, 3, 1, "", "datatype_name"], [17, 3, 1, "", "internal_position"], [17, 3, 1, "", "internal_query"], [17, 3, 1, "", "message_detail"], [17, 3, 1, "", "message_hint"], [17, 3, 1, "", "message_primary"], [17, 3, 1, "", "schema_name"], [17, 3, 1, "", "severity"], [17, 3, 1, "", "severity_nonlocalized"], [17, 3, 1, "", "source_file"], [17, 3, 1, "", "source_function"], [17, 3, 1, "", "source_line"], [17, 3, 1, "", "sqlstate"], [17, 3, 1, "", "statement_position"], [17, 3, 1, "", "table_name"]], "psycopg.pq": [[22, 1, 1, "", "ConnStatus"], [22, 1, 1, "", "Conninfo"], [22, 1, 1, "", "DiagnosticField"], [22, 1, 1, "", "Escaping"], [22, 1, 1, "", "ExecStatus"], [22, 1, 1, "", "Format"], [22, 1, 1, "", "PGcancel"], [22, 1, 1, "", "PGconn"], [22, 1, 1, "", "PGresult"], [22, 1, 1, "", "Ping"], [22, 1, 1, "", "PipelineStatus"], [22, 1, 1, "", "PollingStatus"], [22, 1, 1, "", "Trace"], [22, 1, 1, "", "TransactionStatus"], [22, 7, 1, "", "__build_version__"], [22, 7, 1, "", "__impl__"], [22, 5, 1, "", "error_message"], [22, 5, 1, "", "version"]], "psycopg.pq.ConnStatus": [[22, 3, 1, "", "ALLOCATED"], [22, 3, 1, "", "BAD"], [22, 3, 1, "", "OK"]], "psycopg.pq.DiagnosticField": [[22, 3, 1, "", "COLUMN_NAME"], [22, 3, 1, "", "CONSTRAINT_NAME"], [22, 3, 1, "", "CONTEXT"], [22, 3, 1, "", "DATATYPE_NAME"], [22, 3, 1, "", "INTERNAL_POSITION"], [22, 3, 1, "", "INTERNAL_QUERY"], [22, 3, 1, "", "MESSAGE_DETAIL"], [22, 3, 1, "", "MESSAGE_HINT"], [22, 3, 1, "", "MESSAGE_PRIMARY"], [22, 3, 1, "", "SCHEMA_NAME"], [22, 3, 1, "", "SEVERITY"], [22, 3, 1, "", "SEVERITY_NONLOCALIZED"], [22, 3, 1, "", "SOURCE_FILE"], [22, 3, 1, "", "SOURCE_FUNCTION"], [22, 3, 1, "", "SOURCE_LINE"], [22, 3, 1, "", "SQLSTATE"], [22, 3, 1, "", "STATEMENT_POSITION"], [22, 3, 1, "", "TABLE_NAME"]], "psycopg.pq.ExecStatus": [[22, 3, 1, "", "BAD_RESPONSE"], [22, 3, 1, "", "COMMAND_OK"], [22, 3, 1, "", "COPY_BOTH"], [22, 3, 1, "", "COPY_IN"], [22, 3, 1, "", "COPY_OUT"], [22, 3, 1, "", "EMPTY_QUERY"], [22, 3, 1, "", "FATAL_ERROR"], [22, 3, 1, "", "NONFATAL_ERROR"], [22, 3, 1, "", "PIPELINE_ABORTED"], [22, 3, 1, "", "PIPELINE_SYNC"], [22, 3, 1, "", "SINGLE_TUPLE"], [22, 3, 1, "", "TUPLES_CHUNK"], [22, 3, 1, "", "TUPLES_OK"]], "psycopg.pq.Format": [[22, 3, 1, "", "BINARY"], [22, 3, 1, "", "TEXT"]], "psycopg.pq.PGcancel": [[22, 2, 1, "", "cancel"], [22, 2, 1, "", "free"]], "psycopg.pq.PGconn": [[22, 2, 1, "", "encrypt_password"], [22, 2, 1, "", "get_cancel"], [22, 3, 1, "", "needs_password"], [22, 3, 1, "", "pgconn_ptr"], [22, 2, 1, "", "set_trace_flags"], [22, 2, 1, "", "trace"], [22, 2, 1, "", "untrace"], [22, 3, 1, "", "used_password"]], "psycopg.pq.PGresult": [[22, 3, 1, "", "pgresult_ptr"]], "psycopg.pq.Ping": [[22, 3, 1, "", "NO_ATTEMPT"], [22, 3, 1, "", "NO_RESPONSE"], [22, 3, 1, "", "OK"], [22, 3, 1, "", "REJECT"]], "psycopg.pq.PipelineStatus": [[22, 3, 1, "", "ABORTED"], [22, 3, 1, "", "OFF"], [22, 3, 1, "", "ON"]], "psycopg.pq.PollingStatus": [[22, 3, 1, "", "FAILED"], [22, 3, 1, "", "OK"], [22, 3, 1, "", "READING"], [22, 3, 1, "", "WRITING"]], "psycopg.pq.Trace": [[22, 3, 1, "", "REGRESS_MODE"], [22, 3, 1, "", "SUPPRESS_TIMESTAMPS"]], "psycopg.pq.TransactionStatus": [[22, 3, 1, "", "ACTIVE"], [22, 3, 1, "", "IDLE"], [22, 3, 1, "", "INERROR"], [22, 3, 1, "", "INTRANS"], [22, 3, 1, "", "UNKNOWN"]], "psycopg.psycopg.types.shapely": [[32, 5, 1, "", "register_shapely"]], "psycopg.rows": [[23, 1, 1, "", "AsyncRowFactory"], [23, 1, 1, "", "BaseRowFactory"], [23, 1, 1, "", "RowFactory"], [23, 1, 1, "", "RowMaker"], [23, 5, 1, "", "args_row"], [23, 5, 1, "", "class_row"], [23, 5, 1, "", "dict_row"], [23, 5, 1, "", "kwargs_row"], [23, 5, 1, "", "namedtuple_row"], [23, 5, 1, "", "scalar_row"], [23, 5, 1, "", "tuple_row"]], "psycopg.rows.RowFactory": [[23, 2, 1, "", "__call__"]], "psycopg.rows.RowMaker": [[23, 2, 1, "", "__call__"]], "psycopg.sql": [[24, 1, 1, "", "Composable"], [24, 1, 1, "", "Composed"], [24, 7, 1, "", "DEFAULT"], [24, 1, 1, "", "Identifier"], [24, 1, 1, "", "Literal"], [24, 7, 1, "", "NULL"], [24, 1, 1, "", "Placeholder"], [24, 1, 1, "", "SQL"], [24, 5, 1, "", "quote"]], "psycopg.sql.Composable": [[24, 2, 1, "", "as_bytes"], [24, 2, 1, "", "as_string"]], "psycopg.sql.Composed": [[24, 2, 1, "", "join"]], "psycopg.sql.SQL": [[24, 2, 1, "", "format"], [24, 2, 1, "", "join"]], "psycopg.types": [[25, 1, 1, "", "TypeInfo"], [25, 1, 1, "", "TypesRegistry"]], "psycopg.types.TypeInfo": [[25, 2, 1, "", "fetch"], [25, 2, 1, "", "register"]], "psycopg.types.TypesRegistry": [[25, 2, 1, "", "__getitem__"], [25, 2, 1, "", "get"], [25, 2, 1, "", "get_by_subtype"], [25, 2, 1, "", "get_oid"]], "psycopg.types.composite": [[32, 1, 1, "", "CompositeInfo"], [32, 5, 1, "", "register_composite"]], "psycopg.types.composite.CompositeInfo": [[32, 3, 1, "", "python_type"]], "psycopg.types.enum": [[26, 1, 1, "", "EnumInfo"], [26, 5, 1, "", "register_enum"]], "psycopg.types.enum.EnumInfo": [[26, 3, 1, "", "enum"], [26, 3, 1, "", "labels"]], "psycopg.types.hstore": [[32, 5, 1, "", "register_hstore"]], "psycopg.types.json": [[25, 1, 1, "", "Json"], [25, 1, 1, "", "Jsonb"], [25, 5, 1, "", "set_json_dumps"], [25, 5, 1, "", "set_json_loads"]], "psycopg.types.multirange": [[32, 1, 1, "", "Multirange"], [32, 1, 1, "", "MultirangeInfo"], [32, 5, 1, "", "register_multirange"]], "psycopg.types.range": [[32, 1, 1, "", "Range"], [32, 1, 1, "", "RangeInfo"], [32, 5, 1, "", "register_range"]], "psycopg.types.range.Range": [[32, 3, 1, "", "isempty"], [32, 3, 1, "", "lower"], [32, 3, 1, "", "lower_inc"], [32, 3, 1, "", "lower_inf"], [32, 3, 1, "", "upper"], [32, 3, 1, "", "upper_inc"], [32, 3, 1, "", "upper_inf"]], "psycopg_pool": [[21, 1, 1, "", "AsyncConnectionPool"], [21, 1, 1, "", "AsyncNullConnectionPool"], [21, 1, 1, "", "ConnectionPool"], [21, 1, 1, "", "NullConnectionPool"], [21, 1, 1, "", "PoolClosed"], [21, 1, 1, "", "PoolTimeout"], [21, 1, 1, "", "TooManyRequests"]], "psycopg_pool.AsyncConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "check_connection"], [21, 2, 1, "", "close"], [21, 2, 1, "", "connection"], [21, 2, 1, "", "getconn"], [21, 2, 1, "", "open"], [21, 2, 1, "", "putconn"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]], "psycopg_pool.ConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "check_connection"], [21, 2, 1, "", "close"], [21, 2, 1, "", "connection"], [21, 2, 1, "", "get_stats"], [21, 2, 1, "", "getconn"], [21, 3, 1, "", "max_size"], [21, 3, 1, "", "min_size"], [21, 3, 1, "", "name"], [21, 2, 1, "", "open"], [21, 2, 1, "", "pop_stats"], [21, 2, 1, "", "putconn"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]], "psycopg_pool.NullConnectionPool": [[21, 2, 1, "", "check"], [21, 2, 1, "", "resize"], [21, 2, 1, "", "wait"]]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:method", "3": "py:attribute", "4": "py:exception", "5": "py:function", "6": "py:property", "7": "py:data"}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "method", "Python method"], "3": ["py", "attribute", "Python attribute"], "4": ["py", "exception", "Python exception"], "5": ["py", "function", "Python function"], "6": ["py", "property", "Python property"], "7": ["py", "data", "Python data"]}, "titleterms": {"data": [0, 26, 27], "adapt": [0, 10, 25, 26, 28, 32, 34, 35], "configur": 0, "write": [0, 27], "custom": 0, "xml": 0, "exampl": [0, 8, 27], "postgresql": [0, 14, 32, 35, 38], "numer": 0, "python": [0, 26, 30, 35], "float": 0, "handl": [0, 28, 30], "infin": [0, 28], "date": [0, 26, 28], "dumper": [0, 10], "loader": [0, 10], "life": [0, 5], "cycl": [0, 5], "concurr": 1, "oper": [1, 5], "asynchron": [1, 27], "async": [1, 15], "connect": [1, 5, 11, 12, 20, 21, 28, 30, 34], "interrupt": 1, "gevent": 1, "support": [1, 4, 14, 27, 30, 33], "server": [1, 2, 4, 27, 28], "messag": [1, 4], "notif": [1, 20], "detect": 1, "disconnect": 1, "cursor": [2, 15, 28], "type": [2, 8, 10, 25, 26, 32], "client": [2, 4], "side": [2, 28], "bind": [2, 28], "steal": 2, "an": 2, "exist": 2, "raw": 2, "queri": [2, 8, 28, 31], "more": 3, "advanc": 3, "topic": 3, "content": [3, 18, 22, 29], "pipelin": [4, 20], "mode": 4, "flow": 4, "usag": [4, 5, 24, 34], "synchron": 4, "point": 4, "The": [4, 11, 15, 19, 20, 21], "fine": 4, "print": 4, "pool": [5, 8, 21, 30], "basic": [5, 26, 34], "startup": 5, "check": [5, 8], "other": [5, 10, 17, 20, 32], "wai": 5, "creat": [5, 7], "null": [5, 21], "size": 5, "what": [5, 28], "": [5, 28], "right": 5, "qualiti": 5, "log": 5, "stat": 5, "prepar": 6, "statement": [6, 28], "us": [6, 10, 27, 28, 32], "pgbouncer": 6, "row": [7, 8, 23, 27], "factori": [7, 23], "new": [7, 28, 38], "static": 8, "gener": 8, "return": [8, 28], "record": 8, "pydant": 8, "model": 8, "liter": 8, "string": [8, 12, 24, 26], "abc": 9, "psycopg": [9, 17, 18, 19, 28, 29, 34, 35, 36, 38], "abstract": 9, "class": [9, 11, 15, 21], "object": [10, 13, 14, 20, 22, 24, 34], "asyncconnect": 11, "conninfo": 12, "manipul": 12, "copi": [13, 27, 28], "relat": [13, 20], "main": [13, 14, 34], "writer": 13, "crdb": 14, "cockroachdb": 14, "differ": [14, 28], "from": [14, 27, 28], "specif": 14, "rawcursor": 15, "clientcursor": 15, "servercursor": 15, "_dn": 16, "dn": 16, "resolut": 16, "util": [16, 24], "error": 17, "packag": 17, "except": [17, 21], "db": 17, "api": [17, 18], "diagnost": 17, "sqlstate": 17, "list": [17, 26], "known": 17, "3": [18, 28, 29, 34, 35, 36, 37], "modul": [19, 22, 24, 34], "top": 20, "level": 20, "inform": [20, 25], "libpq": [20, 22], "capabl": 20, "descript": 20, "column": 20, "transact": [20, 28, 33], "two": [20, 33], "phase": [20, 33], "commit": [20, 33], "psycopg_pool": [21, 37], "implement": [21, 22, 23], "connectionpool": 21, "asyncconnectionpool": 21, "pq": 22, "wrapper": 22, "wrap": 22, "structur": 22, "function": [22, 24], "todo": 22, "enumer": 22, "formal": 23, "protocol": [23, 33], "sql": [24, 31], "composit": [24, 32], "json": [25, 26], "boolean": 26, "number": 26, "binari": [26, 27, 30, 31], "time": 26, "limit": 26, "datestyl": 26, "intervalstyl": 26, "uuid": 26, "network": 26, "enum": 26, "TO": 27, "read": 27, "block": 27, "tabl": [27, 35], "across": 27, "psycopg2": 28, "multipl": 28, "same": 28, "result": [28, 31], "cast": [28, 32], "rule": 28, "you": 28, "cannot": 28, "IN": 28, "tupl": 28, "i": [28, 38], "subclass": 28, "system": [28, 30], "longer": 28, "file": 28, "base": 28, "callproc": 28, "gone": 28, "client_encod": 28, "characterist": [28, 33], "attribut": 28, "don": 28, "t": 28, "affect": 28, "autocommit": [28, 33], "session": 28, "No": 28, "default": 28, "get": 29, "start": 29, "instal": 30, "local": 30, "pure": 30, "depend": 30, "pass": 31, "paramet": 31, "execut": 31, "argument": 31, "danger": 31, "inject": 31, "rang": 32, "multirang": 32, "hstore": 32, "geometri": 32, "shape": 32, "manag": 33, "context": [33, 34], "nest": 33, "shortcut": 34, "pyscopg": 34, "your": 34, "program": 34, "databas": 35, "document": 35, "releas": [35, 36, 37, 38], "note": [35, 36, 37], "indic": 35, "futur": [36, 37], "2": [36, 37], "unreleas": [36, 37], "1": [36, 37], "19": 36, "current": [36, 37], "18": 36, "17": 36, "16": 36, "15": 36, "14": 36, "13": 36, "12": 36, "11": 36, "10": 36, "9": [36, 37], "8": [36, 37], "7": [36, 37], "6": [36, 37], "5": [36, 37], "4": [36, 37], "0": [36, 37], "0b1": 36, "how": 38, "make": 38, "when": 38, "major": 38, "version": 38}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx": 57}, "alltitles": {"Data adaptation configuration": [[0, "data-adaptation-configuration"]], "Writing a custom adapter: XML": [[0, "writing-a-custom-adapter-xml"]], "Example: PostgreSQL numeric to Python float": [[0, "example-postgresql-numeric-to-python-float"]], "Example: handling infinity date": [[0, "example-handling-infinity-date"]], "Dumpers and loaders life cycle": [[0, "dumpers-and-loaders-life-cycle"]], "Concurrent operations": [[1, "concurrent-operations"]], "Asynchronous operations": [[1, "asynchronous-operations"]], "with async connections": [[1, "with-async-connections"]], "Interrupting async operations": [[1, "interrupting-async-operations"]], "Gevent support": [[1, "gevent-support"]], "Server messages": [[1, "server-messages"]], "Asynchronous notifications": [[1, "asynchronous-notifications"]], "Detecting disconnections": [[1, "detecting-disconnections"]], "Cursor types": [[2, "cursor-types"]], "Client-side cursors": [[2, "client-side-cursors"]], "Client-side-binding cursors": [[2, "client-side-binding-cursors"]], "Server-side cursors": [[2, "server-side-cursors"]], "\u201cStealing\u201d an existing cursor": [[2, "stealing-an-existing-cursor"]], "Raw query cursors": [[2, "raw-query-cursors"]], "More advanced topics": [[3, "more-advanced-topics"]], "Contents:": [[3, null], [18, null], [29, null]], "Pipeline mode support": [[4, "pipeline-mode-support"]], "Client-server messages flow": [[4, "client-server-messages-flow"]], "Pipeline mode usage": [[4, "pipeline-mode-usage"]], "Synchronization points": [[4, "synchronization-points"]], "The fine prints": [[4, "the-fine-prints"]], "Connection pools": [[5, "connection-pools"]], "Basic connection pool usage": [[5, "basic-connection-pool-usage"]], "Pool startup check": [[5, "pool-startup-check"]], "Connections life cycle": [[5, "connections-life-cycle"]], "Other ways to create a pool": [[5, "other-ways-to-create-a-pool"]], "Null connection pools": [[5, "null-connection-pools"], [21, "null-connection-pools"]], "Pool connection and sizing": [[5, "pool-connection-and-sizing"]], "What\u2019s the right size for the pool?": [[5, "what-s-the-right-size-for-the-pool"]], "Connection quality": [[5, "connection-quality"]], "Pool operations logging": [[5, "pool-operations-logging"]], "Pool stats": [[5, "pool-stats"]], "Prepared statements": [[6, "prepared-statements"]], "Using prepared statements with PgBouncer": [[6, "using-prepared-statements-with-pgbouncer"]], "Row factories": [[7, "row-factories"]], "Creating new row factories": [[7, "creating-new-row-factories"]], "Static Typing": [[8, "static-typing"]], "Generic types": [[8, "generic-types"]], "Type of rows returned": [[8, "type-of-rows-returned"]], "Generic pool types": [[8, "generic-pool-types"]], "Example: returning records as Pydantic models": [[8, "example-returning-records-as-pydantic-models"]], "Checking literal strings in queries": [[8, "checking-literal-strings-in-queries"]], "abc \u2013 Psycopg abstract classes": [[9, "abc-psycopg-abstract-classes"]], "adapt \u2013 Types adaptation": [[10, "module-psycopg.adapt"]], "Dumpers and loaders": [[10, "dumpers-and-loaders"]], "Other objects used in adaptations": [[10, "other-objects-used-in-adaptations"]], "Connection classes": [[11, "connection-classes"]], "The Connection class": [[11, "the-connection-class"]], "The AsyncConnection class": [[11, "the-asyncconnection-class"]], "conninfo \u2013 manipulate connection strings": [[12, "conninfo-manipulate-connection-strings"]], "COPY-related objects": [[13, "copy-related-objects"]], "Main Copy objects": [[13, "main-copy-objects"]], "Writer objects": [[13, "writer-objects"]], "crdb \u2013 CockroachDB support": [[14, "module-psycopg.crdb"]], "Main differences from PostgreSQL": [[14, "main-differences-from-postgresql"]], "CockroachDB-specific objects": [[14, "cockroachdb-specific-objects"]], "Cursor classes": [[15, "cursor-classes"]], "The Cursor class": [[15, "the-cursor-class"]], "The RawCursor class": [[15, "the-rawcursor-class"]], "The ClientCursor class": [[15, "the-clientcursor-class"]], "The ServerCursor class": [[15, "the-servercursor-class"]], "Async cursor classes": [[15, "async-cursor-classes"]], "_dns \u2013 DNS resolution utilities": [[16, "module-psycopg._dns"]], "errors \u2013 Package exceptions": [[17, "module-psycopg.errors"]], "DB-API exceptions": [[17, "db-api-exceptions"]], "Other Psycopg errors": [[17, "other-psycopg-errors"]], "Error diagnostics": [[17, "error-diagnostics"]], "SQLSTATE exceptions": [[17, "sqlstate-exceptions"]], "List of known exceptions": [[17, "list-of-known-exceptions"]], "Psycopg 3 API": [[18, "psycopg-3-api"]], "The psycopg module": [[19, "the-psycopg-module"]], "Other top-level objects": [[20, "other-top-level-objects"]], "Connection information": [[20, "connection-information"]], "Libpq capabilities information": [[20, "libpq-capabilities-information"]], "The description Column object": [[20, "the-description-column-object"]], "Notifications": [[20, "notifications"]], "Pipeline-related objects": [[20, "pipeline-related-objects"]], "Transaction-related objects": [[20, "transaction-related-objects"]], "Two-Phase Commit related objects": [[20, "two-phase-commit-related-objects"]], "psycopg_pool \u2013 Connection pool implementations": [[21, "psycopg-pool-connection-pool-implementations"]], "The ConnectionPool class": [[21, "the-connectionpool-class"]], "Pool exceptions": [[21, "pool-exceptions"]], "The AsyncConnectionPool class": [[21, "the-asyncconnectionpool-class"]], "pq \u2013 libpq wrapper module": [[22, "pq-libpq-wrapper-module"]], "pq module implementations": [[22, "pq-module-implementations"]], "Module content": [[22, "module-content"]], "Objects wrapping libpq structures and functions": [[22, "objects-wrapping-libpq-structures-and-functions"]], "TODO": [[22, null]], "Enumerations": [[22, "enumerations"]], "rows \u2013 row factory implementations": [[23, "module-psycopg.rows"]], "Formal rows protocols": [[23, "formal-rows-protocols"]], "sql \u2013 SQL string composition": [[24, "sql-sql-string-composition"]], "Module usage": [[24, "module-usage"]], "sql objects": [[24, "sql-objects"]], "Utility functions": [[24, "utility-functions"]], "types \u2013 Types information and adapters": [[25, "module-psycopg.types"]], "Types information": [[25, "types-information"]], "JSON adapters": [[25, "json-adapters"]], "Adapting basic Python types": [[26, "adapting-basic-python-types"]], "Booleans adaptation": [[26, "booleans-adaptation"]], "Numbers adaptation": [[26, "numbers-adaptation"]], "Strings adaptation": [[26, "strings-adaptation"]], "Binary adaptation": [[26, "binary-adaptation"]], "Date/time types adaptation": [[26, "date-time-types-adaptation"]], "Dates and times limits in Python": [[26, "dates-and-times-limits-in-python"]], "DateStyle and IntervalStyle limits": [[26, "datestyle-and-intervalstyle-limits"]], "JSON adaptation": [[26, "json-adaptation"]], "Lists adaptation": [[26, "lists-adaptation"]], "UUID adaptation": [[26, "uuid-adaptation"]], "Network data types adaptation": [[26, "network-data-types-adaptation"]], "Enum adaptation": [[26, "enum-adaptation"]], "Using COPY TO and COPY FROM": [[27, "using-copy-to-and-copy-from"]], "Writing data row-by-row": [[27, "writing-data-row-by-row"]], "Reading data row-by-row": [[27, "reading-data-row-by-row"]], "Copying block-by-block": [[27, "copying-block-by-block"]], "Binary copy": [[27, "binary-copy"]], "Asynchronous copy support": [[27, "asynchronous-copy-support"]], "Example: copying a table across servers": [[27, "example-copying-a-table-across-servers"]], "Differences from psycopg2": [[28, "differences-from-psycopg2"]], "Server-side binding": [[28, "server-side-binding"]], "Multiple statements in the same query": [[28, "multiple-statements-in-the-same-query"]], "Multiple results returned from multiple statements": [[28, "multiple-results-returned-from-multiple-statements"]], "Different cast rules": [[28, "different-cast-rules"]], "You cannot use IN %s with a tuple": [[28, "you-cannot-use-in-s-with-a-tuple"]], "You cannot use IS %s": [[28, "you-cannot-use-is-s"]], "Cursors subclasses": [[28, "cursors-subclasses"]], "Different adaptation system": [[28, "different-adaptation-system"]], "Copy is no longer file-based": [[28, "copy-is-no-longer-file-based"]], "with connection": [[28, "with-connection"]], "callproc() is gone": [[28, "callproc-is-gone"]], "client_encoding is gone": [[28, "client-encoding-is-gone"]], "Transaction characteristics attributes don\u2019t affect autocommit sessions": [[28, "transaction-characteristics-attributes-don-t-affect-autocommit-sessions"]], "No default infinity dates handling": [[28, "no-default-infinity-dates-handling"]], "What\u2019s new in Psycopg 3": [[28, "what-s-new-in-psycopg-3"]], "Getting started with Psycopg 3": [[29, "getting-started-with-psycopg-3"]], "Installation": [[30, "installation"]], "Supported systems": [[30, "supported-systems"]], "Binary installation": [[30, "binary-installation"]], "Local installation": [[30, "local-installation"]], "Pure Python installation": [[30, "pure-python-installation"]], "Installing the connection pool": [[30, "installing-the-connection-pool"]], "Handling dependencies": [[30, "handling-dependencies"]], "Passing parameters to SQL queries": [[31, "passing-parameters-to-sql-queries"]], "execute() arguments": [[31, "execute-arguments"]], "Danger: SQL injection": [[31, "danger-sql-injection"]], "Binary parameters and results": [[31, "binary-parameters-and-results"]], "Adapting other PostgreSQL types": [[32, "adapting-other-postgresql-types"]], "Composite types casting": [[32, "composite-types-casting"]], "Range adaptation": [[32, "range-adaptation"]], "Multirange adaptation": [[32, "multirange-adaptation"]], "Hstore adaptation": [[32, "hstore-adaptation"]], "Geometry adaptation using Shapely": [[32, "geometry-adaptation-using-shapely"]], "Transactions management": [[33, "transactions-management"]], "Autocommit transactions": [[33, "autocommit-transactions"]], "Transaction contexts": [[33, "transaction-contexts"]], "Nested transactions": [[33, "nested-transactions"]], "Transaction characteristics": [[33, "transaction-characteristics"]], "Two-Phase Commit protocol support": [[33, "two-phase-commit-protocol-support"]], "Basic module usage": [[34, "basic-module-usage"]], "Main objects in Psycopg 3": [[34, "main-objects-in-psycopg-3"]], "Shortcuts": [[34, "shortcuts"]], "Connection context": [[34, "connection-context"]], "Adapting pyscopg to your program": [[34, "adapting-pyscopg-to-your-program"]], "Psycopg 3 \u2013 PostgreSQL database adapter for Python": [[35, "psycopg-3-postgresql-database-adapter-for-python"]], "Documentation": [[35, "documentation"]], "Release notes": [[35, "release-notes"]], "Indices and tables": [[35, "indices-and-tables"]], "psycopg release notes": [[36, "psycopg-release-notes"]], "Future releases": [[36, "future-releases"], [37, "future-releases"]], "Psycopg 3.2 (unreleased)": [[36, "psycopg-3-2-unreleased"]], "Psycopg 3.1.19": [[36, "psycopg-3-1-19"]], "Current release": [[36, "current-release"], [37, "current-release"]], "Psycopg 3.1.18": [[36, "psycopg-3-1-18"]], "Psycopg 3.1.17": [[36, "psycopg-3-1-17"]], "Psycopg 3.1.16": [[36, "psycopg-3-1-16"]], "Psycopg 3.1.15": [[36, "psycopg-3-1-15"]], "Psycopg 3.1.14": [[36, "psycopg-3-1-14"]], "Psycopg 3.1.13": [[36, "psycopg-3-1-13"]], "Psycopg 3.1.12": [[36, "psycopg-3-1-12"]], "Psycopg 3.1.11": [[36, "psycopg-3-1-11"]], "Psycopg 3.1.10": [[36, "psycopg-3-1-10"]], "Psycopg 3.1.9": [[36, "psycopg-3-1-9"]], "Psycopg 3.1.8": [[36, "psycopg-3-1-8"]], "Psycopg 3.1.7": [[36, "psycopg-3-1-7"]], "Psycopg 3.1.6": [[36, "psycopg-3-1-6"]], "Psycopg 3.1.5": [[36, "psycopg-3-1-5"]], "Psycopg 3.1.4": [[36, "psycopg-3-1-4"]], "Psycopg 3.1.3": [[36, "psycopg-3-1-3"]], "Psycopg 3.1.2": [[36, "psycopg-3-1-2"]], "Psycopg 3.1.1": [[36, "psycopg-3-1-1"]], "Psycopg 3.1": [[36, "psycopg-3-1"]], "Psycopg 3.0.17": [[36, "psycopg-3-0-17"]], "Psycopg 3.0.16": [[36, "psycopg-3-0-16"]], "Psycopg 3.0.15": [[36, "psycopg-3-0-15"]], "Psycopg 3.0.14": [[36, "psycopg-3-0-14"]], "Psycopg 3.0.13": [[36, "psycopg-3-0-13"]], "Psycopg 3.0.12": [[36, "psycopg-3-0-12"]], "Psycopg 3.0.11": [[36, "psycopg-3-0-11"]], "Psycopg 3.0.10": [[36, "psycopg-3-0-10"]], "Psycopg 3.0.9": [[36, "psycopg-3-0-9"]], "Psycopg 3.0.8": [[36, "psycopg-3-0-8"]], "Psycopg 3.0.7": [[36, "psycopg-3-0-7"]], "Psycopg 3.0.6": [[36, "psycopg-3-0-6"]], "Psycopg 3.0.5": [[36, "psycopg-3-0-5"]], "Psycopg 3.0.4": [[36, "psycopg-3-0-4"]], "Psycopg 3.0.3": [[36, "psycopg-3-0-3"]], "Psycopg 3.0.2": [[36, "psycopg-3-0-2"]], "Psycopg 3.0.1": [[36, "psycopg-3-0-1"]], "Psycopg 3.0": [[36, "psycopg-3-0"]], "Psycopg 3.0b1": [[36, "psycopg-3-0b1"]], "psycopg_pool release notes": [[37, "psycopg-pool-release-notes"]], "psycopg_pool 3.2.2 (unreleased)": [[37, "psycopg-pool-3-2-2-unreleased"]], "psycopg_pool 3.2.1": [[37, "psycopg-pool-3-2-1"]], "psycopg_pool 3.2.0": [[37, "psycopg-pool-3-2-0"]], "psycopg_pool 3.1.9": [[37, "psycopg-pool-3-1-9"]], "psycopg_pool 3.1.8": [[37, "psycopg-pool-3-1-8"]], "psycopg_pool 3.1.7": [[37, "psycopg-pool-3-1-7"]], "psycopg_pool 3.1.6": [[37, "psycopg-pool-3-1-6"]], "psycopg_pool 3.1.5": [[37, "psycopg-pool-3-1-5"]], "psycopg_pool 3.1.4": [[37, "psycopg-pool-3-1-4"]], "psycopg_pool 3.1.3": [[37, "psycopg-pool-3-1-3"]], "psycopg_pool 3.1.2": [[37, "psycopg-pool-3-1-2"]], "psycopg_pool 3.1.1": [[37, "psycopg-pool-3-1-1"]], "psycopg_pool 3.1.0": [[37, "psycopg-pool-3-1-0"]], "psycopg_pool 3.0.3": [[37, "psycopg-pool-3-0-3"]], "psycopg_pool 3.0.2": [[37, "psycopg-pool-3-0-2"]], "psycopg_pool 3.0.1": [[37, "psycopg-pool-3-0-1"]], "psycopg_pool 3.0": [[37, "psycopg-pool-3-0"]], "How to make a psycopg release": [[38, "how-to-make-a-psycopg-release"]], "When a new PostgreSQL major version is released": [[38, "when-a-new-postgresql-major-version-is-released"]]}, "indexentries": {"asynchronous": [[1, "index-5"], [1, "index-6"]], "ctrl-c": [[1, "index-3"]], "listen": [[1, "index-5"], [1, "index-6"]], "notify": [[1, "index-5"], [1, "index-6"]], "notifications": [[1, "index-5"], [1, "index-6"]], "sql command": [[1, "index-5"], [1, "index-6"], [27, "index-0"]], "asyncio": [[1, "index-1"]], "disconnections": [[1, "index-7"]], "gevent": [[1, "index-4"]], "threads": [[1, "index-0"]], "with": [[1, "index-2"]], "client-binding": [[2, "index-2"]], "client-side": [[2, "index-1"], [24, "index-0"]], "cursor": [[2, "index-0"], [2, "index-1"], [2, "index-2"], [2, "index-3"]], "named": [[2, "index-3"]], "portal": [[2, "index-3"]], "server-side": [[2, "index-3"]], "prepared statements": [[6, "index-0"]], "row factory": [[7, "index-1"]], "row maker": [[7, "index-1"]], "row factories": [[7, "index-0"]], "pep 0484": [[8, "index-0"]], "pep 675": [[8, "index-1"], [15, "index-0"], [24, "index-1"], [36, "index-3"]], "python enhancement proposals": [[8, "index-0"], [8, "index-1"], [15, "index-0"], [24, "index-1"], [36, "index-2"], [36, "index-3"]], "adaptcontext (class in psycopg.abc)": [[9, "psycopg.abc.AdaptContext"]], "dumper (class in psycopg.abc)": [[9, "psycopg.abc.Dumper"]], "loader (class in psycopg.abc)": [[9, "psycopg.abc.Loader"]], "adapters (psycopg.abc.adaptcontext property)": [[9, "psycopg.abc.AdaptContext.adapters"]], "connection (psycopg.abc.adaptcontext property)": [[9, "psycopg.abc.AdaptContext.connection"]], "dump() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.dump"]], "format (psycopg.abc.dumper attribute)": [[9, "psycopg.abc.Dumper.format"]], "format (psycopg.abc.loader attribute)": [[9, "psycopg.abc.Loader.format"]], "get_key() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.get_key"]], "load() (psycopg.abc.loader method)": [[9, "psycopg.abc.Loader.load"]], "module": [[9, "module-psycopg.abc"], [10, "module-psycopg.adapt"], [12, "module-psycopg.conninfo"], [14, "module-psycopg.crdb"], [16, "module-psycopg._dns"], [17, "module-psycopg.errors"], [19, "module-psycopg"], [21, "module-psycopg_pool"], [22, "module-psycopg.pq"], [23, "module-psycopg.rows"], [24, "module-psycopg.sql"], [25, "module-psycopg.types"]], "oid (psycopg.abc.dumper attribute)": [[9, "psycopg.abc.Dumper.oid"]], "psycopg.abc": [[9, "module-psycopg.abc"]], "quote() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.quote"]], "upgrade() (psycopg.abc.dumper method)": [[9, "psycopg.abc.Dumper.upgrade"]], "auto (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.AUTO"]], "adaptersmap (class in psycopg.adapt)": [[10, "psycopg.adapt.AdaptersMap"]], "binary (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.BINARY"]], "dumper (class in psycopg.adapt)": [[10, "psycopg.adapt.Dumper"]], "loader (class in psycopg.adapt)": [[10, "psycopg.adapt.Loader"]], "pyformat (class in psycopg.adapt)": [[10, "psycopg.adapt.PyFormat"]], "text (psycopg.adapt.pyformat attribute)": [[10, "psycopg.adapt.PyFormat.TEXT"]], "transformer (class in psycopg.adapt)": [[10, "psycopg.adapt.Transformer"]], "dump() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.dump"]], "format (psycopg.adapt.dumper attribute)": [[10, "psycopg.adapt.Dumper.format"]], "format (psycopg.adapt.loader attribute)": [[10, "psycopg.adapt.Loader.format"]], "get_dumper() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_dumper"]], "get_dumper_by_oid() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_dumper_by_oid"]], "get_key() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.get_key"]], "get_loader() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.get_loader"]], "load() (psycopg.adapt.loader method)": [[10, "psycopg.adapt.Loader.load"]], "psycopg.adapt": [[10, "module-psycopg.adapt"]], "quote() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.quote"]], "register_dumper() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.register_dumper"]], "register_loader() (psycopg.adapt.adaptersmap method)": [[10, "psycopg.adapt.AdaptersMap.register_loader"]], "types (psycopg.adapt.adaptersmap attribute)": [[10, "psycopg.adapt.AdaptersMap.types"]], "upgrade() (psycopg.adapt.dumper method)": [[10, "psycopg.adapt.Dumper.upgrade"]], "asyncconnection (class in psycopg)": [[11, "psycopg.AsyncConnection"]], "connection (class in psycopg)": [[11, "psycopg.Connection"]], "add_notice_handler() (psycopg.connection method)": [[11, "psycopg.Connection.add_notice_handler"]], "add_notify_handler() (psycopg.connection method)": [[11, "psycopg.Connection.add_notify_handler"]], "autocommit (psycopg.connection attribute)": [[11, "psycopg.Connection.autocommit"]], "broken (psycopg.connection attribute)": [[11, "psycopg.Connection.broken"]], "cancel() (psycopg.connection method)": [[11, "psycopg.Connection.cancel"]], "cancel_safe() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.cancel_safe"]], "cancel_safe() (psycopg.connection method)": [[11, "psycopg.Connection.cancel_safe"]], "close() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.close"]], "close() (psycopg.connection method)": [[11, "psycopg.Connection.close"]], "closed (psycopg.connection attribute)": [[11, "psycopg.Connection.closed"]], "commit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.commit"]], "commit() (psycopg.connection method)": [[11, "psycopg.Connection.commit"]], "connect() (psycopg.asyncconnection class method)": [[11, "psycopg.AsyncConnection.connect"]], "connect() (psycopg.connection class method)": [[11, "psycopg.Connection.connect"]], "cursor() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.cursor"]], "cursor() (psycopg.connection method)": [[11, "psycopg.Connection.cursor"]], "cursor_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.cursor_factory"]], "cursor_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.cursor_factory"]], "deferrable (psycopg.connection attribute)": [[11, "psycopg.Connection.deferrable"]], "execute() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.execute"]], "execute() (psycopg.connection method)": [[11, "psycopg.Connection.execute"]], "fileno() (psycopg.connection method)": [[11, "psycopg.Connection.fileno"]], "info (psycopg.connection attribute)": [[11, "psycopg.Connection.info"]], "isolation_level (psycopg.connection attribute)": [[11, "psycopg.Connection.isolation_level"]], "notifies() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.notifies"]], "notifies() (psycopg.connection method)": [[11, "psycopg.Connection.notifies"]], "pgconn (psycopg.connection attribute)": [[11, "psycopg.Connection.pgconn"]], "pipeline() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.pipeline"]], "pipeline() (psycopg.connection method)": [[11, "psycopg.Connection.pipeline"]], "prepare_threshold (psycopg.connection attribute)": [[11, "psycopg.Connection.prepare_threshold"]], "prepared_max (psycopg.connection attribute)": [[11, "psycopg.Connection.prepared_max"]], "read_only (psycopg.connection attribute)": [[11, "psycopg.Connection.read_only"]], "remove_notice_handler() (psycopg.connection method)": [[11, "psycopg.Connection.remove_notice_handler"]], "remove_notify_handler() (psycopg.connection method)": [[11, "psycopg.Connection.remove_notify_handler"]], "rollback() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.rollback"]], "rollback() (psycopg.connection method)": [[11, "psycopg.Connection.rollback"]], "row_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.row_factory"]], "row_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.row_factory"]], "server_cursor_factory (psycopg.asyncconnection attribute)": [[11, "psycopg.AsyncConnection.server_cursor_factory"]], "server_cursor_factory (psycopg.connection attribute)": [[11, "psycopg.Connection.server_cursor_factory"]], "set_autocommit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_autocommit"]], "set_autocommit() (psycopg.connection method)": [[11, "psycopg.Connection.set_autocommit"]], "set_deferrable() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_deferrable"]], "set_deferrable() (psycopg.connection method)": [[11, "psycopg.Connection.set_deferrable"]], "set_isolation_level() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_isolation_level"]], "set_isolation_level() (psycopg.connection method)": [[11, "psycopg.Connection.set_isolation_level"]], "set_read_only() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.set_read_only"]], "set_read_only() (psycopg.connection method)": [[11, "psycopg.Connection.set_read_only"]], "tpc_begin() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_begin"]], "tpc_commit() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_commit"]], "tpc_commit() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_commit"]], "tpc_prepare() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_prepare"]], "tpc_prepare() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_prepare"]], "tpc_recover() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_recover"]], "tpc_recover() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_recover"]], "tpc_rollback() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.tpc_rollback"]], "tpc_rollback() (psycopg.connection method)": [[11, "psycopg.Connection.tpc_rollback"]], "transaction() (psycopg.asyncconnection method)": [[11, "psycopg.AsyncConnection.transaction"]], "transaction() (psycopg.connection method)": [[11, "psycopg.Connection.transaction"]], "xid() (psycopg.connection method)": [[11, "psycopg.Connection.xid"]], "conninfo_to_dict() (in module psycopg.conninfo)": [[12, "psycopg.conninfo.conninfo_to_dict"]], "make_conninfo() (in module psycopg.conninfo)": [[12, "psycopg.conninfo.make_conninfo"]], "psycopg.conninfo": [[12, "module-psycopg.conninfo"]], "asynccopy (class in psycopg)": [[13, "psycopg.AsyncCopy"]], "asynclibpqwriter (class in psycopg.copy)": [[13, "psycopg.copy.AsyncLibpqWriter"]], "asyncwriter (class in psycopg.copy)": [[13, "psycopg.copy.AsyncWriter"]], "copy (class in psycopg)": [[13, "psycopg.Copy"]], "filewriter (class in psycopg.copy)": [[13, "psycopg.copy.FileWriter"]], "libpqwriter (class in psycopg.copy)": [[13, "psycopg.copy.LibpqWriter"]], "writer (class in psycopg.copy)": [[13, "psycopg.copy.Writer"]], "finish() (psycopg.copy.asyncwriter method)": [[13, "psycopg.copy.AsyncWriter.finish"]], "finish() (psycopg.copy.writer method)": [[13, "psycopg.copy.Writer.finish"]], "read() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.read"]], "read() (psycopg.copy method)": [[13, "psycopg.Copy.read"]], "read_row() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.read_row"]], "read_row() (psycopg.copy method)": [[13, "psycopg.Copy.read_row"]], "rows() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.rows"]], "rows() (psycopg.copy method)": [[13, "psycopg.Copy.rows"]], "set_types() (psycopg.copy method)": [[13, "psycopg.Copy.set_types"]], "write() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.write"]], "write() (psycopg.copy method)": [[13, "psycopg.Copy.write"]], "write() (psycopg.copy.asyncwriter method)": [[13, "psycopg.copy.AsyncWriter.write"]], "write() (psycopg.copy.writer method)": [[13, "psycopg.copy.Writer.write"]], "write_row() (psycopg.asynccopy method)": [[13, "psycopg.AsyncCopy.write_row"]], "write_row() (psycopg.copy method)": [[13, "psycopg.Copy.write_row"]], "asynccrdbconnection (class in psycopg.crdb)": [[14, "psycopg.crdb.AsyncCrdbConnection"]], "crdbconnection (class in psycopg.crdb)": [[14, "psycopg.crdb.CrdbConnection"]], "crdbconnectioninfo (class in psycopg.crdb)": [[14, "psycopg.crdb.CrdbConnectionInfo"]], "adapters (in module psycopg.crdb)": [[14, "psycopg.crdb.adapters"]], "connect() (in module psycopg.crdb)": [[14, "psycopg.crdb.connect"]], "is_crdb() (psycopg.crdb.crdbconnection class method)": [[14, "psycopg.crdb.CrdbConnection.is_crdb"]], "psycopg.crdb": [[14, "module-psycopg.crdb"]], "server_version (psycopg.crdb.crdbconnectioninfo attribute)": [[14, "psycopg.crdb.CrdbConnectionInfo.server_version"]], "vendor (psycopg.crdb.crdbconnectioninfo attribute)": [[14, "psycopg.crdb.CrdbConnectionInfo.vendor"]], "asyncclientcursor (class in psycopg)": [[15, "psycopg.AsyncClientCursor"]], "asynccursor (class in psycopg)": [[15, "psycopg.AsyncCursor"]], "asyncrawcursor (class in psycopg)": [[15, "psycopg.AsyncRawCursor"]], "asyncservercursor (class in psycopg)": [[15, "psycopg.AsyncServerCursor"]], "clientcursor (class in psycopg)": [[15, "psycopg.ClientCursor"]], "cursor (class in psycopg)": [[15, "psycopg.Cursor"]], "rawcursor (class in psycopg)": [[15, "psycopg.RawCursor"]], "servercursor (class in psycopg)": [[15, "psycopg.ServerCursor"]], "_query (psycopg.cursor attribute)": [[15, "psycopg.Cursor._query"]], "close() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.close"]], "close() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.close"]], "close() (psycopg.cursor method)": [[15, "psycopg.Cursor.close"]], "close() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.close"]], "closed (psycopg.cursor attribute)": [[15, "psycopg.Cursor.closed"]], "connection (psycopg.asynccursor attribute)": [[15, "psycopg.AsyncCursor.connection"]], "connection (psycopg.cursor attribute)": [[15, "psycopg.Cursor.connection"]], "copy() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.copy"]], "copy() (psycopg.cursor method)": [[15, "psycopg.Cursor.copy"]], "description (psycopg.cursor attribute)": [[15, "psycopg.Cursor.description"]], "execute() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.execute"]], "execute() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.execute"]], "execute() (psycopg.cursor method)": [[15, "psycopg.Cursor.execute"]], "execute() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.execute"]], "executemany() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.executemany"]], "executemany() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.executemany"]], "executemany() (psycopg.cursor method)": [[15, "psycopg.Cursor.executemany"]], "executemany() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.executemany"]], "fetchall() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchall"]], "fetchall() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchall"]], "fetchall() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchall"]], "fetchall() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchall"]], "fetchmany() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchmany"]], "fetchmany() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchmany"]], "fetchmany() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchmany"]], "fetchmany() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchmany"]], "fetchone() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.fetchone"]], "fetchone() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.fetchone"]], "fetchone() (psycopg.cursor method)": [[15, "psycopg.Cursor.fetchone"]], "fetchone() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.fetchone"]], "format (psycopg.cursor attribute)": [[15, "psycopg.Cursor.format"]], "itersize (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.itersize"]], "mogrify() (psycopg.clientcursor method)": [[15, "psycopg.ClientCursor.mogrify"]], "name (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.name"]], "nextset() (psycopg.cursor method)": [[15, "psycopg.Cursor.nextset"]], "pgresult (psycopg.cursor attribute)": [[15, "psycopg.Cursor.pgresult"]], "row_factory (psycopg.cursor attribute)": [[15, "psycopg.Cursor.row_factory"]], "rowcount (psycopg.cursor attribute)": [[15, "psycopg.Cursor.rowcount"]], "rownumber (psycopg.cursor attribute)": [[15, "psycopg.Cursor.rownumber"]], "scroll() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.scroll"]], "scroll() (psycopg.asyncservercursor method)": [[15, "psycopg.AsyncServerCursor.scroll"]], "scroll() (psycopg.cursor method)": [[15, "psycopg.Cursor.scroll"]], "scroll() (psycopg.servercursor method)": [[15, "psycopg.ServerCursor.scroll"]], "scrollable (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.scrollable"]], "statusmessage (psycopg.cursor attribute)": [[15, "psycopg.Cursor.statusmessage"]], "stream() (psycopg.asynccursor method)": [[15, "psycopg.AsyncCursor.stream"]], "stream() (psycopg.cursor method)": [[15, "psycopg.Cursor.stream"]], "withhold (psycopg.servercursor attribute)": [[15, "psycopg.ServerCursor.withhold"]], "rfc": [[16, "index-0"]], "rfc 2782": [[16, "index-0"]], "_get_connection_params() (psycopg.asyncconnection class method)": [[16, "psycopg.AsyncConnection._get_connection_params"]], "_get_connection_params() (psycopg.connection class method)": [[16, "psycopg.Connection._get_connection_params"]], "psycopg._dns": [[16, "module-psycopg._dns"]], "resolve_hostaddr_async() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_hostaddr_async"]], "resolve_srv() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_srv"]], "resolve_srv_async() (in module psycopg._dns)": [[16, "psycopg._dns.resolve_srv_async"]], "class": [[17, "index-0"]], "connectiontimeout": [[17, "psycopg.errors.ConnectionTimeout"]], "db-api": [[17, "index-1"]], "dataerror": [[17, "psycopg.DataError"]], "databaseerror": [[17, "psycopg.DatabaseError"]], "diagnostic (class in psycopg.errors)": [[17, "psycopg.errors.Diagnostic"]], "error": [[17, "index-0"], [17, "psycopg.Error"]], "exceptions": [[17, "index-1"], [17, "index-2"]], "integrityerror": [[17, "psycopg.IntegrityError"]], "interfaceerror": [[17, "psycopg.InterfaceError"]], "internalerror": [[17, "psycopg.InternalError"]], "notsupportederror": [[17, "psycopg.NotSupportedError"]], "operationalerror": [[17, "psycopg.OperationalError"]], "pipelineaborted": [[17, "psycopg.errors.PipelineAborted"]], "postgresql": [[17, "index-2"]], "programmingerror": [[17, "psycopg.ProgrammingError"]], "warning": [[17, "psycopg.Warning"]], "column_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.column_name"]], "constraint_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.constraint_name"]], "context (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.context"]], "datatype_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.datatype_name"]], "diag (psycopg.error attribute)": [[17, "psycopg.Error.diag"]], "internal_position (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.internal_position"]], "internal_query (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.internal_query"]], "lookup() (in module psycopg.errors)": [[17, "psycopg.errors.lookup"]], "message_detail (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_detail"]], "message_hint (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_hint"]], "message_primary (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.message_primary"]], "pgconn (psycopg.error attribute)": [[17, "psycopg.Error.pgconn"]], "pgresult (psycopg.error attribute)": [[17, "psycopg.Error.pgresult"]], "psycopg.errors": [[17, "module-psycopg.errors"]], "schema_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.schema_name"]], "severity (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.severity"]], "severity_nonlocalized (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.severity_nonlocalized"]], "source_file (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_file"]], "source_function (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_function"]], "source_line (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.source_line"]], "sqlstate (psycopg.error attribute)": [[17, "psycopg.Error.sqlstate"]], "sqlstate (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.sqlstate"]], "statement_position (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.statement_position"]], "table_name (psycopg.errors.diagnostic attribute)": [[17, "psycopg.errors.Diagnostic.table_name"]], "adapters (in module psycopg)": [[19, "psycopg.adapters"]], "capabilities (in module psycopg)": [[19, "psycopg.capabilities"]], "connect() (in module psycopg)": [[19, "psycopg.connect"]], "psycopg": [[19, "module-psycopg"]], "asyncpipeline (class in psycopg)": [[20, "psycopg.AsyncPipeline"]], "asynctransaction (class in psycopg)": [[20, "psycopg.AsyncTransaction"]], "capabilities (class in psycopg)": [[20, "psycopg.Capabilities"]], "column (class in psycopg)": [[20, "psycopg.Column"]], "connectioninfo (class in psycopg)": [[20, "psycopg.ConnectionInfo"]], "isolationlevel (class in psycopg)": [[20, "psycopg.IsolationLevel"]], "notify (class in psycopg)": [[20, "psycopg.Notify"]], "pipeline (class in psycopg)": [[20, "psycopg.Pipeline"]], "read_committed (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.READ_COMMITTED"]], "read_uncommitted (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.READ_UNCOMMITTED"]], "repeatable_read (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.REPEATABLE_READ"]], "rollback": [[20, "psycopg.Rollback"]], "serializable (psycopg.isolationlevel attribute)": [[20, "psycopg.IsolationLevel.SERIALIZABLE"]], "transaction (class in psycopg)": [[20, "psycopg.Transaction"]], "xid (class in psycopg)": [[20, "psycopg.Xid"]], "backend_pid (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.backend_pid"]], "bqual (psycopg.xid attribute)": [[20, "psycopg.Xid.bqual"]], "channel (psycopg.notify attribute)": [[20, "psycopg.Notify.channel"]], "connection (psycopg.asynctransaction attribute)": [[20, "psycopg.AsyncTransaction.connection"]], "connection (psycopg.transaction attribute)": [[20, "psycopg.Transaction.connection"]], "database (psycopg.xid attribute)": [[20, "psycopg.Xid.database"]], "dbname (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.dbname"]], "display_size (psycopg.column attribute)": [[20, "psycopg.Column.display_size"]], "dsn (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.dsn"]], "encoding (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.encoding"]], "error_message (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.error_message"]], "format_id (psycopg.xid attribute)": [[20, "psycopg.Xid.format_id"]], "get_parameters() (psycopg.connectioninfo method)": [[20, "psycopg.ConnectionInfo.get_parameters"]], "gtrid (psycopg.xid attribute)": [[20, "psycopg.Xid.gtrid"]], "has_cancel_safe() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_cancel_safe"]], "has_encrypt_password() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_encrypt_password"]], "has_hostaddr() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_hostaddr"]], "has_pgbouncer_prepared() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_pgbouncer_prepared"]], "has_pipeline() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_pipeline"]], "has_set_trace_flags() (psycopg.capabilities method)": [[20, "psycopg.Capabilities.has_set_trace_flags"]], "host (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.host"]], "hostaddr (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.hostaddr"]], "internal_size (psycopg.column attribute)": [[20, "psycopg.Column.internal_size"]], "is_supported() (psycopg.pipeline class method)": [[20, "psycopg.Pipeline.is_supported"]], "name (psycopg.column attribute)": [[20, "psycopg.Column.name"]], "options (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.options"]], "owner (psycopg.xid attribute)": [[20, "psycopg.Xid.owner"]], "parameter_status() (psycopg.connectioninfo method)": [[20, "psycopg.ConnectionInfo.parameter_status"]], "password (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.password"]], "payload (psycopg.notify attribute)": [[20, "psycopg.Notify.payload"]], "pid (psycopg.notify attribute)": [[20, "psycopg.Notify.pid"]], "pipeline_status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.pipeline_status"]], "port (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.port"]], "precision (psycopg.column attribute)": [[20, "psycopg.Column.precision"]], "prepared (psycopg.xid attribute)": [[20, "psycopg.Xid.prepared"]], "savepoint_name (psycopg.transaction attribute)": [[20, "psycopg.Transaction.savepoint_name"]], "scale (psycopg.column attribute)": [[20, "psycopg.Column.scale"]], "server_version (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.server_version"]], "status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.status"]], "sync() (psycopg.asyncpipeline method)": [[20, "psycopg.AsyncPipeline.sync"]], "sync() (psycopg.pipeline method)": [[20, "psycopg.Pipeline.sync"]], "timezone (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.timezone"]], "transaction_status (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.transaction_status"]], "type_code (psycopg.column attribute)": [[20, "psycopg.Column.type_code"]], "user (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.user"]], "vendor (psycopg.connectioninfo attribute)": [[20, "psycopg.ConnectionInfo.vendor"]], "asyncconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.AsyncConnectionPool"]], "asyncnullconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.AsyncNullConnectionPool"]], "connection": [[21, "index-0"], [34, "index-1"]], "connectionpool (class in psycopg_pool)": [[21, "psycopg_pool.ConnectionPool"]], "nullconnectionpool (class in psycopg_pool)": [[21, "psycopg_pool.NullConnectionPool"]], "pool": [[21, "index-0"]], "poolclosed (class in psycopg_pool)": [[21, "psycopg_pool.PoolClosed"]], "pooltimeout (class in psycopg_pool)": [[21, "psycopg_pool.PoolTimeout"]], "toomanyrequests (class in psycopg_pool)": [[21, "psycopg_pool.TooManyRequests"]], "check() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.check"]], "check() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.check"]], "check() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.check"]], "check_connection() (psycopg_pool.asyncconnectionpool static method)": [[21, "psycopg_pool.AsyncConnectionPool.check_connection"]], "check_connection() (psycopg_pool.connectionpool static method)": [[21, "psycopg_pool.ConnectionPool.check_connection"]], "close() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.close"]], "close() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.close"]], "connection() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.connection"]], "connection() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.connection"]], "get_stats() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.get_stats"]], "getconn() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.getconn"]], "getconn() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.getconn"]], "max_size (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.max_size"]], "min_size (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.min_size"]], "name (psycopg_pool.connectionpool attribute)": [[21, "psycopg_pool.ConnectionPool.name"]], "open() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.open"]], "open() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.open"]], "pop_stats() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.pop_stats"]], "psycopg_pool": [[21, "module-psycopg_pool"]], "putconn() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.putconn"]], "putconn() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.putconn"]], "resize() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.resize"]], "resize() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.resize"]], "resize() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.resize"]], "wait() (psycopg_pool.asyncconnectionpool method)": [[21, "psycopg_pool.AsyncConnectionPool.wait"]], "wait() (psycopg_pool.connectionpool method)": [[21, "psycopg_pool.ConnectionPool.wait"]], "wait() (psycopg_pool.nullconnectionpool method)": [[21, "psycopg_pool.NullConnectionPool.wait"]], "aborted (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.ABORTED"]], "active (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.ACTIVE"]], "allocated (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.ALLOCATED"]], "bad (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.BAD"]], "bad_response (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.BAD_RESPONSE"]], "binary (psycopg.pq.format attribute)": [[22, "psycopg.pq.Format.BINARY"]], "column_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.COLUMN_NAME"]], "command_ok (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COMMAND_OK"]], "constraint_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.CONSTRAINT_NAME"]], "context (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.CONTEXT"]], "copy_both (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_BOTH"]], "copy_in (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_IN"]], "copy_out (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.COPY_OUT"]], "connstatus (class in psycopg.pq)": [[22, "psycopg.pq.ConnStatus"]], "conninfo (class in psycopg.pq)": [[22, "psycopg.pq.Conninfo"]], "datatype_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.DATATYPE_NAME"]], "diagnosticfield (class in psycopg.pq)": [[22, "psycopg.pq.DiagnosticField"]], "empty_query (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.EMPTY_QUERY"]], "escaping (class in psycopg.pq)": [[22, "psycopg.pq.Escaping"]], "execstatus (class in psycopg.pq)": [[22, "psycopg.pq.ExecStatus"]], "failed (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.FAILED"]], "fatal_error (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.FATAL_ERROR"]], "format (class in psycopg.pq)": [[22, "psycopg.pq.Format"]], "idle (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.IDLE"]], "inerror (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.INERROR"]], "internal_position (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.INTERNAL_POSITION"]], "internal_query (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.INTERNAL_QUERY"]], "intrans (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.INTRANS"]], "message_detail (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_DETAIL"]], "message_hint (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_HINT"]], "message_primary (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.MESSAGE_PRIMARY"]], "nonfatal_error (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.NONFATAL_ERROR"]], "no_attempt (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.NO_ATTEMPT"]], "no_response (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.NO_RESPONSE"]], "off (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.OFF"]], "ok (psycopg.pq.connstatus attribute)": [[22, "psycopg.pq.ConnStatus.OK"]], "ok (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.OK"]], "ok (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.OK"]], "on (psycopg.pq.pipelinestatus attribute)": [[22, "psycopg.pq.PipelineStatus.ON"]], "pgcancel (class in psycopg.pq)": [[22, "psycopg.pq.PGcancel"]], "pgconn (class in psycopg.pq)": [[22, "psycopg.pq.PGconn"]], "pgresult (class in psycopg.pq)": [[22, "psycopg.pq.PGresult"]], "pipeline_aborted (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.PIPELINE_ABORTED"]], "pipeline_sync (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.PIPELINE_SYNC"]], "psycopg_impl": [[22, "index-1"], [22, "index-2"], [30, "index-1"]], "ping (class in psycopg.pq)": [[22, "psycopg.pq.Ping"]], "pipelinestatus (class in psycopg.pq)": [[22, "psycopg.pq.PipelineStatus"]], "pollingstatus (class in psycopg.pq)": [[22, "psycopg.pq.PollingStatus"]], "reading (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.READING"]], "regress_mode (psycopg.pq.trace attribute)": [[22, "psycopg.pq.Trace.REGRESS_MODE"]], "reject (psycopg.pq.ping attribute)": [[22, "psycopg.pq.Ping.REJECT"]], "schema_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SCHEMA_NAME"]], "severity (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SEVERITY"]], "severity_nonlocalized (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SEVERITY_NONLOCALIZED"]], "single_tuple (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.SINGLE_TUPLE"]], "source_file (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_FILE"]], "source_function (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_FUNCTION"]], "source_line (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SOURCE_LINE"]], "sqlstate (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.SQLSTATE"]], "statement_position (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.STATEMENT_POSITION"]], "suppress_timestamps (psycopg.pq.trace attribute)": [[22, "psycopg.pq.Trace.SUPPRESS_TIMESTAMPS"]], "table_name (psycopg.pq.diagnosticfield attribute)": [[22, "psycopg.pq.DiagnosticField.TABLE_NAME"]], "text (psycopg.pq.format attribute)": [[22, "psycopg.pq.Format.TEXT"]], "tuples_chunk (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.TUPLES_CHUNK"]], "tuples_ok (psycopg.pq.execstatus attribute)": [[22, "psycopg.pq.ExecStatus.TUPLES_OK"]], "trace (class in psycopg.pq)": [[22, "psycopg.pq.Trace"]], "transactionstatus (class in psycopg.pq)": [[22, "psycopg.pq.TransactionStatus"]], "unknown (psycopg.pq.transactionstatus attribute)": [[22, "psycopg.pq.TransactionStatus.UNKNOWN"]], "writing (psycopg.pq.pollingstatus attribute)": [[22, "psycopg.pq.PollingStatus.WRITING"]], "__build_version__ (in module psycopg.pq)": [[22, "psycopg.pq.__build_version__"]], "__impl__ (in module psycopg.pq)": [[22, "psycopg.pq.__impl__"]], "cancel() (psycopg.pq.pgcancel method)": [[22, "psycopg.pq.PGcancel.cancel"]], "encrypt_password() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.encrypt_password"]], "environment variable": [[22, "index-1"], [22, "index-2"], [30, "index-0"], [30, "index-1"], [36, "index-1"]], "error_message() (in module psycopg.pq)": [[22, "psycopg.pq.error_message"]], "free() (psycopg.pq.pgcancel method)": [[22, "psycopg.pq.PGcancel.free"]], "get_cancel() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.get_cancel"]], "libpq": [[22, "index-0"]], "needs_password (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.needs_password"]], "pgconn_ptr (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.pgconn_ptr"]], "pgresult_ptr (psycopg.pq.pgresult attribute)": [[22, "psycopg.pq.PGresult.pgresult_ptr"]], "psycopg.pq": [[22, "module-psycopg.pq"]], "set_trace_flags() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.set_trace_flags"]], "trace() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.trace"]], "untrace() (psycopg.pq.pgconn method)": [[22, "psycopg.pq.PGconn.untrace"]], "used_password (psycopg.pq.pgconn attribute)": [[22, "psycopg.pq.PGconn.used_password"]], "version() (in module psycopg.pq)": [[22, "psycopg.pq.version"]], "asyncrowfactory (class in psycopg.rows)": [[23, "psycopg.rows.AsyncRowFactory"]], "baserowfactory (class in psycopg.rows)": [[23, "psycopg.rows.BaseRowFactory"]], "rowfactory (class in psycopg.rows)": [[23, "psycopg.rows.RowFactory"]], "rowmaker (class in psycopg.rows)": [[23, "psycopg.rows.RowMaker"]], "__call__() (psycopg.rows.rowfactory method)": [[23, "psycopg.rows.RowFactory.__call__"]], "__call__() (psycopg.rows.rowmaker method)": [[23, "psycopg.rows.RowMaker.__call__"]], "args_row() (in module psycopg.rows)": [[23, "psycopg.rows.args_row"]], "class_row() (in module psycopg.rows)": [[23, "psycopg.rows.class_row"]], "dict_row() (in module psycopg.rows)": [[23, "psycopg.rows.dict_row"]], "kwargs_row() (in module psycopg.rows)": [[23, "psycopg.rows.kwargs_row"]], "namedtuple_row() (in module psycopg.rows)": [[23, "psycopg.rows.namedtuple_row"]], "psycopg.rows": [[23, "module-psycopg.rows"]], "scalar_row() (in module psycopg.rows)": [[23, "psycopg.rows.scalar_row"]], "tuple_row() (in module psycopg.rows)": [[23, "psycopg.rows.tuple_row"]], "binding": [[24, "index-0"]], "composable (class in psycopg.sql)": [[24, "psycopg.sql.Composable"]], "composed (class in psycopg.sql)": [[24, "psycopg.sql.Composed"]], "default (in module psycopg.sql)": [[24, "psycopg.sql.DEFAULT"]], "identifier (class in psycopg.sql)": [[24, "psycopg.sql.Identifier"]], "literal (class in psycopg.sql)": [[24, "psycopg.sql.Literal"]], "null (in module psycopg.sql)": [[24, "psycopg.sql.NULL"]], "placeholder (class in psycopg.sql)": [[24, "psycopg.sql.Placeholder"]], "sql (class in psycopg.sql)": [[24, "psycopg.sql.SQL"]], "as_bytes() (psycopg.sql.composable method)": [[24, "psycopg.sql.Composable.as_bytes"]], "as_string() (psycopg.sql.composable method)": [[24, "psycopg.sql.Composable.as_string"]], "format() (psycopg.sql.sql method)": [[24, "psycopg.sql.SQL.format"]], "join() (psycopg.sql.composed method)": [[24, "psycopg.sql.Composed.join"]], "join() (psycopg.sql.sql method)": [[24, "psycopg.sql.SQL.join"]], "psycopg.sql": [[24, "module-psycopg.sql"]], "quote() (in module psycopg.sql)": [[24, "psycopg.sql.quote"]], "json (class in psycopg.types.json)": [[25, "psycopg.types.json.Json"]], "jsonb (class in psycopg.types.json)": [[25, "psycopg.types.json.Jsonb"]], "typeinfo (class in psycopg.types)": [[25, "psycopg.types.TypeInfo"]], "typesregistry (class in psycopg.types)": [[25, "psycopg.types.TypesRegistry"]], "__getitem__() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.__getitem__"]], "fetch() (psycopg.types.typeinfo class method)": [[25, "psycopg.types.TypeInfo.fetch"]], "get() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get"]], "get_by_subtype() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get_by_subtype"]], "get_oid() (psycopg.types.typesregistry method)": [[25, "psycopg.types.TypesRegistry.get_oid"]], "psycopg.types": [[25, "module-psycopg.types"]], "register() (psycopg.types.typeinfo method)": [[25, "psycopg.types.TypeInfo.register"]], "set_json_dumps() (in module psycopg.types.json)": [[25, "psycopg.types.json.set_json_dumps"]], "set_json_loads() (in module psycopg.types.json)": [[25, "psycopg.types.json.set_json_loads"]], "adaptation": [[26, "index-0"], [26, "index-1"], [26, "index-2"], [26, "index-3"], [26, "index-4"], [32, "index-0"], [32, "index-1"], [32, "index-4"]], "binary string": [[26, "index-4"]], "boolean": [[26, "index-1"]], "data types": [[26, "index-0"], [32, "index-0"], [32, "index-1"], [32, "index-2"], [32, "index-3"], [32, "index-4"], [32, "index-5"]], "datestyle": [[26, "index-5"]], "decimal": [[26, "index-2"]], "encoding": [[26, "index-3"]], "enuminfo (class in psycopg.types.enum)": [[26, "psycopg.types.enum.EnumInfo"]], "float": [[26, "index-2"]], "integer": [[26, "index-2"]], "intervalstyle": [[26, "index-5"]], "objects": [[26, "index-0"], [32, "index-0"]], "sql_ascii": [[26, "index-3"]], "strings": [[26, "index-3"]], "unicode": [[26, "index-3"]], "bytea": [[26, "index-4"]], "bytearray": [[26, "index-4"]], "bytes": [[26, "index-4"]], "enum (psycopg.types.enum.enuminfo attribute)": [[26, "psycopg.types.enum.EnumInfo.enum"]], "labels (psycopg.types.enum.enuminfo attribute)": [[26, "psycopg.types.enum.EnumInfo.labels"]], "memoryview": [[26, "index-4"]], "numbers": [[26, "index-2"]], "register_enum() (in module psycopg.types.enum)": [[26, "psycopg.types.enum.register_enum"]], "copy": [[27, "index-0"]], "differences": [[28, "index-0"]], "psycopg2": [[28, "index-0"]], "path": [[30, "index-0"]], "binary": [[31, "index-2"]], "parameters": [[31, "index-0"], [31, "index-2"]], "query": [[31, "index-0"]], "sql injection": [[31, "index-1"]], "security": [[31, "index-1"]], "composite types": [[32, "index-1"]], "compositeinfo (class in psycopg.types.composite)": [[32, "psycopg.types.composite.CompositeInfo"]], "multirange (class in psycopg.types.multirange)": [[32, "psycopg.types.multirange.Multirange"]], "multirangeinfo (class in psycopg.types.multirange)": [[32, "psycopg.types.multirange.MultirangeInfo"]], "postgis": [[32, "index-5"]], "range (class in psycopg.types.range)": [[32, "psycopg.types.range.Range"]], "rangeinfo (class in psycopg.types.range)": [[32, "psycopg.types.range.RangeInfo"]], "dict": [[32, "index-4"]], "geometry": [[32, "index-5"]], "hstore": [[32, "index-4"]], "isempty (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.isempty"]], "lower (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower"]], "lower_inc (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower_inc"]], "lower_inf (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.lower_inf"]], "namedtuple": [[32, "index-1"]], "psycopg.types.shapely.register_shapely() (in module psycopg)": [[32, "psycopg.psycopg.types.shapely.register_shapely"]], "python_type (psycopg.types.composite.compositeinfo attribute)": [[32, "psycopg.types.composite.CompositeInfo.python_type"]], "range": [[32, "index-2"], [32, "index-3"]], "register_composite() (in module psycopg.types.composite)": [[32, "psycopg.types.composite.register_composite"]], "register_hstore() (in module psycopg.types.hstore)": [[32, "psycopg.types.hstore.register_hstore"]], "register_multirange() (in module psycopg.types.multirange)": [[32, "psycopg.types.multirange.register_multirange"]], "register_range() (in module psycopg.types.range)": [[32, "psycopg.types.range.register_range"]], "tuple": [[32, "index-1"]], "upper (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper"]], "upper_inc (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper_inc"]], "upper_inf (psycopg.types.range.range attribute)": [[32, "psycopg.types.range.Range.upper_inf"]], "infailedsqltransaction": [[33, "index-1"]], "transaction": [[33, "index-3"]], "transactions management": [[33, "index-0"]], "two-phase commit": [[33, "index-3"]], "idle in transaction": [[33, "index-2"]], "example": [[34, "index-0"]], "usage": [[34, "index-0"]], "`!with`": [[34, "index-1"]], "news": [[36, "index-0"], [37, "index-0"]], "pep 475": [[36, "index-2"]], "pgconnect_timeout": [[36, "index-1"]], "release notes": [[36, "index-0"], [37, "index-0"]]}}) \ No newline at end of file