:: Re: [Libbitcoin] libbitcoin-server …
Page principale
Supprimer ce message
Répondre à ce message
Auteur: Eric Voskuil
Date:  
À: mlmikael, libbitcoin
Sujet: Re: [Libbitcoin] libbitcoin-server update
There were no locking issues found in libbitcoin-node (or server). The
stall resulted from the failure to poll. Please see the detailed
description of the stall issue in the link below.

The proactor pattern is used by libbitcoin::network (as well as node and
server). This pattern inherently allows an unbounded increase in memory
consumption in the case where incoming messages are not processed as
fast as they are received. This is a very efficient pattern in one sense
as it avoids most locking and minimizes thread consumption. On the other
hand it achieves this through queueing all actions.

It is currently possible for libbitcoin to fail during sync due to
excess memory consumption. I consider this a bug. The fix I provided
prevents the stall but in some cases it may exacerbate the memory
consumption issue. This could be considered a self-inflicted DoS. The
networking stack needs a more robust poller (so we don't self-induce a
failure) as well as DOS protection (so we can shed messages and/or
connections that are likely to induce a failure).

e

On 06/28/2015 07:00 AM, mlmikael wrote:
> So all LB is free of locking issues now?
>
> What about memory peaks, anyhow limited in size like <1GB always?
>
> So totally bugfree as far as everyone knows? :D
> e
> On 2015-06-10 14:16, Eric Voskuil wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> I've documented the stall issue in detail here:
>>
>> https://github.com/libbitcoin/libbitcoin-server/issues/87
>