SortMem...

Started by Nonamealmost 21 years ago2 messages
#1Noname
mchron@aueb.gr

Hi
in the function ExecChooseHashTableSize()
(~/src/backend/executor/nodeHash.c)
are determined the bytes of the hash table. The correspondent code is:

/*
* Target in-memory hashtablesize in SortMem kilobytes
*/
hash_table_bytes = SortMem *1024L

(~/src/include/miscadmin.h)
extern DLLIMPORT int SortMem;

What SortMem represents? Where is evaluated and what is its value?

I want to create 2 hash tables. One for the inner and one for the outer rel.
What should be the hash_table_bytes in that case?

Thanks in advance!
-martha

#2Bruce Momjian
pgman@candle.pha.pa.us
In reply to: Noname (#1)
Re: SortMem...

mchron@aueb.gr wrote:

Hi
in the function ExecChooseHashTableSize()
(~/src/backend/executor/nodeHash.c)
are determined the bytes of the hash table. The correspondent code is:

/*
* Target in-memory hashtablesize in SortMem kilobytes
*/
hash_table_bytes = SortMem *1024L

(~/src/include/miscadmin.h)
extern DLLIMPORT int SortMem;

What SortMem represents? Where is evaluated and what is its value?

I want to create 2 hash tables. One for the inner and one for the outer rel.
What should be the hash_table_bytes in that case?

SortMem is a config value found in your postgresql.conf or using SHOW
SORTMEM.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073