[PATCH] ctdb-daemon: Free up record data if a call request is deferred (bug 13029)

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[PATCH] ctdb-daemon: Free up record data if a call request is deferred (bug 13029)

Samba - samba-technical mailing list
Hi,

If a call request for a key (migration request) is in flight, then all
the subsequent call requests for the same key are deferred.  In that case,
the data corresponding to key read from the local tdb is useless and there
is no need to keep it around.  Once the deferred call is reprocessed,
the data corresponding to that key will be fetched again.

For smb workload with lots of contention, this can result in
CTDB consuming gigabytes of memory.

Please review and push.

Amitay.

0001-ctdb-daemon-Free-up-record-data-if-a-call-request-is.patch (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] ctdb-daemon: Free up record data if a call request is deferred (bug 13029)

Samba - samba-technical mailing list
On Wed, 13 Sep 2017 11:27:54 +1000, Amitay Isaacs via samba-technical
<[hidden email]> wrote:

> If a call request for a key (migration request) is in flight, then all
> the subsequent call requests for the same key are deferred.  In that case,
> the data corresponding to key read from the local tdb is useless and there
> is no need to keep it around.  Once the deferred call is reprocessed,
> the data corresponding to that key will be fetched again.
>
> For smb workload with lots of contention, this can result in
> CTDB consuming gigabytes of memory.
>
> Please review and push.

Reviewed-by: Martin Schwenke <[hidden email]>

peace & happiness,
martin

Reply | Threaded
Open this post in threaded view
|

Re: [PATCH] ctdb-daemon: Free up record data if a call request is deferred (bug 13029)

Samba - samba-technical mailing list
On Wed, Sep 13, 2017 at 11:41 AM, Martin Schwenke <[hidden email]> wrote:

> On Wed, 13 Sep 2017 11:27:54 +1000, Amitay Isaacs via samba-technical
> <[hidden email]> wrote:
>
> > If a call request for a key (migration request) is in flight, then all
> > the subsequent call requests for the same key are deferred.  In that
> case,
> > the data corresponding to key read from the local tdb is useless and
> there
> > is no need to keep it around.  Once the deferred call is reprocessed,
> > the data corresponding to that key will be fetched again.
> >
> > For smb workload with lots of contention, this can result in
> > CTDB consuming gigabytes of memory.
> >
> > Please review and push.
>
> Reviewed-by: Martin Schwenke <[hidden email]>
>
> peace & happiness,
> martin
>

Pushed to autobuild.

Amitay.