| From: | Magnus Hagander <magnus(at)hagander(dot)net> |
|---|---|
| To: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Scanning pg_tablespace from walsender |
| Date: | 2011-01-03 15:25:28 |
| Message-ID: | AANLkTikZEXf_YJ0xXaz-00H0CwwPNpJ6tzb5=puoMzu_@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
I'm working on completing Heikki's patch for streaming base backups,
and have run into a problem:
In order to dump all tablespaces properly, I have to know where they
are (d'uh). In order to do that, I need to scan pg_tablespace.
However, scanning that from walsender gives me:
FATAL: cannot read pg_class without having selected a database
Which means I somehow have to get pg_tablespace into the cache without
reading pg_class, I guess. Similar to how we do for pg_database for
example.
Can someone throw me a pointer or two on how to actually do that? :-)
Am I correct in assuming I need to add it to
RelationCacheInitializePhase2(), and to do that, need to figure out
how to define a TableSpaceRelation_Rowtype_Id in the headers? Or is
there an easier way I'm missing?
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2011-01-03 15:29:36 | Re: Scanning pg_tablespace from walsender |
| Previous Message | Robert Haas | 2011-01-03 15:21:44 | Re: and it's not a bunny rabbit, either |