Skip to content

Commit d4c4a57

Browse files
committed
Fixed bugs 4
1 parent 1f91a92 commit d4c4a57

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

ydb/library/yql/dq/runtime/dq_output_channel.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,9 @@ class TDqOutputChannel : public IDqOutputChannel {
105105
}
106106

107107
if (!MutableSettings.IsLocalChannel && BlockSplitter && BlockSplitter->ShouldSplitItem(values, width)) {
108+
if (Packer.PackedSizeEstimate()) {
109+
TryPack(/* force */ true);
110+
}
108111
for (auto&& data : BlockSplitter->SplitItem(values, width)) {
109112
DoPushBlock(std::move(data));
110113
}
@@ -337,7 +340,7 @@ class TDqOutputChannel : public IDqOutputChannel {
337340

338341
TChunkedBuffer FinishPackAndCheckSize() {
339342
TChunkedBuffer result = Packer.Finish();
340-
if (result.Size() > ChunkSizeLimit) {
343+
if (!MutableSettings.IsLocalChannel && result.Size() > ChunkSizeLimit) {
341344
// TODO: may relax requirement if OOB transport is enabled
342345
ythrow TDqOutputChannelChunkSizeLimitExceeded() << "Row data size is too big: "
343346
<< result.Size() << " bytes, exceeds limit of " << ChunkSizeLimit << " bytes";

0 commit comments

Comments
 (0)