Re: fix worker_spi to run as non-dynamic background worker

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Shigeru Hanada <shigeru(dot)hanada(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: fix worker_spi to run as non-dynamic background worker
Date: 2014-05-27 04:11:31
Message-ID: CAB7nPqQFoRjeYgD9ZosTceCeaJ7MZ3NHJv8zDxPgTVTRrPntEA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, May 27, 2014 at 12:09 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Fri, May 23, 2014 at 10:38 AM, Michael Paquier
> <michael(dot)paquier(at)gmail(dot)com> wrote:
>> On Fri, May 23, 2014 at 6:29 PM, Shigeru Hanada
>> <shigeru(dot)hanada(at)gmail(dot)com> wrote:
>>> I noticed that contrib/worker_spi can't run as non-dynamic background
>>> worker (IOW, load via shared_preload_libraries), because of
>>> uninitialized bgw_notify_pid.
>> That's actually the case of all the bgworkers that have been developed
>> with 9.3 and not only worker_spi. If bgw_notify_pid needs to be
>> specifically initialized with 9.4, this should be mentioned in the
>> release notes or users will be surprised.
>
> I agree that it would be appropriate to mention this in the release
> notes, maybe in the incompatibilities section. The basic idea is:
> When registering a background worker, the new bgw_notify_pid field
> should be initialized to zero, except if you're using the new
> notification feature.
This is an item for the section "Migration to 9.4" IMO.

> That feature (introduced in commit
> 090d0f2050647958865cb495dff74af7257d2bb4) doesn't seem to really be
> mentioned in the release notes at present, so we might want to add
> that too. It doesn't necessarily have to be separate from the
> existing background worker item, although it could be, but it should
> be mentioned somehow, particularly because of the related
> incompatibility.
The feature itself is already mentioned in the release notes in a very
general manner, by telling that bgworkers can be dynamically
"registered" and "started". Users can still refer to the documentation
to see more precisely what kind of infrastructure is in place in 9.4.

So... As I'm on it... What about something like the attached patch?
--
Michael

Attachment Content-Type Size
20140527_bgworker_notify_doc.patch text/x-patch 578 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David E. Wheeler 2014-05-27 04:13:46 Re: [PATCH] Replacement for OSSP-UUID for Linux and BSD
Previous Message Rahila Syed 2014-05-27 03:57:04 Re: Compression of full-page-writes