On Thu, 2004-05-27 at 07:59, Gavin Sherry wrote:
> Attached is my latest patch implementing tablespaces. This has all the
> functionality I was planning for 7.5.
>
> Most of the information about the patch is contained in the
> patch/documentation, previous submissions and the archives.
>
> Testing, review, comments would be greatly appreciated.
>
I've reviewed your patch by eye, but can't see anything in your patch
about relocating the pg_xlog directory.
There was/is a TODO item:
- Allow xlog directory location to be specified during initdb, perhaps
using symlinks
Is that something you've addressed in your patch?
If not, is that something that would be easily do-able (before freeze)?
AFAICS, pg_xlog could be treated as the name of a tablespace, rather
than as a fixed directory beneath PGDATA.
pg_xlog is only referred to in 4 lines in the code (incl. PITR patch):
- xlog.c
- pgarch.c (PITR patch)
- initdb.c
- pgresetxlog.c
Each time it is simply setting a string to the location of the xlog
directory.
If we could work out a way of...
i) letting the pg_xlog be created by default
ii) then transferring this to another tablespace later?
That would give us maximum flexibility, since you may wish to change
location later when workload changes/increases.
Perhaps adding a GUC...for wal_tablespace (pls suggest name!)
defaults to the pg_xlog directory, when not listed?
Changeable only at postmaster startup...
This could be done independently of tablespaces, but I think any
directory flexibility/change should work using the tablespace
infrastructure, not in addition to it.
Could we discuss this? it sounds like a change we could make happen
fairly quickly now your code is in place.
Of course, I accept that many may say that such a change is not really
needed, but then...
Best regards, Simon Riggs