diff --git a/dbms/src/Interpreters/Join.cpp b/dbms/src/Interpreters/Join.cpp index 0aba4c7a42e..05c83fd1598 100644 --- a/dbms/src/Interpreters/Join.cpp +++ b/dbms/src/Interpreters/Join.cpp @@ -494,7 +494,7 @@ bool Join::insertFromBlock(const Block & block) { dispatch([&](auto, auto strictness_, auto & map) { - insertFromBlockImpl(type, map, rows, key_columns, keys_size, key_sizes, stored_block, null_map, pool); + insertFromBlockImpl(type, map, rows, key_columns, key_sizes, stored_block, null_map, pool); }); } @@ -617,9 +617,10 @@ namespace if (find_result.isFound()) { - it->second.setUsed(); + auto & mapped = find_result.getMapped(); + mapped.setUsed(); Adder::pad_left, STRICTNESS, Map>::addFound( - it, num_columns_to_add, added_columns, i, filter.get(), current_offset, offsets_to_replicate.get(), right_indexes); + mapped, num_columns_to_add, added_columns, i, filter.get(), current_offset, offsets_to_replicate.get(), right_indexes); } else Adder::pad_left, STRICTNESS, Map>::addNotFound( @@ -746,7 +747,7 @@ void Join::joinBlockImpl( { #define M(TYPE) \ case Join::Type::TYPE: \ - joinBlockImplType>::Type>(\ + joinBlockImplType>::Type>(\ *maps_.TYPE, rows, key_columns, key_sizes, added_columns, null_map, \ filter, current_offset, offsets_to_replicate, right_indexes); \ break;