On Sun, Dec 11, 2016 at 12:10 AM, Andres Freund <andres@xxxxxxxxxxx> wrote:
On 2016-12-10 22:34:02 +0100, Torsten Förtsch wrote:
> I am working on a logical decoding output plugin. I am only interested in
> the changes in one particular table.
>
> One way to check for the table would be to compare class_form->relname
> and get_namespace_name(class_form->relnamespace). But I'd much prefer to You shouldn't do it in the startup callback (no catalog access there),
> just compare the OID of the table.
>
> Is there a cheap way to do something like "SELECT
> 'schema.table'::regclass::oid" that can be called in the startup callback?
but you can do it the first time through the change callback.
For lookups the most complete lookup is to use RangeVarGetRelid() to get
the oid. There's other variants, but that's the easiest approach.
Do you have to care about the table being renamed?
Thanks, Andres. That would be nice to have but not really necessary, at least not at the beginning. Is it possible to catch CREATE TABLE and ALTER TABLE RENAME in 9.5?
Thanks,
Torsten