[ 
https://issues.apache.org/jira/browse/ACCUMULO-4191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15243240#comment-15243240
 ] 

ASF GitHub Bot commented on ACCUMULO-4191:
------------------------------------------

Github user ShawnWalker commented on the pull request:

    https://github.com/apache/accumulo/pull/94#issuecomment-210550520
  
    @joshelser 
    > 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: https://issues.apache.org/jira/browse/ACCUMULO-4191
>             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
(v6.3.4#6332)

Reply via email to