Re: 001_password.pl fails with --without-readline

From: Oleg Tselebrovskiy <o(dot)tselebrovskiy(at)postgrespro(dot)ru>
To: Soumya S Murali <soumyamurali(dot)work(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: 001_password.pl fails with --without-readline
Date: 2026-01-14 10:11:11
Message-ID: c19ac5e530c27b69ded0c8efcc581772@postgrespro.ru
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

The easiest way to fix 030_pager.pl is to just replace ' ' with '*'
in regex. With readline, everything that we look for is placed on
its own line so we don't break anything, but --without-readline
produces the following output (with some hand-written debug info):

IPC::Run 0000 [#2(438962)]: ** pumping
IPC::Run 0000 [#2(438962)]: read( 11 ) = 4 chars '39
IPC::Run 0000 [#2(438962)]: '

stream:postgres=# \pset expanded
SELECT generate_series(1,20) as g;
Expanded display is on.
postgres=# 39

So the output that is turned on with IPCRUNDEBUG=data shows us "we got
only 4 chars, '39\n\0'!", but in reality we have more stuff in stream,
so pump_until() function doesn't match with passed regex

Patch is attached

Regards,
Oleg

Attachment Content-Type Size
v2-0002-030-pager-fix.patch text/x-diff 804 bytes

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Soumya S Murali 2026-01-14 10:11:36 Re: [PATCH] Expose checkpoint reason to completion log messages.
Previous Message Jim Jones 2026-01-14 10:09:59 Re: WIP - xmlvalidate implementation from TODO list