diff options
Diffstat (limited to 'doc/src/sgml/indexam.sgml')
-rw-r--r-- | doc/src/sgml/indexam.sgml | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/doc/src/sgml/indexam.sgml b/doc/src/sgml/indexam.sgml index 724b413755d..80f55da87b3 100644 --- a/doc/src/sgml/indexam.sgml +++ b/doc/src/sgml/indexam.sgml @@ -394,12 +394,13 @@ amgettuple (IndexScanDesc scan, If the access method supports index-only scans (i.e., <structfield>amcanreturn</structfield> is TRUE in its <structname>pg_am</> row), then on success it must also check - <literal>scan->xs_want_itup</>, and if that is true it should return + <literal>scan->xs_want_itup</>, and if that is true it must return the original indexed data for the index entry, in the form of an - <structname>IndexTuple</> stored at <literal>scan->xs_itup</>. However, - it is permissible for the access method to sometimes fail to provide this - data, in which case it must set <literal>scan->xs_itup</> to NULL. That - will result in a regular heap fetch occurring. + <structname>IndexTuple</> pointer stored at <literal>scan->xs_itup</>. + (Management of the data referenced by the pointer is the access method's + responsibility. The data must remain good at least until the next + <function>amgettuple</>, <function>amrescan</>, or <function>amendscan</> + call for the scan.) </para> <para> |