Thread: share info between backends
Hi, i'm trying to share some info between backends but i cannot figure how to do it... i was reading bgwriter.c and autovacuum.c hoping there is something that can show me the way to go... can you, please, guide me on this? -- regards, Jaime Casanova "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs and the universe trying to produce bigger and better idiots. So far, the universe is winning." Richard Cook
On Thu, Jan 11, 2007 at 12:58:01AM -0500, Jaime Casanova wrote: > Hi, > > i'm trying to share some info between backends but i cannot figure how > to do it... > i was reading bgwriter.c and autovacuum.c hoping there is something > that can show me the way to go... Well, there's a shared memory block, but getting access to it is not easy. Using a table may to easier, but you'll need to provide more details if you want more help. Have a ncie day, -- Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/ > From each according to his ability. To each according to his ability to litigate.
On 1/11/07, Martijn van Oosterhout <kleptog@svana.org> wrote: > On Thu, Jan 11, 2007 at 12:58:01AM -0500, Jaime Casanova wrote: > > Hi, > > > > i'm trying to share some info between backends but i cannot figure how > > to do it... > > i was reading bgwriter.c and autovacuum.c hoping there is something > > that can show me the way to go... > > Well, there's a shared memory block, but getting access to it is not > easy. Using a table may to easier, but you'll need to provide more > details if you want more help. > i'm trying to fix a problem related to the patch Albert sent in october (Tablespace for temporary objects and sort files) http://archives.postgresql.org/pgsql-patches/2006-10/msg00141.php http://archives.postgresql.org/pgsql-patches/2007-01/msg00063.php after reviewing this i notice this will not use different tablespaces in the case of having various connections all with just one temp table: http://archives.postgresql.org/pgsql-patches/2007-01/msg00188.php what i'm trying to do it is share what's the next_temp_tablespace to use... the other way to do this is as you say using tables, but i don't think this is a good idea in this case... comments? -- regards, Jaime Casanova "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs and the universe trying to produce bigger and better idiots. So far, the universe is winning." Richard Cook
Jaime Casanova wrote: > > i'm trying to fix a problem related to the patch Albert sent in > october (Tablespace for temporary objects and sort files) > http://archives.postgresql.org/pgsql-patches/2006-10/msg00141.php > http://archives.postgresql.org/pgsql-patches/2007-01/msg00063.php > > after reviewing this i notice this will not use different tablespaces > in the case of having various connections all with just one temp > table: > http://archives.postgresql.org/pgsql-patches/2007-01/msg00188.php > > what i'm trying to do it is share what's the next_temp_tablespace to > use... > the other way to do this is as you say using tables, but i don't think > this is a good idea in this case... > > comments? > Why not make it probabilistic by using, say, MyProcPid % n where n is the number of tablespaces? Then you don't need anything shared. cheers andrew
On 1/11/07, Andrew Dunstan <andrew@dunslane.net> wrote: > Jaime Casanova wrote: > > > > i'm trying to fix a problem related to the patch Albert sent in > > october (Tablespace for temporary objects and sort files) > > http://archives.postgresql.org/pgsql-patches/2006-10/msg00141.php > > http://archives.postgresql.org/pgsql-patches/2007-01/msg00063.php > > > > after reviewing this i notice this will not use different tablespaces > > in the case of having various connections all with just one temp > > table: > > http://archives.postgresql.org/pgsql-patches/2007-01/msg00188.php > > > > what i'm trying to do it is share what's the next_temp_tablespace to > > use... > > the other way to do this is as you say using tables, but i don't think > > this is a good idea in this case... > > > > comments? > > > > Why not make it probabilistic by using, say, MyProcPid % n where n is the > number of tablespaces? Then you don't need anything shared. > mmm... is not great to try to kill flies with tanks? ;) thanks for the idea, i will try it -- regards, Jaime Casanova "Programming today is a race between software engineers striving to build bigger and better idiot-proof programs and the universe trying to produce bigger and better idiots. So far, the universe is winning." Richard Cook
> > > comments? > > > > Why not make it probabilistic by using, say, MyProcPid % n where n is the > > number of tablespaces? Then you don't need anything shared. You still want a (local) counter, so that temp files for one session are spread out. Andreas
Zeugswetter Andreas ADI SD wrote: > >> > > comments? >> > >> > Why not make it probabilistic by using, say, MyProcPid % n where n > is the >> > number of tablespaces? Then you don't need anything shared. > > You still want a (local) counter, so that temp files for one session are > spread out. > Yes, but this can be used as a seed so not all backends start with the same counter value. cheers andrew