RE: User defined data types in Logical Replication

From: Huong Dangminh <huo-dangminh(at)ys(dot)jp(dot)nec(dot)com>
To: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Hiroshi Yanagisawa <hir-yanagisawa(at)ut(dot)jp(dot)nec(dot)com>
Subject: RE: User defined data types in Logical Replication
Date: 2017-11-15 10:55:39
Message-ID: 75DB81BEEA95B445AE6D576A0A5C9E936A6C3A8F@BPXM05GP.gisp.nec.co.jp
Views: Raw Message | Whole Thread | Download mbox
Thread:
Lists: pgsql-hackers

Hi,

> We are getting the bellow error while trying use Logical Replication with
> user defined data types in a C program (when call elog function).
>
> ERROR: XX000: cache lookup failed for type XXXXX
>

Sorry for continuously disturbing in this topic, but am I missing something here?

I mean that in case of type's OID in PUBLICATION host does not exists in SUBSCRIPTION host's pg_type,
it could returns unintended error (the XX000 above) when elog or ereport is executed.

For more details, it happen in slot_store_error_callback when it try to call format_type_be(localtypoid) for errcontext.
slot_store_error_callback is set in slot_store_cstrings, slot_modify_cstrings function and it also be unset here, so the effect here is small but it happens.

---
Thanks and best regards,
Dang Minh Huong
NEC Solution Innovators, Ltd.
http://www.nec-solutioninnovators.co.jp/en/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Anthony Bykov 2017-11-15 11:08:23 Re: Rewriting PL/Python's typeio code
Previous Message Thomas Munro 2017-11-15 10:46:43 could not receive data from WAL stream: SSL SYSCALL error: Success