Columns</title>
<tgroup cols="1">
<thead>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
Column Type
</para>
<para>
Description
</para></entry>
</row>
</thead>
<tbody>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>pid</structfield> <type>int4</type>
</para>
<para>
Process ID of the server process that is issuing this I/O.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>io_id</structfield> <type>int4</type>
</para>
<para>
Identifier of the I/O handle. Handles are reused once the I/O
completed (or if the handle is released before I/O is started). On reuse
<link linkend="view-pg-aios-io-generation">
<structname>pg_aios</structname>.<structfield>io_generation</structfield>
</link>
is incremented.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry" id="view-pg-aios-io-generation"><para role="column_definition">
<structfield>io_generation</structfield> <type>int8</type>
</para>
<para>
Generation of the I/O handle.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>state</structfield> <type>text</type>
</para>
<para>
State of the I/O handle:
<itemizedlist>
<listitem>
<para>
<literal>HANDED_OUT</literal>, referenced by code but not yet used
</para>
</listitem>
<listitem>
<para>
<literal>DEFINED</literal>, information necessary for execution is known
</para>
</listitem>
<listitem>
<para>
<literal>STAGED</literal>, ready for execution
</para>
</listitem>
<listitem>
<para>
<literal>SUBMITTED</literal>, submitted for execution
</para>
</listitem>
<listitem>
<para>
<literal>COMPLETED_IO</literal>, finished, but result has not yet been processed
</para>
</listitem>
<listitem>
<para>
<literal>COMPLETED_SHARED</literal>, shared completion processing completed
</para>
</listitem>
<listitem>
<para>
<literal>COMPLETED_LOCAL</literal>, backend local completion processing completed
</para>
</listitem>
</itemizedlist>
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>operation</structfield> <type>text</type>
</para>
<para>
Operation performed using the I/O handle:
<itemizedlist>
<listitem>
<para>
<literal>invalid</literal>, not yet known
</para>
</listitem>
<listitem>
<para>
<literal>readv</literal>, a vectored read
</para>
</listitem>
<listitem>
<para>
<literal>writev</literal>, a vectored write
</para>
</listitem>
</itemizedlist>
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>off</structfield> <type>int8</type>
</para>
<para>
Offset of the I/O operation.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>length</structfield> <type>int8</type>
</para>
<para>
Length of the I/O operation.
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>target</structfield> <type>text</type>
</para>
<para>
What kind of