filtered to only show user and system indexes respectively.
</para>
<table id="pg-stat-all-indexes-view" xreflabel="pg_stat_all_indexes">
<title><structname>pg_stat_all_indexes</structname> View</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>relid</structfield> <type>oid</type>
</para>
<para>
OID of the table for this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>indexrelid</structfield> <type>oid</type>
</para>
<para>
OID of this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>schemaname</structfield> <type>name</type>
</para>
<para>
Name of the schema this index is in
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>relname</structfield> <type>name</type>
</para>
<para>
Name of the table for this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>indexrelname</structfield> <type>name</type>
</para>
<para>
Name of this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>idx_scan</structfield> <type>bigint</type>
</para>
<para>
Number of index scans initiated on this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>last_idx_scan</structfield> <type>timestamp with time zone</type>
</para>
<para>
The time of the last scan on this index, based on the
most recent transaction stop time
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>idx_tup_read</structfield> <type>bigint</type>
</para>
<para>
Number of index entries returned by scans on this index
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>idx_tup_fetch</structfield> <type>bigint</type>
</para>
<para>
Number of live table rows fetched by simple index scans using this
index
</para></entry>
</row>
</tbody>
</tgroup>
</table>
<para>
Indexes can be used by simple index scans, <quote>bitmap</quote> index scans,
and the optimizer. In a bitmap scan
the output of several indexes can be combined via AND or OR rules,
so it is difficult to associate individual heap row fetches
with specific indexes when a bitmap scan is used. Therefore, a bitmap
scan increments the
<structname>pg_stat_all_indexes</structname>.<structfield>idx_tup_read</structfield>
count(s) for the index(es) it uses, and it increments the
<structname>pg_stat_all_tables</structname>.<structfield>idx_tup_fetch</structfield>
count for the table, but it does not affect
<structname>pg_stat_all_indexes</structname>.<structfield>idx_tup_fetch</structfield>.
The optimizer also accesses indexes to check for supplied constants
whose values are outside the recorded range of the optimizer statistics
because the optimizer statistics might be stale.
</para>
<note>
<para>
The <structfield>idx_tup_read</structfield> and <structfield>idx_tup_fetch</structfield> counts
can be different even without any use of bitmap scans,
because <structfield>idx_tup_read</structfield>