syntactically correct query gives ERROR: failed to assign all NestLoopParams to plan nodes

Stephan Springl <springl-psql@bfw-online.de>

From: Stephan Springl <springl-psql@bfw-online.de>
To: pgsql-bugs@lists.postgresql.org
Date: 2021-01-15T19:54:10Z
Lists: pgsql-bugs

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Avoid spurious wait in concurrent reindex

Attachments

Hi,

running
   psql -f NestLoopParams.sql
gives
   psql:NestLoopParams.sql:16: ERROR:  failed to assign all NestLoopParams to plan nodes
   psql:NestLoopParams.sql:24: ERROR:  failed to assign all NestLoopParams to plan nodes

and does not process the seemingly correct query

select u.zielnummer, gnummer.v
   from u
     left join b on b.btext ~ '^verr\. R(\d+)$'
     left join lateral (select regexp_replace (b.btext, 'verr\. R', '')::int v)
       as gnummer on true
     left join lateral (select * from r where buchnummer = gnummer.v)
       as r on true;

No results are given, not even row count or headers, just the error 
message given above.

Everything needed to reproduce is in the file NestLoopParams.sql. The 
tables do not need to be populated with data.  The problem was verified 
with Postgresql version 13.1 on a fresh debian sid x86_64 installation as 
well as a 13.1 compiled under 32 bit i386 (Debian/Linux).  Master from the 
posgresql git repository (as of today's commit 
f9900df5f94936067e6fa24a9df609863eb08da2) shows the same behaviour if 
compiled under 32 bit i386 Debian/Linux.

I will be happy to provide more information if needed or helpful.

Thank you for your work on such an extraordinary piece of software.

Regards
Stephan