At Tue, 29 Mar 2022 17:06:21 +0900 (JST), Kyotaro Horiguchi <horikyota.ntt@gmail.com> wrote in
> At Mon, 28 Mar 2022 18:36:46 +0900 (JST), Kyotaro Horiguchi <horikyota.ntt@gmail.com> wrote in
> Then, I found that portal->holdSnapshot is that. I came up with the
> attached. It does the follows:
>
> 1. Teach PlannedStmtRequiresSnapshot() to return true for FetchStmt.
>
> 2. Use holdSnapshot in RunFromStore if any.
>
>
> The rerpducer is reduced to as small as the following.
>
> CREATE TABLE t (a text);
> INSERT INTO t VALUES('some random text');
> BEGIN;
> DECLARE c CURSOR FOR SELECT * FROM t;
> FETCH ALL IN c;
>
> But I haven't come up with a reasonable way to generate the 'some
> random text' yet.
I gave up and took a straightforward way to generate one.
I don't like that it uses a fixed length for the random text, but
anyway it works for now...
regards.
--
Kyotaro Horiguchi
NTT Open Source Software Center