On Thu, Jan 4, 2018 at 10:00 AM, Alexander Korotkov <a.korotkov@postgrespro.ru> wrote:On Wed, Jan 3, 2018 at 10:08 AM, Haribabu Kommi <kommi.haribabu@gmail.com> wrote:Apart from rebase, Added storage shared memory API, currently this API is usedonly by the syncscan. And also all the exposed functions of syncscan usage isremoved outside the heap.This makes me uneasy. You introduce two new hooks for size estimation and initializationof shared memory needed by storage am's. But if storage am is implemented in shared library,then this shared library can use our generic method for allocation of shared memory(including memory needed by storage am). If storage am is builtin, then hooks are also notneeded, because we know all our builtin storage am's in advance. For me, it would benice to encapsulate heap am requirements in shared memory into functions likeHeapAmShmemSize() and HeapAmShmemInit(), and don't explicitly show outside thatthis memory is needed for synchronized scan. But separate hooks don't look justified for me.Yes, I agree that for the builtin storage's there is no need of hooks. But in future,if we want to support multiple storage's in an instance, we may need hooks for shared memoryregistration. I am fine to change it.
On Wed, Jan 3, 2018 at 10:08 AM, Haribabu Kommi <kommi.haribabu@gmail.com> wrote:Apart from rebase, Added storage shared memory API, currently this API is used
Apart from rebase, Added storage shared memory API, currently this API is used
only by the syncscan. And also all the exposed functions of syncscan usage isremoved outside the heap.This makes me uneasy. You introduce two new hooks for size estimation and initializationof shared memory needed by storage am's. But if storage am is implemented in shared library,then this shared library can use our generic method for allocation of shared memory(including memory needed by storage am). If storage am is builtin, then hooks are also notneeded, because we know all our builtin storage am's in advance. For me, it would benice to encapsulate heap am requirements in shared memory into functions likeHeapAmShmemSize() and HeapAmShmemInit(), and don't explicitly show outside thatthis memory is needed for synchronized scan. But separate hooks don't look justified for me.
only by the syncscan. And also all the exposed functions of syncscan usage isremoved outside the heap.
pgsql-hackers by date:
Соглашаюсь с условиями обработки персональных данных