From c6876732972e562aed0f93888611710a037297c8 Mon Sep 17 00:00:00 2001 From: Yuriy Kaminskiy Date: Thu, 8 Aug 2024 20:05:43 +0300 Subject: [PATCH] dq_input_transform_lookup: fix maxKeysInRequest logic one row of data was lost once maxKeysInRequest reached --- .../dq/actors/input_transforms/dq_input_transform_lookup.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ydb/library/yql/dq/actors/input_transforms/dq_input_transform_lookup.cpp b/ydb/library/yql/dq/actors/input_transforms/dq_input_transform_lookup.cpp index 38576688ca16..4633cbdd44ec 100644 --- a/ydb/library/yql/dq/actors/input_transforms/dq_input_transform_lookup.cpp +++ b/ydb/library/yql/dq/actors/input_transforms/dq_input_transform_lookup.cpp @@ -168,9 +168,8 @@ class TInputTransformStreamLookupBase const auto maxKeysInRequest = LookupSource.first->GetMaxSupportedKeysInRequest(); IDqAsyncLookupSource::TUnboxedValueMap keysForLookup{maxKeysInRequest, KeyTypeHelper->GetValueHash(), KeyTypeHelper->GetValueEqual()}; while ( - ((InputFlowFetchStatus = FetchWideInputValue(inputRowItems)) == NUdf::EFetchStatus::Ok) && - (keysForLookup.size() < maxKeysInRequest) - ) { + (keysForLookup.size() < maxKeysInRequest) && + ((InputFlowFetchStatus = FetchWideInputValue(inputRowItems)) == NUdf::EFetchStatus::Ok)) { NUdf::TUnboxedValue* keyItems; NUdf::TUnboxedValue key = HolderFactory.CreateDirectArrayHolder(InputJoinColumns.size(), keyItems); for (size_t i = 0; i != InputJoinColumns.size(); ++i) {