Re: Proposal: Add a callback data parameter to GetNamedDSMSegment
| От | Nathan Bossart |
|---|---|
| Тема | Re: Proposal: Add a callback data parameter to GetNamedDSMSegment |
| Дата | |
| Msg-id | aTMT4GESqgbKW5Up@nathan обсуждение исходный текст |
| Ответ на | Re: Proposal: Add a callback data parameter to GetNamedDSMSegment (Zsolt Parragi <zsolt.parragi@percona.com>) |
| Ответы |
Re: Proposal: Add a callback data parameter to GetNamedDSMSegment
|
| Список | pgsql-hackers |
On Thu, Dec 04, 2025 at 05:40:21PM +0000, Zsolt Parragi wrote: >> wouldn't the above be sufficient to create a DSM segment containing >> a flexible array? > > Yes, it creates it, but can I initialize it properly in > foo_init_state? How can I set the size member to the proper array > size, and how can I zero-initialize the array with the correct length > in it? What I can do currently is: > > 1. create the lwlock and set size to 0 in foo_init_state > 2. take the lwlock after GetNamedDSMSegment returns > 3. if size is 0 set it properly and zero-initialize the array > > That's why I said that there is a workaround, but it would be nicer if > I could do it properly in the init callback, by passing the array size > as a parameter to it. So, it seems like we've established at least 2 potential use-cases for this argument (tranche name and flexible arrays). And the amount of extension breakage doesn't seem too bad either. IMHO it'd be reasonable to proceed with this change. -- nathan
В списке pgsql-hackers по дате отправления: