Re: [PATCH] Check that index can return in get_actual_variable_range()

Maxime Schoemans <maxime.schoemans@enterprisedb.com>

From: Maxime Schoemans <maxime.schoemans@enterprisedb.com>
To: Aleksander Alekseev <aleksander@tigerdata.com>
Cc: pgsql-hackers@lists.postgresql.org, Mark Dilger <mark.dilger@enterprisedb.com>
Date: 2025-09-18T14:51:39Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Check that index can return in get_actual_variable_range()

  2. Fix crash/valgrind error

  3. Support non-btree indexes in get_actual_variable_range()

On 18 Sep 2025, at 14:31, Aleksander Alekseev <aleksander@tigerdata.com> wrote:
> Can you think of any test cases we can add to the code base?

The only idea I have would be adding a new index module in src/test/modules that has this particular property and have a test that will hit get_actual_variable_range().
For example, it could be a new access method that is a copy of btree, but whose amcanreturn property is null and that specifically sets scan->xs_itup to null in amgettuple.

Without the patch, such a test would fail with 'ERROR: no data returned for index-only scan’, while with the patch it would pass.

Best,
Maxime Schoemans