Tom Lane wrote:
Definitely a necessary fix, but you missed what I think is actually
causing the crashes:

                if (PointerIsValid(DatumGetPointer(datum)))
!                       repl_val[Anum_pg_foreign_data_wrapper_fdwoptions - 1] = 
ObjectIdGetDatum(datum);

should be

                if (PointerIsValid(DatumGetPointer(datum)))
!                       repl_val[Anum_pg_foreign_data_wrapper_fdwoptions - 1] = 
datum;

ObjectIdGetDatum probably is zeroing the high-order half of the pointer
datum.

Doh, how could I miss that, on the very next line :-)

I committed this along with some other cosmetic fixes.

Thanks.

--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to