I see.

Sze, thanks for your reply

Tsz Wo Sze <[email protected]> 于2024年9月29日周日 01:06写道:

> > ...  didn't know that the mailing list doesn't support images.
>
> No problem.
>
> > Yes, this is the place.
>
> Even if the thread is interrupted, it will continue the execution.  In this
> case, it will run the finailly-block as usual.  So, it seems okay.
>
> It will be a problem if the following two lines throw an exception.
> However, it seems impossible.  If it really happens, the exception such as
> NPE should not be unnoticed.
>
>   final RaftRpcRequestProto request = r.getServerRequest();
>   final TermIndex previous = r.hasPreviousLog()?
>
> Tsz-Wo
>
>
>
> On Sat, Sep 28, 2024 at 8:16 AM ka yuu <[email protected]> wrote:
>
> > Umm. I'm sorry, I didn't know that the mailing list doesn't support
> images.
> > Yes, this is the place
> >
> > Tsz Wo Sze <[email protected]> 于2024年9月28日周六 23:08写道:
> >
> > > Hi,
> > >
> > > The screenshot did not come through.  The mailing lists may not allow
> > > attaching images.
> > >
> > > Are you talking about the code below?
> > >
> > >   public CompletableFuture<AppendEntriesReplyProto> appendEntriesAsync(
> > >       ReferenceCountedObject<AppendEntriesRequestProto> requestRef)
> > throws
> > > IOException {
> > >     final AppendEntriesRequestProto r = requestRef.retain();
> > >     final RaftRpcRequestProto request = r.getServerRequest();
> > >     final TermIndex previous = r.hasPreviousLog()?
> > > TermIndex.valueOf(r.getPreviousLog()) : null;
> > >     try {
> > >       ...
> > >     } catch(Exception t) {
> > >       ...
> > >     } finally {
> > >       requestRef.release();
> > >     }
> > >
> > > Tsz-Wo
> > >
> > > On Sat, Sep 28, 2024 at 7:53 AM ka yuu <[email protected]> wrote:
> > >
> > > > Hi, ratis community!
> > > >
> > > > I found that this location seems to cause refCount leaks.
> > > >
> > > >
> > > >    1. Successfully called requestRef.retain ()
> > > >
> > > >
> > > >    2. The appendEntriesAsync thread was interrupted by raftServer
> > before
> > > >    entering the try-finally block
> > > >
> > > >
> > > >
> > > > [image: Screenshot 2024-09-28 at 22.44.55.png]
> > > >
> > > > If this happens, will it cause the unit test to fail?
> > > >
> > >
> >
>

Reply via email to