Hi Andres,


>> > +             if (hashp->isshared)
>> > +             {
>> > +                     int                     nsegs;
>> > +                     int                     nbuckets;
>> > +                     nsegs = find_num_of_segs(nelem, &nbuckets,
>> hctl->num_partitions, hctl->ssize);
>> > +
>> > +                     curr_offset =  (((char *) hashp->hctl) +
>> sizeof(HASHHDR) + (info->dsize * sizeof(HASHSEGMENT)) +
>> > +                        + (sizeof(HASHBUCKET) * hctl->ssize * nsegs));
>> > +             }
>> > +
>>
>> Why only do this for shared hashtables? Couldn't we allocate the elments
>> together with the rest for non-share hashtables too?
>>
>
>
I have now made the changes uniformly across shared and non-shared hash
tables,
making the code fix look cleaner. I hope this aligns with your suggestions.
Please find attached updated and rebased versions of both patches.

Kindly let me know your views.

Thank you,
Rahila Syed

Attachment: v3-0001-Account-for-initial-shared-memory-allocated-by-hash_.patch
Description: Binary data

Attachment: v3-0002-Replace-ShmemAlloc-calls-by-ShmemInitStruct.patch
Description: Binary data

Reply via email to