Re: Row pattern recognition
Henson Choi <assam258@gmail.com>
From: Henson Choi <assam258@gmail.com>
To: Tatsuo Ishii <ishii@postgresql.org>
Cc: david.g.johnston@gmail.com, vik@postgresfriends.org, jacob.champion@enterprisedb.com, er@xs4all.nl, peter@eisentraut.org, pgsql-hackers@postgresql.org
Date: 2026-01-04T15:47:58Z
Lists: pgsql-hackers
Attachments
- matcher_standalone.html (text/html)
Hi Ishii-san, I've been working on an NFA implementation prototype. This is a very early prototype - still buggy and incomplete, but shows the basic approach. Attached HTML file - open in browser (runs locally, no server needed). I used JavaScript for quick prototyping and visualization. The actual PostgreSQL implementation would be in C, but the algorithm logic remains the same. To test: 1. Use default pattern 2. Enter variables sequentially: A, B, C, D, E, F, G, H, I 3. Try different patterns and options in the UI Implemented: - Patterns: *, +, ?, (A|B), (A B)+ - Reluctant quantifiers: A+?, A*? (switches to reluctant mode) Note: This part probably has issues - Execution trace with state visualization - Context management: multiple matches, absorption - Options: SKIP modes, output modes Many rough edges, especially reluctant matching. Just sharing the direction. My responses may be slow due to company work during weekdays. Best regards, Henson
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Adjust cross-version upgrade tests for seg_out() fix
- 3e3d7875e956 19 (unreleased) cited
-
Rationalize error comments in partition split/merge tests
- ecb2508aaf9b 19 (unreleased) cited
-
Add fast path for foreign key constraint checks
- 2da86c1ef9b5 19 (unreleased) cited
-
Fix assorted pretty-trivial memory leaks in the backend.
- e78d1d6d47dc 19 (unreleased) cited
-
Add temporal FOREIGN KEY contraints
- 89f908a6d0ac 18.0 cited
-
Add trailing commas to enum definitions
- 611806cd726f 17.0 cited
-
Remove obsolete executor cleanup code
- d060e921ea5a 17.0 cited