Обсуждение: pgsql: Create new routines systable_beginscan_ordered,
Log Message: ----------- Create new routines systable_beginscan_ordered, systable_getnext_ordered, systable_endscan_ordered that have API similar to systable_beginscan etc (in particular, the passed-in scankeys have heap not index attnums), but guarantee ordered output, unlike the existing functions. For the moment these are just very thin wrappers around index_beginscan/index_getnext/etc. Someday they might need to get smarter; but for now this is just a code refactoring exercise to reduce the number of direct callers of index_getnext, in preparation for changing that function's API. In passing, remove index_getnext_indexitem, which has been dead code for quite some time, and will have even less use than that in the presence of run-time-lossy indexes. Modified Files: -------------- pgsql/src/backend/access/heap: tuptoaster.c (r1.85 -> r1.86) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/tuptoaster.c?r1=1.85&r2=1.86) pgsql/src/backend/access/index: genam.c (r1.66 -> r1.67) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/index/genam.c?r1=1.66&r2=1.67) indexam.c (r1.105 -> r1.106) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/index/indexam.c?r1=1.105&r2=1.106) pgsql/src/backend/catalog: catalog.c (r1.74 -> r1.75) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/catalog.c?r1=1.74&r2=1.75) pgsql/src/backend/storage/large_object: inv_api.c (r1.131 -> r1.132) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/large_object/inv_api.c?r1=1.131&r2=1.132) pgsql/src/backend/utils/cache: ts_cache.c (r1.6 -> r1.7) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/ts_cache.c?r1=1.6&r2=1.7) pgsql/src/include/access: genam.h (r1.70 -> r1.71) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/access/genam.h?r1=1.70&r2=1.71) relscan.h (r1.62 -> r1.63) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/access/relscan.h?r1=1.62&r2=1.63) pgsql/src/include/catalog: catalog.h (r1.38 -> r1.39) (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catalog.h?r1=1.38&r2=1.39)