accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-4191) Tracing on client can sometimes lose "sendMutations" events.
Date Fri, 15 Apr 2016 17:12:25 GMT


ASF GitHub Bot commented on ACCUMULO-4191:

Github user ShawnWalker commented on the pull request:
    > I was looking for some understanding that you ... had a plausible idea of why this
was sometimes happening. Sounds fine to me.
    It seemed obvious to me that not propagating the tracing was an error.  Before you asked,
I had just decided it was "some random race condition".  Coming up with a plausible explanation
made me read what was going on much more closely.
    If this really is broken for everyone on master, there's a much more plausible explanation
why it might have occasionally failed before:  the `TimerTask` created at `TabletServerBatchWriter`
line 210 can cause mutations to be sent without propagating the tracing information.  Particularly
the fact that it has an initial delay of 0 would make for a timing sensitive race condition:
 either {{close()}} arranges to send the mutations (traceable) or the timer arranges to send
the mutations (untraceable).
    Fixing the timer task to propagate tracing would not be quite so trivial a task as the
patch proposed in this pull request.

> Tracing on client can sometimes lose "sendMutations" events.
> ------------------------------------------------------------
>                 Key: ACCUMULO-4191
>                 URL:
>             Project: Accumulo
>          Issue Type: Bug
>            Reporter: Shawn Walker
>            Assignee: Shawn Walker
>            Priority: Minor
> In {{TabletServerBatchWriter.MutationWriter.queueMutations(...)}} (line 736), HTrace
{{Span}}'s are not properly propagated across thread boundaries.  Consequently, tracing doesn't
propagate into {{TabletServerBatchWriter.SendTask.send(...)}}, and so the {{sendMutation}}
event can fail to be logged.
> This can cause {{ShellServerIT.trace(...)}} to fail.

This message was sent by Atlassian JIRA

View raw message