From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Japin Li <japinli(at)hotmail(dot)com> |
Cc: | Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com>, onderkalaci(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org |
Subject: | Re: BUG #18467: postgres_fdw (deparser) ignores LimitOption |
Date: | 2024-05-16 16:47:21 |
Message-ID: | 202405161647.dj7lw4asvfpu@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 2024-May-17, Japin Li wrote:
> After some dig in, I find transformLimitClause() has the following comments:
>
> * Note: as of Postgres 8.2, LIMIT expressions are expected to yield int8,
> * rather than int4 as before.
>
> So the deparseConst() append '::bigint' typecast, same as get_rule_expr().
Hmm, probably the answer is not to use deparseExpr in
appendLimitClause() then. I mean, AFAICS this is a postgres_fdw
problem, not a core parser problem.
Not sure if this is workable, but maybe test if the value is a constant,
and use FETCH FIRST if so, otherwise fall back to using LIMIT. (It's
not clear if this would handle FETCH FIRST +123123123123 ROWS WITH TIES
correctly though -- worth checking).
Oh, I see we never got back to adding FETCH FIRST / PERCENT. We had a
patch seemingly almost ready for that ...
--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Geoghegan | 2024-05-16 16:49:00 | Re: relfrozenxid may disagree with row XIDs after 1ccc1e05ae |
Previous Message | Andres Freund | 2024-05-16 16:38:10 | Re: relfrozenxid may disagree with row XIDs after 1ccc1e05ae |