From: | M Tarkeshwar Rao <m(dot)tarkeshwar(dot)rao(at)ericsson(dot)com> |
---|---|
To: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | After upgrading libpq, the same function(PQftype) call returns a different OID |
Date: | 2025-03-15 18:53:08 |
Message-ID: | PAWPR07MB1009569596278D85AC691BBF4AEDD2@PAWPR07MB10095.eurprd07.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi all,
We are using PostgreSQL libpq in our application. The code worked fine for the past four years, but after upgrading the library, the function PQftype is returning unexpected values for some columns.
Specifically, the issue occurs with a column of type timestamp(3) without time zone.
What could be causing this change, and how can we resolve it?"
Postgres Version(upgraded from 11.18 to 13.20)
Example:
Before the libpq Upgrade (Expected Behavior)
Let's say your PostgreSQL database has a table:
CREATE TABLE example (
id SERIAL PRIMARY KEY,
filetime TIMESTAMP(3) WITHOUT TIME ZONE
);
In the old version of libpq, calling PQftype on the filetime column returns:
Oid filetime_oid = PQftype(res, 1); // Assuming 'filetime' is at index 1
printf("Filetime column OID: %u\n", filetime_oid);
Expected output (before upgrade):
Filetime column OID: 1114
After the libpq Upgrade (Unexpected Behavior)
After upgrading libpq, the same function call returns a different OID, such as 123456.
What could be the reason?
Regards
Tarkeshwar
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2025-03-15 19:02:08 | Re: After upgrading libpq, the same function(PQftype) call returns a different OID |
Previous Message | Tom Lane | 2025-03-15 18:09:37 | Re: The logic behind comparing generic vs. custom plan costs |