Re: Row pattern recognition

Tatsuo Ishii <ishii@postgresql.org>

From: Tatsuo Ishii <ishii@postgresql.org>
To: assam258@gmail.com
Cc: vik@postgresfriends.org, er@xs4all.nl, jacob.champion@enterprisedb.com, david.g.johnston@gmail.com, peter@eisentraut.org, pgsql-hackers@postgresql.org
Date: 2026-02-16T23:20:20Z
Lists: pgsql-hackers
Hi Henson,

> Hi Tatsuo,
> 
> Thanks for rebasing to v43!
> 
> I noticed the Cirrus CI 32-bit build (test_world_32) failed on three
> tests, all due to the same root cause in rpr_explain.out:
> 
>   Sort Method: quicksort  Memory: 27kB  (expected, 64-bit)
>   Sort Method: quicksort  Memory: 22kB  (actual, 32-bit)

I noticed that too.

> The rpr_explain_filter() function was already normalizing the RPR
> Storage memory values, but missed the Sort node's "Memory: NNkB"
> which also varies between 32-bit and 64-bit due to pointer/struct
> size differences.
> 
> The attached incremental patch adds Sort Method memory normalization
> to rpr_explain_filter(), using the same approach as the existing
> Storage and Maximum Storage filters.

Looks good fix to me. Is that Ok for you to not release v44 patch
immediately?  Our patch set is very large and I hesitate to post a new
patch set too offten.

>> The node serialization functions (141 lines, 0% coverage) are the
>> > largest untested area.  I'm not sure how to trigger these paths
>> > in the regression test framework.  Any suggestions?
>>
>> I think we can leave it as it is, until reluctant quantifier is
>> implemented.
>>
> 
> Agreed.

Thanks for agreeing on this.

Best regards,
--
Tatsuo Ishii
SRA OSS K.K.
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Adjust cross-version upgrade tests for seg_out() fix

  2. Rationalize error comments in partition split/merge tests

  3. Add fast path for foreign key constraint checks

  4. Fix assorted pretty-trivial memory leaks in the backend.

  5. Add temporal FOREIGN KEY contraints

  6. Add trailing commas to enum definitions

  7. Remove obsolete executor cleanup code