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

Aleksander Alekseev <aleksander@tigerdata.com>

From: Aleksander Alekseev <aleksander@tigerdata.com>
To: pgsql-hackers@lists.postgresql.org
Cc: Maxime Schoemans <maxime.schoemans@enterprisedb.com>, Mark Dilger <mark.dilger@enterprisedb.com>
Date: 2025-09-19T08:20:52Z
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()

Hi Maxime,

> > 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.

Yes, this is how we typically test cases like this. IMO adding a test
module would be helpful. It can be reused for other scenarios.

-- 
Best regards,
Aleksander Alekseev