Max# of tablespaces

2021-01-03 Thread Thomas Flatley
Hello, I've checked the docs but cant seem to find if there is a max # of 
tablespaces allowed - I've come across a 9.5 env with 1600 tablespaces - they 
want to double that - Oracle's max is 64k, I'm not particularly worried about 
hitting a wall, if there is one , outside of maintenance issues - any 
assistance would be greatly appreciated.
thanks


RE: Max# of tablespaces

2021-01-03 Thread Thomas Flatley
Excellent - thanks for the fast response - it was an oracle dba that set it up 
initially so that may explain it - 

Thanks very much

-Original Message-
From: Tom Lane  
Sent: Sunday, January 3, 2021 12:27 PM
To: Thomas Flatley 
Cc: pgsql-general@lists.postgresql.org
Subject: Re: Max# of tablespaces

Thomas Flatley  writes:
> Hello, I've checked the docs but cant seem to find if there is a max # of 
> tablespaces allowed - I've come across a 9.5 env with 1600 tablespaces - they 
> want to double that - Oracle's max is 64k, I'm not particularly worried about 
> hitting a wall, if there is one , outside of maintenance issues - any 
> assistance would be greatly appreciated.

There's no particular hard limit, though you might start to run into 
OID-starvation problems at a billion or so tablespaces.

On the other hand, it's important to realize that a Postgres tablespace doesn't 
really *do* anything.  It's just a separate subdirectory.
The only functional reason to use a tablespace is if you can place it on a 
separate filesystem.  There is certainly value in being able to do that --- but 
I've never heard of systems having more than a few dozen filesystems mounted.  
Hence, the above issue sounds suspiciously like somebody is expecting Postgres 
tablespaces to do something they don't do.

(I suppose if you are working on a system that has limits on the number of 
files per directory, or performance problems with large values of that, then 
you could use tablespaces as a workaround.
But TBH you'd be better off moving onto a more modern platform.)

regards, tom lane




RE: Max# of tablespaces

2021-01-05 Thread Thomas Flatley
I don’t, but I didn’t set up the env

As far as I can tell, each tablespace is a partition, and I assume they felt 
this was the best way to perform partition maintenance - again, I don’t know , 

-Original Message-
From: Andreas Kretschmer  
Sent: Sunday, January 3, 2021 11:52 AM
To: pgsql-general@lists.postgresql.org; Thomas Flatley ; 
pgsql-general@lists.postgresql.org
Subject: Re: Max# of tablespaces

On 3 January 2021 13:59:31 CET, Thomas Flatley  wrote:
>Hello, I've checked the docs but cant seem to find if there is a max # 
>of tablespaces allowed - I've come across a 9.5 env with 1600 
>tablespaces - they want to double that

why on earth do you think you will need so many tablespaces? They have an other 
meaning than in oracle.


--
2ndQuadrant - The PostgreSQL Support Company


RE: Max# of tablespaces

2021-01-05 Thread Thomas Flatley
I agree - it requires a re-think/re-build

As for oracle, quite easy to add tablepaces in flight, assuming you don’t hit 
max db_files

I was more curious if there was an actual defined limit - oracle stops at 64K , 
and their old application release would have 2tbsp per module, and at 400 or so 
that’s a hassle



-Original Message-
From: Christophe Pettus  
Sent: Tuesday, January 5, 2021 5:02 PM
To: Thomas Flatley 
Cc: Andreas Kretschmer ; 
pgsql-general@lists.postgresql.org
Subject: Re: Max# of tablespaces



> On Jan 5, 2021, at 13:55, Thomas Flatley  wrote:
> 
> As far as I can tell, each tablespace is a partition, and I assume they felt 
> this was the best way to perform partition maintenance - again, I don’t know 
> , 

It's a very common Oracle-ism to have a lot of tablespaces, in part because 
(IIRC) Oracle makes it an incredible pain in the neck to add tablespaces once 
the DB is in use.  For sharding purposes, you probably want schemas in 
PostgreSQL instead of tablespaces, although having that many schemas is going 
to not be optimal, either.

--
-- Christophe Pettus
   x...@thebuild.com