| From: | Natarajan R <nataraj3098(at)gmail(dot)com> |
|---|---|
| To: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | HashTable KeySize |
| Date: | 2019-10-04 11:36:47 |
| Message-ID: | CAPqxBt7jJ8JMqmUoSJm7TCfBAa-KAgpap6+kUAE3Pr6i+Ec6ig@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
typedef struct HashTableKey
{
Oid dbId; // 4 bytes
int64 productid; // 8 bytes
}HashTableKey; (total size - 12 bytes)
typedef struct HashTableEntry
{
HashTableKey key;
ProductInfo *pdt;
}HashTableEntry;
HASHCTL hashInfo;
hashInfo.keysize = sizeof(HashTableKey);
hashInfo.entrysize = sizeof(HashTableEntry);
SampleHashTable = ShmemInitHash("productid vs product struct HashTable",
size, size, &hashInfo, HASH_ELEM | HASH_SHARED_MEM | HASH_BLOBS);
while printing keysize: elog(LOG,"Keysize = %d",sizeof(HashTableKey));
I am getting Keysize = 16, How? what should i need to do inorder to have
keysize = 12
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Anastasia Lubennikova | 2019-10-04 11:53:40 | Re: pg_upgrade fails with non-standard ACL |
| Previous Message | Asif Rehman | 2019-10-04 11:01:55 | Re: WIP/PoC for parallel backup |