On 17.01.25 16:40, Peter Eisentraut wrote:
Here are some more patches. This should cover the last sub-topic of
this topic: not passing the yyparse() result via global variables. This
uses techniques that are already in use in some parsers in the tree, for
example cube and jsonpath. The syncrep parser was a bit trickier,
because there we need to pass the syncrep_parse_error variable all the
way down to the scanner (not just the parser), but overall it's all
still pretty compact and standard.
This has been committed.
I think this concludes this topic.
For those who haven't seen it, I wrote a blog post about this:
https://peter.eisentraut.org/blog/2025/01/21/implementing-thread-safe-scanners-and-parsers-in-postgresql