duckdb 0.7.2-dev2507.0 → 0.7.2-dev2552.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/connection.cpp +1 -1
- package/src/duckdb/extension/icu/icu-dateadd.cpp +3 -3
- package/src/duckdb/extension/icu/icu-datepart.cpp +3 -3
- package/src/duckdb/extension/icu/icu-datesub.cpp +2 -2
- package/src/duckdb/extension/icu/icu-datetrunc.cpp +1 -1
- package/src/duckdb/extension/icu/icu-extension.cpp +3 -3
- package/src/duckdb/extension/icu/icu-list-range.cpp +2 -2
- package/src/duckdb/extension/icu/icu-makedate.cpp +1 -1
- package/src/duckdb/extension/icu/icu-strptime.cpp +4 -4
- package/src/duckdb/extension/icu/icu-table-range.cpp +2 -2
- package/src/duckdb/extension/icu/icu-timebucket.cpp +1 -1
- package/src/duckdb/extension/icu/icu-timezone.cpp +4 -4
- package/src/duckdb/extension/json/json-extension.cpp +6 -6
- package/src/duckdb/extension/parquet/parquet-extension.cpp +9 -8
- package/src/duckdb/src/catalog/catalog.cpp +166 -127
- package/src/duckdb/src/catalog/catalog_entry/copy_function_catalog_entry.cpp +3 -3
- package/src/duckdb/src/catalog/catalog_entry/duck_index_entry.cpp +1 -1
- package/src/duckdb/src/catalog/catalog_entry/duck_schema_entry.cpp +90 -82
- package/src/duckdb/src/catalog/catalog_entry/duck_table_entry.cpp +65 -67
- package/src/duckdb/src/catalog/catalog_entry/index_catalog_entry.cpp +3 -3
- package/src/duckdb/src/catalog/catalog_entry/pragma_function_catalog_entry.cpp +4 -4
- package/src/duckdb/src/catalog/catalog_entry/scalar_function_catalog_entry.cpp +8 -8
- package/src/duckdb/src/catalog/catalog_entry/scalar_macro_catalog_entry.cpp +10 -10
- package/src/duckdb/src/catalog/catalog_entry/schema_catalog_entry.cpp +6 -6
- package/src/duckdb/src/catalog/catalog_entry/sequence_catalog_entry.cpp +6 -6
- package/src/duckdb/src/catalog/catalog_entry/table_catalog_entry.cpp +4 -4
- package/src/duckdb/src/catalog/catalog_entry/table_function_catalog_entry.cpp +9 -9
- package/src/duckdb/src/catalog/catalog_entry/type_catalog_entry.cpp +5 -5
- package/src/duckdb/src/catalog/catalog_entry/view_catalog_entry.cpp +23 -23
- package/src/duckdb/src/catalog/catalog_entry.cpp +27 -6
- package/src/duckdb/src/catalog/catalog_search_path.cpp +2 -2
- package/src/duckdb/src/catalog/catalog_set.cpp +84 -87
- package/src/duckdb/src/catalog/catalog_transaction.cpp +1 -1
- package/src/duckdb/src/catalog/default/default_functions.cpp +1 -1
- package/src/duckdb/src/catalog/default/default_schemas.cpp +1 -1
- package/src/duckdb/src/catalog/default/default_types.cpp +1 -1
- package/src/duckdb/src/catalog/default/default_views.cpp +1 -1
- package/src/duckdb/src/catalog/dependency_list.cpp +2 -2
- package/src/duckdb/src/catalog/dependency_manager.cpp +9 -10
- package/src/duckdb/src/catalog/duck_catalog.cpp +30 -26
- package/src/duckdb/src/catalog/similar_catalog_entry.cpp +1 -1
- package/src/duckdb/src/common/types.cpp +15 -27
- package/src/duckdb/src/execution/operator/join/physical_index_join.cpp +2 -2
- package/src/duckdb/src/execution/operator/persistent/physical_batch_insert.cpp +4 -3
- package/src/duckdb/src/execution/operator/persistent/physical_export.cpp +19 -18
- package/src/duckdb/src/execution/operator/persistent/physical_insert.cpp +5 -5
- package/src/duckdb/src/execution/operator/schema/physical_alter.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_create_function.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_create_index.cpp +6 -5
- package/src/duckdb/src/execution/operator/schema/physical_create_schema.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_create_sequence.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_create_table.cpp +2 -2
- package/src/duckdb/src/execution/operator/schema/physical_create_type.cpp +4 -3
- package/src/duckdb/src/execution/operator/schema/physical_create_view.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_detach.cpp +1 -1
- package/src/duckdb/src/execution/operator/schema/physical_drop.cpp +2 -2
- package/src/duckdb/src/execution/physical_plan/plan_aggregate.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_comparison_join.cpp +4 -4
- package/src/duckdb/src/execution/physical_plan/plan_create_table.cpp +4 -3
- package/src/duckdb/src/execution/physical_plan/plan_delete.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_insert.cpp +1 -1
- package/src/duckdb/src/execution/physical_plan/plan_update.cpp +1 -1
- package/src/duckdb/src/function/built_in_functions.cpp +10 -10
- package/src/duckdb/src/function/function_binder.cpp +3 -3
- package/src/duckdb/src/function/scalar/list/list_aggregates.cpp +5 -6
- package/src/duckdb/src/function/scalar/operators/arithmetic.cpp +2 -2
- package/src/duckdb/src/function/scalar/sequence/nextval.cpp +9 -8
- package/src/duckdb/src/function/scalar/system/aggregate_export.cpp +6 -6
- package/src/duckdb/src/function/table/arrow.cpp +5 -5
- package/src/duckdb/src/function/table/system/duckdb_columns.cpp +8 -7
- package/src/duckdb/src/function/table/system/duckdb_constraints.cpp +14 -14
- package/src/duckdb/src/function/table/system/duckdb_databases.cpp +2 -2
- package/src/duckdb/src/function/table/system/duckdb_functions.cpp +26 -25
- package/src/duckdb/src/function/table/system/duckdb_indexes.cpp +13 -12
- package/src/duckdb/src/function/table/system/duckdb_schemas.cpp +7 -7
- package/src/duckdb/src/function/table/system/duckdb_sequences.cpp +8 -9
- package/src/duckdb/src/function/table/system/duckdb_tables.cpp +10 -9
- package/src/duckdb/src/function/table/system/duckdb_types.cpp +13 -13
- package/src/duckdb/src/function/table/system/duckdb_views.cpp +11 -10
- package/src/duckdb/src/function/table/system/pragma_collations.cpp +2 -2
- package/src/duckdb/src/function/table/system/pragma_database_size.cpp +5 -5
- package/src/duckdb/src/function/table/system/pragma_storage_info.cpp +3 -3
- package/src/duckdb/src/function/table/system/pragma_table_info.cpp +2 -2
- package/src/duckdb/src/function/table/table_scan.cpp +39 -37
- package/src/duckdb/src/function/table/version/pragma_version.cpp +2 -2
- package/src/duckdb/src/function/udf_function.cpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog.hpp +122 -81
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/aggregate_function_catalog_entry.hpp +2 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/collate_catalog_entry.hpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/copy_function_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/duck_index_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/duck_schema_entry.hpp +24 -20
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/duck_table_entry.hpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/index_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/macro_catalog_entry.hpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/pragma_function_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/scalar_function_catalog_entry.hpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/scalar_macro_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/schema_catalog_entry.hpp +22 -17
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/sequence_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/table_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/table_function_catalog_entry.hpp +2 -2
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/table_macro_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/type_catalog_entry.hpp +1 -1
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry/view_catalog_entry.hpp +3 -3
- package/src/duckdb/src/include/duckdb/catalog/catalog_entry.hpp +28 -7
- package/src/duckdb/src/include/duckdb/catalog/catalog_set.hpp +20 -19
- package/src/duckdb/src/include/duckdb/catalog/duck_catalog.hpp +9 -9
- package/src/duckdb/src/include/duckdb/catalog/similar_catalog_entry.hpp +2 -1
- package/src/duckdb/src/include/duckdb/catalog/standard_entry.hpp +10 -4
- package/src/duckdb/src/include/duckdb/common/enums/on_entry_not_found.hpp +17 -0
- package/src/duckdb/src/include/duckdb/common/types.hpp +3 -4
- package/src/duckdb/src/include/duckdb/function/function_serialization.hpp +4 -4
- package/src/duckdb/src/include/duckdb/function/scalar_function.hpp +3 -2
- package/src/duckdb/src/include/duckdb/function/table/table_scan.hpp +5 -4
- package/src/duckdb/src/include/duckdb/function/table_function.hpp +28 -15
- package/src/duckdb/src/include/duckdb/main/attached_database.hpp +2 -0
- package/src/duckdb/src/include/duckdb/main/client_context.hpp +1 -1
- package/src/duckdb/src/include/duckdb/main/database_manager.hpp +3 -2
- package/src/duckdb/src/include/duckdb/parser/expression/bound_expression.hpp +2 -0
- package/src/duckdb/src/include/duckdb/parser/keyword_helper.hpp +2 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_info.hpp +7 -5
- package/src/duckdb/src/include/duckdb/parser/parsed_data/alter_table_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_table_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/create_view_info.hpp +1 -1
- package/src/duckdb/src/include/duckdb/parser/parsed_data/detach_info.hpp +3 -2
- package/src/duckdb/src/include/duckdb/parser/parsed_data/drop_info.hpp +5 -5
- package/src/duckdb/src/include/duckdb/parser/parsed_data/parse_info.hpp +13 -0
- package/src/duckdb/src/include/duckdb/parser/tableref.hpp +5 -2
- package/src/duckdb/src/include/duckdb/parser/transformer.hpp +2 -0
- package/src/duckdb/src/include/duckdb/planner/binder.hpp +2 -2
- package/src/duckdb/src/include/duckdb/planner/expression_binder/base_select_binder.hpp +1 -2
- package/src/duckdb/src/include/duckdb/planner/expression_binder.hpp +4 -7
- package/src/duckdb/src/include/duckdb/planner/operator/logical_get.hpp +1 -1
- package/src/duckdb/src/include/duckdb/transaction/transaction.hpp +12 -0
- package/src/duckdb/src/main/attached_database.cpp +12 -6
- package/src/duckdb/src/main/capi/table_function-c.cpp +17 -16
- package/src/duckdb/src/main/client_context.cpp +12 -11
- package/src/duckdb/src/main/database_manager.cpp +13 -12
- package/src/duckdb/src/optimizer/join_order/cardinality_estimator.cpp +1 -2
- package/src/duckdb/src/parser/parsed_data/alter_info.cpp +3 -3
- package/src/duckdb/src/parser/parsed_data/alter_scalar_function_info.cpp +2 -2
- package/src/duckdb/src/parser/parsed_data/alter_table_function_info.cpp +2 -2
- package/src/duckdb/src/parser/parsed_data/alter_table_info.cpp +9 -9
- package/src/duckdb/src/parser/parsed_data/create_scalar_function_info.cpp +2 -2
- package/src/duckdb/src/parser/parsed_data/create_table_function_info.cpp +2 -2
- package/src/duckdb/src/parser/parsed_data/create_table_info.cpp +2 -2
- package/src/duckdb/src/parser/parsed_data/create_view_info.cpp +2 -2
- package/src/duckdb/src/parser/transform/statement/transform_alter_sequence.cpp +3 -2
- package/src/duckdb/src/parser/transform/statement/transform_alter_table.cpp +5 -1
- package/src/duckdb/src/parser/transform/statement/transform_detach.cpp +1 -1
- package/src/duckdb/src/parser/transform/statement/transform_drop.cpp +1 -1
- package/src/duckdb/src/parser/transform/statement/transform_rename.cpp +1 -1
- package/src/duckdb/src/planner/binder/expression/bind_aggregate_expression.cpp +26 -27
- package/src/duckdb/src/planner/binder/expression/bind_between_expression.cpp +17 -17
- package/src/duckdb/src/planner/binder/expression/bind_case_expression.cpp +9 -9
- package/src/duckdb/src/planner/binder/expression/bind_cast_expression.cpp +6 -6
- package/src/duckdb/src/planner/binder/expression/bind_collate_expression.cpp +6 -6
- package/src/duckdb/src/planner/binder/expression/bind_columnref_expression.cpp +2 -2
- package/src/duckdb/src/planner/binder/expression/bind_comparison_expression.cpp +21 -21
- package/src/duckdb/src/planner/binder/expression/bind_conjunction_expression.cpp +2 -3
- package/src/duckdb/src/planner/binder/expression/bind_function_expression.cpp +33 -36
- package/src/duckdb/src/planner/binder/expression/bind_macro_expression.cpp +5 -5
- package/src/duckdb/src/planner/binder/expression/bind_operator_expression.cpp +23 -23
- package/src/duckdb/src/planner/binder/expression/bind_subquery_expression.cpp +4 -4
- package/src/duckdb/src/planner/binder/expression/bind_unnest_expression.cpp +7 -7
- package/src/duckdb/src/planner/binder/expression/bind_window_expression.cpp +23 -23
- package/src/duckdb/src/planner/binder/query_node/bind_table_macro_node.cpp +4 -4
- package/src/duckdb/src/planner/binder/statement/bind_copy.cpp +14 -13
- package/src/duckdb/src/planner/binder/statement/bind_create.cpp +36 -35
- package/src/duckdb/src/planner/binder/statement/bind_create_table.cpp +3 -3
- package/src/duckdb/src/planner/binder/statement/bind_delete.cpp +1 -1
- package/src/duckdb/src/planner/binder/statement/bind_drop.cpp +4 -4
- package/src/duckdb/src/planner/binder/statement/bind_export.cpp +10 -10
- package/src/duckdb/src/planner/binder/statement/bind_insert.cpp +2 -2
- package/src/duckdb/src/planner/binder/statement/bind_pragma.cpp +4 -4
- package/src/duckdb/src/planner/binder/statement/bind_simple.cpp +5 -4
- package/src/duckdb/src/planner/binder/statement/bind_update.cpp +1 -1
- package/src/duckdb/src/planner/binder/tableref/bind_basetableref.cpp +3 -3
- package/src/duckdb/src/planner/binder/tableref/bind_table_function.cpp +10 -12
- package/src/duckdb/src/planner/binder.cpp +2 -2
- package/src/duckdb/src/planner/expression/bound_expression.cpp +11 -2
- package/src/duckdb/src/planner/operator/logical_copy_to_file.cpp +2 -5
- package/src/duckdb/src/planner/operator/logical_create.cpp +2 -1
- package/src/duckdb/src/planner/operator/logical_create_index.cpp +2 -2
- package/src/duckdb/src/planner/operator/logical_delete.cpp +2 -2
- package/src/duckdb/src/planner/operator/logical_get.cpp +1 -1
- package/src/duckdb/src/planner/operator/logical_insert.cpp +2 -7
- package/src/duckdb/src/planner/operator/logical_update.cpp +2 -6
- package/src/duckdb/src/planner/parsed_data/bound_create_table_info.cpp +2 -2
- package/src/duckdb/src/planner/pragma_handler.cpp +3 -4
- package/src/duckdb/src/storage/checkpoint_manager.cpp +46 -46
- package/src/duckdb/src/storage/data_table.cpp +3 -6
- package/src/duckdb/src/storage/table/update_segment.cpp +1 -1
- package/src/duckdb/src/storage/wal_replay.cpp +28 -30
- package/src/duckdb/src/storage/write_ahead_log.cpp +8 -8
- package/src/duckdb/src/transaction/cleanup_state.cpp +1 -1
- package/src/duckdb/src/transaction/commit_state.cpp +3 -4
- package/src/duckdb/src/transaction/transaction_context.cpp +1 -1
package/package.json
CHANGED
package/src/connection.cpp
CHANGED
@@ -332,7 +332,7 @@ struct UnregisterUdfTask : public Task {
|
|
332
332
|
info.type = duckdb::CatalogType::SCALAR_FUNCTION_ENTRY;
|
333
333
|
info.name = name;
|
334
334
|
info.allow_drop_internal = true;
|
335
|
-
catalog.DropEntry(context,
|
335
|
+
catalog.DropEntry(context, info);
|
336
336
|
con.Commit();
|
337
337
|
}
|
338
338
|
std::string name;
|
@@ -247,7 +247,7 @@ struct ICUDateAdd : public ICUDateFunc {
|
|
247
247
|
|
248
248
|
CreateScalarFunctionInfo func_info(set);
|
249
249
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
250
|
-
catalog.AddFunction(context,
|
250
|
+
catalog.AddFunction(context, func_info);
|
251
251
|
}
|
252
252
|
|
253
253
|
template <typename TA, typename OP>
|
@@ -272,7 +272,7 @@ struct ICUDateAdd : public ICUDateFunc {
|
|
272
272
|
|
273
273
|
CreateScalarFunctionInfo func_info(set);
|
274
274
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
275
|
-
catalog.AddFunction(context,
|
275
|
+
catalog.AddFunction(context, func_info);
|
276
276
|
}
|
277
277
|
|
278
278
|
static void AddDateAgeFunctions(const string &name, ClientContext &context) {
|
@@ -284,7 +284,7 @@ struct ICUDateAdd : public ICUDateFunc {
|
|
284
284
|
|
285
285
|
CreateScalarFunctionInfo func_info(set);
|
286
286
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
287
|
-
catalog.AddFunction(context,
|
287
|
+
catalog.AddFunction(context, func_info);
|
288
288
|
}
|
289
289
|
};
|
290
290
|
|
@@ -436,7 +436,7 @@ struct ICUDatePart : public ICUDateFunc {
|
|
436
436
|
ScalarFunctionSet set(name);
|
437
437
|
set.AddFunction(GetUnaryPartCodeFunction<timestamp_t, int64_t>(LogicalType::TIMESTAMP_TZ));
|
438
438
|
CreateScalarFunctionInfo func_info(set);
|
439
|
-
catalog.AddFunction(context,
|
439
|
+
catalog.AddFunction(context, func_info);
|
440
440
|
}
|
441
441
|
|
442
442
|
template <typename INPUT_TYPE, typename RESULT_TYPE>
|
@@ -461,7 +461,7 @@ struct ICUDatePart : public ICUDateFunc {
|
|
461
461
|
set.AddFunction(GetBinaryPartCodeFunction<timestamp_t, int64_t>(LogicalType::TIMESTAMP_TZ));
|
462
462
|
set.AddFunction(GetStructFunction<timestamp_t>(LogicalType::TIMESTAMP_TZ));
|
463
463
|
CreateScalarFunctionInfo func_info(set);
|
464
|
-
catalog.AddFunction(context,
|
464
|
+
catalog.AddFunction(context, func_info);
|
465
465
|
}
|
466
466
|
|
467
467
|
static duckdb::unique_ptr<FunctionData> BindLastDate(ClientContext &context, ScalarFunction &bound_function,
|
@@ -480,7 +480,7 @@ struct ICUDatePart : public ICUDateFunc {
|
|
480
480
|
ScalarFunctionSet set(name);
|
481
481
|
set.AddFunction(GetLastDayFunction<timestamp_t>(LogicalType::TIMESTAMP_TZ));
|
482
482
|
CreateScalarFunctionInfo func_info(set);
|
483
|
-
catalog.AddFunction(context,
|
483
|
+
catalog.AddFunction(context, func_info);
|
484
484
|
}
|
485
485
|
};
|
486
486
|
|
@@ -144,7 +144,7 @@ struct ICUCalendarSub : public ICUDateFunc {
|
|
144
144
|
|
145
145
|
CreateScalarFunctionInfo func_info(set);
|
146
146
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
147
|
-
catalog.AddFunction(context,
|
147
|
+
catalog.AddFunction(context, func_info);
|
148
148
|
}
|
149
149
|
};
|
150
150
|
|
@@ -271,7 +271,7 @@ struct ICUCalendarDiff : public ICUDateFunc {
|
|
271
271
|
|
272
272
|
CreateScalarFunctionInfo func_info(set);
|
273
273
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
274
|
-
catalog.AddFunction(context,
|
274
|
+
catalog.AddFunction(context, func_info);
|
275
275
|
}
|
276
276
|
};
|
277
277
|
|
@@ -146,7 +146,7 @@ struct ICUDateTrunc : public ICUDateFunc {
|
|
146
146
|
|
147
147
|
CreateScalarFunctionInfo func_info(set);
|
148
148
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
149
|
-
catalog.AddFunction(context,
|
149
|
+
catalog.AddFunction(context, func_info);
|
150
150
|
}
|
151
151
|
};
|
152
152
|
|
@@ -247,13 +247,13 @@ void ICUExtension::Load(DuckDB &db) {
|
|
247
247
|
|
248
248
|
CreateCollationInfo info(collation, GetICUFunction(collation), false, true);
|
249
249
|
info.on_conflict = OnCreateConflict::IGNORE_ON_CONFLICT;
|
250
|
-
catalog.CreateCollation(*con.context,
|
250
|
+
catalog.CreateCollation(*con.context, info);
|
251
251
|
}
|
252
252
|
ScalarFunction sort_key("icu_sort_key", {LogicalType::VARCHAR, LogicalType::VARCHAR}, LogicalType::VARCHAR,
|
253
253
|
ICUCollateFunction, ICUSortKeyBind);
|
254
254
|
|
255
255
|
CreateScalarFunctionInfo sort_key_info(std::move(sort_key));
|
256
|
-
catalog.CreateFunction(*con.context,
|
256
|
+
catalog.CreateFunction(*con.context, sort_key_info);
|
257
257
|
|
258
258
|
// Time Zones
|
259
259
|
auto &config = DBConfig::GetConfig(*db.instance);
|
@@ -283,7 +283,7 @@ void ICUExtension::Load(DuckDB &db) {
|
|
283
283
|
|
284
284
|
TableFunction cal_names("icu_calendar_names", {}, ICUCalendarFunction, ICUCalendarBind, ICUCalendarInit);
|
285
285
|
CreateTableFunctionInfo cal_names_info(std::move(cal_names));
|
286
|
-
catalog.CreateTableFunction(*con.context,
|
286
|
+
catalog.CreateTableFunction(*con.context, cal_names_info);
|
287
287
|
|
288
288
|
con.Commit();
|
289
289
|
}
|
@@ -188,7 +188,7 @@ struct ICUListRange : public ICUDateFunc {
|
|
188
188
|
LogicalType::LIST(LogicalType::TIMESTAMP_TZ), ICUListRangeFunction<false>,
|
189
189
|
Bind));
|
190
190
|
CreateScalarFunctionInfo range_func_info(range);
|
191
|
-
catalog.AddFunction(context,
|
191
|
+
catalog.AddFunction(context, range_func_info);
|
192
192
|
|
193
193
|
// generate_series: similar to range, but inclusive instead of exclusive bounds on the RHS
|
194
194
|
ScalarFunctionSet generate_series("generate_series");
|
@@ -196,7 +196,7 @@ struct ICUListRange : public ICUDateFunc {
|
|
196
196
|
ScalarFunction({LogicalType::TIMESTAMP_TZ, LogicalType::TIMESTAMP_TZ, LogicalType::INTERVAL},
|
197
197
|
LogicalType::LIST(LogicalType::TIMESTAMP_TZ), ICUListRangeFunction<true>, Bind));
|
198
198
|
CreateScalarFunctionInfo generate_series_func_info(generate_series);
|
199
|
-
catalog.AddFunction(context,
|
199
|
+
catalog.AddFunction(context, generate_series_func_info);
|
200
200
|
}
|
201
201
|
};
|
202
202
|
|
@@ -140,7 +140,7 @@ struct ICUMakeTimestampTZFunc : public ICUDateFunc {
|
|
140
140
|
|
141
141
|
CreateScalarFunctionInfo func_info(set);
|
142
142
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
143
|
-
catalog.AddFunction(context,
|
143
|
+
catalog.AddFunction(context, func_info);
|
144
144
|
}
|
145
145
|
};
|
146
146
|
|
@@ -222,9 +222,9 @@ struct ICUStrptime : public ICUDateFunc {
|
|
222
222
|
static void TailPatch(const string &name, ClientContext &context, const vector<LogicalType> &types) {
|
223
223
|
// Find the old function
|
224
224
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
225
|
-
auto entry = catalog.GetEntry(context, CatalogType::SCALAR_FUNCTION_ENTRY, DEFAULT_SCHEMA, name);
|
226
|
-
D_ASSERT(entry
|
227
|
-
auto &func = entry
|
225
|
+
auto &entry = catalog.GetEntry(context, CatalogType::SCALAR_FUNCTION_ENTRY, DEFAULT_SCHEMA, name);
|
226
|
+
D_ASSERT(entry.type == CatalogType::SCALAR_FUNCTION_ENTRY);
|
227
|
+
auto &func = entry.Cast<ScalarFunctionCatalogEntry>();
|
228
228
|
string error;
|
229
229
|
|
230
230
|
FunctionBinder function_binder(context);
|
@@ -417,7 +417,7 @@ struct ICUStrftime : public ICUDateFunc {
|
|
417
417
|
|
418
418
|
CreateScalarFunctionInfo func_info(set);
|
419
419
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
420
|
-
catalog.AddFunction(context,
|
420
|
+
catalog.AddFunction(context, func_info);
|
421
421
|
}
|
422
422
|
|
423
423
|
static string_t CastOperation(icu::Calendar *calendar, timestamp_t input, Vector &result) {
|
@@ -175,7 +175,7 @@ struct ICUTableRange {
|
|
175
175
|
range.AddFunction(TableFunction({LogicalType::TIMESTAMP_TZ, LogicalType::TIMESTAMP_TZ, LogicalType::INTERVAL},
|
176
176
|
ICUTableRangeFunction, Bind<false>, Init));
|
177
177
|
CreateTableFunctionInfo range_func_info(range);
|
178
|
-
catalog.AddFunction(context,
|
178
|
+
catalog.AddFunction(context, range_func_info);
|
179
179
|
|
180
180
|
// generate_series: similar to range, but inclusive instead of exclusive bounds on the RHS
|
181
181
|
TableFunctionSet generate_series("generate_series");
|
@@ -183,7 +183,7 @@ struct ICUTableRange {
|
|
183
183
|
TableFunction({LogicalType::TIMESTAMP_TZ, LogicalType::TIMESTAMP_TZ, LogicalType::INTERVAL},
|
184
184
|
ICUTableRangeFunction, Bind<true>, Init));
|
185
185
|
CreateTableFunctionInfo generate_series_func_info(generate_series);
|
186
|
-
catalog.AddFunction(context,
|
186
|
+
catalog.AddFunction(context, generate_series_func_info);
|
187
187
|
}
|
188
188
|
};
|
189
189
|
|
@@ -626,7 +626,7 @@ struct ICUTimeBucket : public ICUDateFunc {
|
|
626
626
|
|
627
627
|
CreateScalarFunctionInfo func_info(set);
|
628
628
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
629
|
-
catalog.AddFunction(context,
|
629
|
+
catalog.AddFunction(context, func_info);
|
630
630
|
}
|
631
631
|
};
|
632
632
|
|
@@ -268,7 +268,7 @@ struct ICULocalTimestampFunc : public ICUDateFunc {
|
|
268
268
|
|
269
269
|
CreateScalarFunctionInfo func_info(set);
|
270
270
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
271
|
-
catalog.AddFunction(context,
|
271
|
+
catalog.AddFunction(context, func_info);
|
272
272
|
}
|
273
273
|
};
|
274
274
|
|
@@ -288,7 +288,7 @@ struct ICULocalTimeFunc : public ICUDateFunc {
|
|
288
288
|
|
289
289
|
CreateScalarFunctionInfo func_info(set);
|
290
290
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
291
|
-
catalog.AddFunction(context,
|
291
|
+
catalog.AddFunction(context, func_info);
|
292
292
|
}
|
293
293
|
};
|
294
294
|
|
@@ -335,7 +335,7 @@ struct ICUTimeZoneFunc : public ICUDateFunc {
|
|
335
335
|
|
336
336
|
CreateScalarFunctionInfo func_info(set);
|
337
337
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
338
|
-
catalog.AddFunction(context,
|
338
|
+
catalog.AddFunction(context, func_info);
|
339
339
|
}
|
340
340
|
};
|
341
341
|
|
@@ -348,7 +348,7 @@ void RegisterICUTimeZoneFunctions(ClientContext &context) {
|
|
348
348
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
349
349
|
TableFunction tz_names("pg_timezone_names", {}, ICUTimeZoneFunction, ICUTimeZoneBind, ICUTimeZoneInit);
|
350
350
|
CreateTableFunctionInfo tz_names_info(std::move(tz_names));
|
351
|
-
catalog.CreateTableFunction(context,
|
351
|
+
catalog.CreateTableFunction(context, tz_names_info);
|
352
352
|
|
353
353
|
// Scalar functions
|
354
354
|
ICUTimeZoneFunc::AddFunction("timezone", context);
|
@@ -33,24 +33,24 @@ void JSONExtension::Load(DuckDB &db) {
|
|
33
33
|
CreateTypeInfo type_info(JSONCommon::JSON_TYPE_NAME, json_type);
|
34
34
|
type_info.temporary = true;
|
35
35
|
type_info.internal = true;
|
36
|
-
catalog.CreateType(context,
|
36
|
+
catalog.CreateType(context, type_info);
|
37
37
|
|
38
38
|
// JSON casts
|
39
39
|
JSONFunctions::RegisterCastFunctions(DBConfig::GetConfig(context).GetCastFunctions());
|
40
40
|
|
41
41
|
// JSON scalar functions
|
42
42
|
for (auto &fun : JSONFunctions::GetScalarFunctions()) {
|
43
|
-
catalog.CreateFunction(context,
|
43
|
+
catalog.CreateFunction(context, fun);
|
44
44
|
}
|
45
45
|
|
46
46
|
// JSON table functions
|
47
47
|
for (auto &fun : JSONFunctions::GetTableFunctions()) {
|
48
|
-
catalog.CreateTableFunction(context,
|
48
|
+
catalog.CreateTableFunction(context, fun);
|
49
49
|
}
|
50
50
|
|
51
51
|
// JSON pragma functions
|
52
52
|
for (auto &fun : JSONFunctions::GetPragmaFunctions()) {
|
53
|
-
catalog.CreatePragmaFunction(context,
|
53
|
+
catalog.CreatePragmaFunction(context, fun);
|
54
54
|
}
|
55
55
|
|
56
56
|
// JSON replacement scan
|
@@ -59,12 +59,12 @@ void JSONExtension::Load(DuckDB &db) {
|
|
59
59
|
|
60
60
|
// JSON copy function
|
61
61
|
auto copy_fun = JSONFunctions::GetJSONCopyFunction();
|
62
|
-
catalog.CreateCopyFunction(context,
|
62
|
+
catalog.CreateCopyFunction(context, copy_fun);
|
63
63
|
|
64
64
|
// JSON macro's
|
65
65
|
for (idx_t index = 0; json_macros[index].name != nullptr; index++) {
|
66
66
|
auto info = DefaultFunctionGenerator::CreateInternalMacroInfo(json_macros[index]);
|
67
|
-
catalog.CreateFunction(context, info
|
67
|
+
catalog.CreateFunction(context, *info);
|
68
68
|
}
|
69
69
|
|
70
70
|
con.Commit();
|
@@ -372,11 +372,11 @@ public:
|
|
372
372
|
}
|
373
373
|
|
374
374
|
result->column_ids = input.column_ids;
|
375
|
-
result->filters = input.filters;
|
375
|
+
result->filters = input.filters.get();
|
376
376
|
result->row_group_index = 0;
|
377
377
|
result->file_index = 0;
|
378
378
|
result->batch_index = 0;
|
379
|
-
result->max_threads = ParquetScanMaxThreads(context, input.bind_data);
|
379
|
+
result->max_threads = ParquetScanMaxThreads(context, input.bind_data.get());
|
380
380
|
if (input.CanRemoveFilterColumns()) {
|
381
381
|
result->projection_ids = input.projection_ids;
|
382
382
|
const auto table_types = bind_data.types;
|
@@ -721,15 +721,16 @@ void ParquetExtension::Load(DuckDB &db) {
|
|
721
721
|
auto &context = *con.context;
|
722
722
|
auto &catalog = Catalog::GetSystemCatalog(context);
|
723
723
|
|
724
|
-
if (catalog.GetEntry<TableFunctionCatalogEntry>(context, DEFAULT_SCHEMA, "parquet_scan",
|
724
|
+
if (catalog.GetEntry<TableFunctionCatalogEntry>(context, DEFAULT_SCHEMA, "parquet_scan",
|
725
|
+
OnEntryNotFound::RETURN_NULL)) {
|
725
726
|
throw InvalidInputException("Parquet extension is either already loaded or built-in");
|
726
727
|
}
|
727
728
|
|
728
|
-
catalog.CreateCopyFunction(context,
|
729
|
-
catalog.CreateTableFunction(context,
|
730
|
-
catalog.CreateTableFunction(context,
|
731
|
-
catalog.CreateTableFunction(context,
|
732
|
-
catalog.CreateTableFunction(context,
|
729
|
+
catalog.CreateCopyFunction(context, info);
|
730
|
+
catalog.CreateTableFunction(context, cinfo);
|
731
|
+
catalog.CreateTableFunction(context, pq_scan);
|
732
|
+
catalog.CreateTableFunction(context, meta_cinfo);
|
733
|
+
catalog.CreateTableFunction(context, schema_cinfo);
|
733
734
|
con.Commit();
|
734
735
|
|
735
736
|
auto &config = DBConfig::GetConfig(*db.instance);
|