Github user sachouche commented on the issue:

    https://github.com/apache/drill/pull/1237
  
    @vrozov, your observation is valid, we need more JIRAs to fix the reporting 
problem
    **Current Fix**
    - At this time, the UnorderedReceiver didn't account for any consumed memory
    - This fix, taxes the operator only when it consumes buffers
    
    **Potential Enhancements**
    Solution I
    - Create a new fragment child Allocator which will own the received (not 
yet consumed) batches
    - Improve the UI to report this allocator size
    - This solution is simple and complementary to the current work
    
    Solution II
    - Have the receiver operator drain the batch queue
    - Essentially, the receiver will have a private queue from where to consume 
batches
    - I personally don't like this solution as it prevents us from improving 
the Drill network protocol
    - Draining the batches for the sake of reporting will make it harder for 
the network layer to prefetch batches in an optimal manner; the queue size 
should be an indicator on how many pending batches there are. 


---

Reply via email to