Drop the implementation of CHECK_SRVIDS control

Amitay Isaacs amitay at gmail.com
Mon Aug 28 13:13:56 UTC 2017


On Mon, Aug 28, 2017 at 4:42 PM, Volker Lendecke <Volker.Lendecke at sernet.de>
wrote:

> On Fri, Aug 25, 2017 at 02:00:17PM +1000, Amitay Isaacs via
> samba-technical wrote:
> > But to support your requirement we need a control that checks
> > if a PID has registered for SRVID?  Is that correct?
>
> Correct.
>
> > CONTROL_CHECK_PID_SRVID
> >
> > input - { pid_t pid; uint64_t srvid }
> > output - { int result } 0 if match found, -1 if not
> >
> > That way you don't need 2 separate controls -- one for process_exists
> > and one to check if srvid exists.
>
> We could add the srvid(s) as optional arguments to
> CTDB_CONTROL_PROCESS_EXISTS. If CTDB_CONTROL_PROCESS_EXISTS gets
> additional data beyond the PID, check if the supplied serverids are
> registered with this pid. A CONTROL_CHECK_PID_SRVID from my point of
> view would have to have something like that maybe with UINT64_MAX as
> wildcard srvid. This would then replace CTDB_CONTROL_PROCESS_EXISTS,
> and then we can extend CTDB_CONTROL_PROCESS_EXISTS as well.
>
>
I don't want to modify any existing controls unless there is a compelling
reason to do so.  It makes the code unnecessarily complex if you want to do
backward compatibility, specially if there are optional elements in the
protocol.

Wouldn't it be easier to switch to using new control?

What's the thinking behind wildcard srvid?  I don't get it.

Amitay.


More information about the samba-technical mailing list