Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/duckdb/src/function/macro_function.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ MacroBindResult MacroFunction::BindMacroFunction(
InsertionOrderPreservingMap<unique_ptr<ParsedExpression>> &named_arguments, idx_t depth) {

ExpressionBinder expr_binder(binder, binder.context);

expr_binder.lambda_bindings = binder.lambda_bindings;
// Find argument types and separate positional and default arguments
vector<LogicalType> positional_arg_types;
InsertionOrderPreservingMap<LogicalType> named_arg_types;
Expand Down
8 changes: 5 additions & 3 deletions src/duckdb/src/function/scalar/create_sort_key.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -696,13 +696,15 @@ void PrepareSortData(Vector &result, idx_t size, SortKeyLengthInfo &key_lengths,
}
}

void FinalizeSortData(Vector &result, idx_t size) {
void FinalizeSortData(Vector &result, idx_t size, const SortKeyLengthInfo &key_lengths,
const unsafe_vector<idx_t> &offsets) {
switch (result.GetType().id()) {
case LogicalTypeId::BLOB: {
auto result_data = FlatVector::GetData<string_t>(result);
// call Finalize on the result
for (idx_t r = 0; r < size; r++) {
result_data[r].Finalize();
result_data[r].SetSizeAndFinalize(offsets[r],
key_lengths.variable_lengths[r] + key_lengths.constant_length);
}
break;
}
Expand Down Expand Up @@ -739,7 +741,7 @@ void CreateSortKeyInternal(vector<unique_ptr<SortKeyVectorData>> &sort_key_data,
SortKeyConstructInfo info(modifiers[c], offsets, data_pointers.get());
ConstructSortKey(*sort_key_data[c], info);
}
FinalizeSortData(result, row_count);
FinalizeSortData(result, row_count, key_lengths, offsets);
}

} // namespace
Expand Down
6 changes: 3 additions & 3 deletions src/duckdb/src/function/table/version/pragma_version.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#ifndef DUCKDB_PATCH_VERSION
#define DUCKDB_PATCH_VERSION "2-dev5"
#define DUCKDB_PATCH_VERSION "2-dev21"
#endif
#ifndef DUCKDB_MINOR_VERSION
#define DUCKDB_MINOR_VERSION 4
Expand All @@ -8,10 +8,10 @@
#define DUCKDB_MAJOR_VERSION 1
#endif
#ifndef DUCKDB_VERSION
#define DUCKDB_VERSION "v1.4.2-dev5"
#define DUCKDB_VERSION "v1.4.2-dev21"
#endif
#ifndef DUCKDB_SOURCE_ID
#define DUCKDB_SOURCE_ID "7d019a58cd"
#define DUCKDB_SOURCE_ID "716e174217"
#endif
#include "duckdb/function/table/system_functions.hpp"
#include "duckdb/main/database.hpp"
Expand Down
1 change: 0 additions & 1 deletion src/duckdb/src/planner/binder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,6 @@ optional_ptr<Binding> Binder::GetMatchingBinding(const string &catalog_name, con
const string &table_name, const string &column_name,
ErrorData &error) {
optional_ptr<Binding> binding;
D_ASSERT(!lambda_bindings);
if (macro_binding && table_name == macro_binding->GetAlias()) {
binding = optional_ptr<Binding>(macro_binding.get());
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ void ExpressionBinder::UnfoldMacroExpression(FunctionExpression &function, Scala
// validate the arguments and separate positional and default arguments
vector<unique_ptr<ParsedExpression>> positional_arguments;
InsertionOrderPreservingMap<unique_ptr<ParsedExpression>> named_arguments;
binder.lambda_bindings = lambda_bindings;
auto bind_result = MacroFunction::BindMacroFunction(binder, macro_func.macros, macro_func.name, function,
positional_arguments, named_arguments, depth);
if (!bind_result.error.empty()) {
Expand Down