Tim Armstrong has posted comments on this change.

Change subject: IMPALA-4023: don't attach buffered tuple streams to batches
......................................................................


Patch Set 1:

(2 comments)

http://gerrit.cloudera.org:8080/#/c/4448/1/be/src/runtime/buffered-tuple-stream-test.cc
File be/src/runtime/buffered-tuple-stream-test.cc:

Line 1185: }
> Add a simple test that checks pinned blocks are attached to a non-NULL batc
Done


http://gerrit.cloudera.org:8080/#/c/4448/1/be/src/runtime/row-batch.h
File be/src/runtime/row-batch.h:

Line 129:   bool ALWAYS_INLINE AtCapacity() {
> The meaning of AtCapacity() has slightly changed and I think it might be a 
We didn't check need_to_return_ before, it was sufficient to check num_rows_ == 
capacity_. The DCHECK I removed was redundant with the remaining one.

I think you're right that it's changed slightly, but I think the new behaviour 
makes more sense. The cases are:
1. The stream is empty - it doesn't make sense to consider it AtCapacity()
2. The stream has only small buffers < 8MB - in this case I think it's fine to 
not consider the batch AtCapacity() until the memory adds up to >= 8MB.
3. The stream has at least one large buffer >= 8MB - the aux memory usage check 
will cause this to be AtCapacity().

There's a bigger preexisting problem with the accounting of the attached 
blocks: the accounting isn't updated for the purpose of MemTrackers and 
BufferedBlockMgr reservations, so it's possible for another exec node to 
accumulate batches that are accounted against a different node. I'm going to 
need to fix that for the BufferPool changes, but I'm punting on it for now. 
This change will make that change simpler.


-- 
To view, visit http://gerrit.cloudera.org:8080/4448
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I6471422f86ce71e4c6ab277a276000051bc2e8ff
Gerrit-PatchSet: 1
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-Reviewer: Alex Behm <alex.b...@cloudera.com>
Gerrit-Reviewer: Michael Ho
Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com>
Gerrit-HasComments: Yes

Reply via email to