Skip to content

Commit e252af1

Browse files
committed
bundle-jemalloc: Re-add jemalloc
1 parent 5cc518f commit e252af1

File tree

147 files changed

+14697
-15835
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

147 files changed

+14697
-15835
lines changed

src/duckdb/extension/core_functions/aggregate/holistic/mad.cpp

+1-7
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ AggregateFunction GetTypedMedianAbsoluteDeviationAggregateFunction(const Logical
276276
return fun;
277277
}
278278

279-
AggregateFunction GetMedianAbsoluteDeviationAggregateFunctionInternal(const LogicalType &type) {
279+
AggregateFunction GetMedianAbsoluteDeviationAggregateFunction(const LogicalType &type) {
280280
switch (type.id()) {
281281
case LogicalTypeId::FLOAT:
282282
return GetTypedMedianAbsoluteDeviationAggregateFunction<float, float, float>(type, type);
@@ -314,12 +314,6 @@ AggregateFunction GetMedianAbsoluteDeviationAggregateFunctionInternal(const Logi
314314
}
315315
}
316316

317-
AggregateFunction GetMedianAbsoluteDeviationAggregateFunction(const LogicalType &type) {
318-
auto result = GetMedianAbsoluteDeviationAggregateFunctionInternal(type);
319-
result.errors = FunctionErrors::CAN_THROW_RUNTIME_ERROR;
320-
return result;
321-
}
322-
323317
unique_ptr<FunctionData> BindMedianAbsoluteDeviationDecimal(ClientContext &context, AggregateFunction &function,
324318
vector<unique_ptr<Expression>> &arguments) {
325319
function = GetMedianAbsoluteDeviationAggregateFunction(arguments[0]->return_type);

src/duckdb/extension/core_functions/scalar/array/array_functions.cpp

+2-9
Original file line numberDiff line numberDiff line change
@@ -210,13 +210,9 @@ template <class OP>
210210
static void AddArrayFoldFunction(ScalarFunctionSet &set, const LogicalType &type) {
211211
const auto array = LogicalType::ARRAY(type, optional_idx());
212212
if (type.id() == LogicalTypeId::FLOAT) {
213-
ScalarFunction function({array, array}, type, ArrayGenericFold<float, OP>, ArrayGenericBinaryBind);
214-
BaseScalarFunction::SetReturnsError(function);
215-
set.AddFunction(function);
213+
set.AddFunction(ScalarFunction({array, array}, type, ArrayGenericFold<float, OP>, ArrayGenericBinaryBind));
216214
} else if (type.id() == LogicalTypeId::DOUBLE) {
217-
ScalarFunction function({array, array}, type, ArrayGenericFold<double, OP>, ArrayGenericBinaryBind);
218-
BaseScalarFunction::SetReturnsError(function);
219-
set.AddFunction(function);
215+
set.AddFunction(ScalarFunction({array, array}, type, ArrayGenericFold<double, OP>, ArrayGenericBinaryBind));
220216
} else {
221217
throw NotImplementedException("Array function not implemented for type %s", type.ToString());
222218
}
@@ -271,9 +267,6 @@ ScalarFunctionSet ArrayCrossProductFun::GetFunctions() {
271267
ScalarFunction({float_array, float_array}, float_array, ArrayFixedCombine<float, CrossProductOp, 3>));
272268
set.AddFunction(
273269
ScalarFunction({double_array, double_array}, double_array, ArrayFixedCombine<double, CrossProductOp, 3>));
274-
for (auto &func : set.functions) {
275-
BaseScalarFunction::SetReturnsError(func);
276-
}
277270
return set;
278271
}
279272

src/duckdb/extension/core_functions/scalar/bit/bitstring.cpp

+4-11
Original file line numberDiff line numberDiff line change
@@ -46,9 +46,6 @@ ScalarFunctionSet BitStringFun::GetFunctions() {
4646
ScalarFunction({LogicalType::VARCHAR, LogicalType::INTEGER}, LogicalType::BIT, BitStringFunction<true>));
4747
bitstring.AddFunction(
4848
ScalarFunction({LogicalType::BIT, LogicalType::INTEGER}, LogicalType::BIT, BitStringFunction<false>));
49-
for (auto &func : bitstring.functions) {
50-
BaseScalarFunction::SetReturnsError(func);
51-
}
5249
return bitstring;
5350
}
5451

@@ -67,10 +64,8 @@ struct GetBitOperator {
6764
};
6865

6966
ScalarFunction GetBitFun::GetFunction() {
70-
ScalarFunction func({LogicalType::BIT, LogicalType::INTEGER}, LogicalType::INTEGER,
71-
ScalarFunction::BinaryFunction<string_t, int32_t, int32_t, GetBitOperator>);
72-
BaseScalarFunction::SetReturnsError(func);
73-
return func;
67+
return ScalarFunction({LogicalType::BIT, LogicalType::INTEGER}, LogicalType::INTEGER,
68+
ScalarFunction::BinaryFunction<string_t, int32_t, int32_t, GetBitOperator>);
7469
}
7570

7671
//===--------------------------------------------------------------------===//
@@ -95,10 +90,8 @@ static void SetBitOperation(DataChunk &args, ExpressionState &state, Vector &res
9590
}
9691

9792
ScalarFunction SetBitFun::GetFunction() {
98-
ScalarFunction function({LogicalType::BIT, LogicalType::INTEGER, LogicalType::INTEGER}, LogicalType::BIT,
99-
SetBitOperation);
100-
BaseScalarFunction::SetReturnsError(function);
101-
return function;
93+
return ScalarFunction({LogicalType::BIT, LogicalType::INTEGER, LogicalType::INTEGER}, LogicalType::BIT,
94+
SetBitOperation);
10295
}
10396

10497
//===--------------------------------------------------------------------===//

src/duckdb/extension/core_functions/scalar/blob/base64.cpp

+1-3
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,7 @@ ScalarFunction ToBase64Fun::GetFunction() {
3939
}
4040

4141
ScalarFunction FromBase64Fun::GetFunction() {
42-
ScalarFunction function({LogicalType::VARCHAR}, LogicalType::BLOB, Base64DecodeFunction);
43-
BaseScalarFunction::SetReturnsError(function);
44-
return function;
42+
return ScalarFunction({LogicalType::VARCHAR}, LogicalType::BLOB, Base64DecodeFunction);
4543
}
4644

4745
} // namespace duckdb

src/duckdb/extension/core_functions/scalar/blob/encode.cpp

+1-3
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,7 @@ ScalarFunction EncodeFun::GetFunction() {
3434
}
3535

3636
ScalarFunction DecodeFun::GetFunction() {
37-
ScalarFunction function({LogicalType::BLOB}, LogicalType::VARCHAR, DecodeFunction);
38-
BaseScalarFunction::SetReturnsError(function);
39-
return function;
37+
return ScalarFunction({LogicalType::BLOB}, LogicalType::VARCHAR, DecodeFunction);
4038
}
4139

4240
} // namespace duckdb

src/duckdb/extension/core_functions/scalar/date/date_part.cpp

+4-20
Original file line numberDiff line numberDiff line change
@@ -1705,9 +1705,6 @@ ScalarFunctionSet GetGenericDatePartFunction(scalar_function_t date_func, scalar
17051705
operator_set.AddFunction(ScalarFunction({LogicalType::TIMESTAMP}, LogicalType::BIGINT, std::move(ts_func), nullptr,
17061706
nullptr, ts_stats, DATE_CACHE));
17071707
operator_set.AddFunction(ScalarFunction({LogicalType::INTERVAL}, LogicalType::BIGINT, std::move(interval_func)));
1708-
for (auto &func : operator_set.functions) {
1709-
BaseScalarFunction::SetReturnsError(func);
1710-
}
17111708
return operator_set;
17121709
}
17131710

@@ -2022,11 +2019,7 @@ ScalarFunctionSet QuarterFun::GetFunctions() {
20222019
}
20232020

20242021
ScalarFunctionSet DayOfWeekFun::GetFunctions() {
2025-
auto set = GetDatePartFunction<DatePart::DayOfWeekOperator>();
2026-
for (auto &func : set.functions) {
2027-
BaseScalarFunction::SetReturnsError(func);
2028-
}
2029-
return set;
2022+
return GetDatePartFunction<DatePart::DayOfWeekOperator>();
20302023
}
20312024

20322025
ScalarFunctionSet ISODayOfWeekFun::GetFunctions() {
@@ -2053,14 +2046,9 @@ ScalarFunctionSet TimezoneFun::GetFunctions() {
20532046
auto operator_set = GetDatePartFunction<DatePart::TimezoneOperator>();
20542047

20552048
// PG also defines timezone(INTERVAL, TIME_TZ) => TIME_TZ
2056-
ScalarFunction function({LogicalType::INTERVAL, LogicalType::TIME_TZ}, LogicalType::TIME_TZ,
2057-
DatePart::TimezoneOperator::BinaryFunction<interval_t, dtime_tz_t, dtime_tz_t>);
2058-
2059-
operator_set.AddFunction(function);
2060-
2061-
for (auto &func : operator_set.functions) {
2062-
BaseScalarFunction::SetReturnsError(func);
2063-
}
2049+
operator_set.AddFunction(
2050+
ScalarFunction({LogicalType::INTERVAL, LogicalType::TIME_TZ}, LogicalType::TIME_TZ,
2051+
DatePart::TimezoneOperator::BinaryFunction<interval_t, dtime_tz_t, dtime_tz_t>));
20642052

20652053
return operator_set;
20662054
}
@@ -2253,10 +2241,6 @@ ScalarFunctionSet DatePartFun::GetFunctions() {
22532241
date_part.AddFunction(StructDatePart::GetFunction<interval_t>(LogicalType::INTERVAL));
22542242
date_part.AddFunction(StructDatePart::GetFunction<dtime_tz_t>(LogicalType::TIME_TZ));
22552243

2256-
for (auto &func : date_part.functions) {
2257-
BaseScalarFunction::SetReturnsError(func);
2258-
}
2259-
22602244
return date_part;
22612245
}
22622246

src/duckdb/extension/core_functions/scalar/date/date_trunc.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -728,9 +728,6 @@ ScalarFunctionSet DateTruncFun::GetFunctions() {
728728
DateTruncFunction<date_t, timestamp_t>, DateTruncBind));
729729
date_trunc.AddFunction(ScalarFunction({LogicalType::VARCHAR, LogicalType::INTERVAL}, LogicalType::INTERVAL,
730730
DateTruncFunction<interval_t, interval_t>));
731-
for (auto &func : date_trunc.functions) {
732-
BaseScalarFunction::SetReturnsError(func);
733-
}
734731
return date_trunc;
735732
}
736733

src/duckdb/extension/core_functions/scalar/date/make_date.cpp

+2-11
Original file line numberDiff line numberDiff line change
@@ -140,17 +140,12 @@ ScalarFunctionSet MakeDateFun::GetFunctions() {
140140
{"year", LogicalType::BIGINT}, {"month", LogicalType::BIGINT}, {"day", LogicalType::BIGINT}};
141141
make_date.AddFunction(
142142
ScalarFunction({LogicalType::STRUCT(make_date_children)}, LogicalType::DATE, ExecuteStructMakeDate<int64_t>));
143-
for (auto &func : make_date.functions) {
144-
BaseScalarFunction::SetReturnsError(func);
145-
}
146143
return make_date;
147144
}
148145

149146
ScalarFunction MakeTimeFun::GetFunction() {
150-
ScalarFunction function({LogicalType::BIGINT, LogicalType::BIGINT, LogicalType::DOUBLE}, LogicalType::TIME,
151-
ExecuteMakeTime<int64_t>);
152-
BaseScalarFunction::SetReturnsError(function);
153-
return function;
147+
return ScalarFunction({LogicalType::BIGINT, LogicalType::BIGINT, LogicalType::DOUBLE}, LogicalType::TIME,
148+
ExecuteMakeTime<int64_t>);
154149
}
155150

156151
ScalarFunctionSet MakeTimestampFun::GetFunctions() {
@@ -160,10 +155,6 @@ ScalarFunctionSet MakeTimestampFun::GetFunctions() {
160155
LogicalType::TIMESTAMP, ExecuteMakeTimestamp<int64_t>));
161156
operator_set.AddFunction(
162157
ScalarFunction({LogicalType::BIGINT}, LogicalType::TIMESTAMP, ExecuteMakeTimestamp<int64_t>));
163-
164-
for (auto &func : operator_set.functions) {
165-
BaseScalarFunction::SetReturnsError(func);
166-
}
167158
return operator_set;
168159
}
169160

src/duckdb/extension/core_functions/scalar/date/time_bucket.cpp

-3
Original file line numberDiff line numberDiff line change
@@ -364,9 +364,6 @@ ScalarFunctionSet TimeBucketFun::GetFunctions() {
364364
LogicalType::DATE, TimeBucketOriginFunction<date_t>));
365365
time_bucket.AddFunction(ScalarFunction({LogicalType::INTERVAL, LogicalType::TIMESTAMP, LogicalType::TIMESTAMP},
366366
LogicalType::TIMESTAMP, TimeBucketOriginFunction<timestamp_t>));
367-
for (auto &func : time_bucket.functions) {
368-
BaseScalarFunction::SetReturnsError(func);
369-
}
370367
return time_bucket;
371368
}
372369

src/duckdb/extension/core_functions/scalar/date/to_interval.cpp

+26-52
Original file line numberDiff line numberDiff line change
@@ -165,94 +165,68 @@ struct ToMicroSecondsOperator {
165165
};
166166

167167
ScalarFunction ToMillenniaFun::GetFunction() {
168-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
169-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToMillenniaOperator>);
170-
BaseScalarFunction::SetReturnsError(function);
171-
return function;
168+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
169+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToMillenniaOperator>);
172170
}
173171

174172
ScalarFunction ToCenturiesFun::GetFunction() {
175-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
176-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToCenturiesOperator>);
177-
BaseScalarFunction::SetReturnsError(function);
178-
return function;
173+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
174+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToCenturiesOperator>);
179175
}
180176

181177
ScalarFunction ToDecadesFun::GetFunction() {
182-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
183-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToDecadesOperator>);
184-
BaseScalarFunction::SetReturnsError(function);
185-
return function;
178+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
179+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToDecadesOperator>);
186180
}
187181

188182
ScalarFunction ToYearsFun::GetFunction() {
189-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
190-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToYearsOperator>);
191-
BaseScalarFunction::SetReturnsError(function);
192-
return function;
183+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
184+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToYearsOperator>);
193185
}
194186

195187
ScalarFunction ToQuartersFun::GetFunction() {
196-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
197-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToQuartersOperator>);
198-
BaseScalarFunction::SetReturnsError(function);
199-
return function;
188+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
189+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToQuartersOperator>);
200190
}
201191

202192
ScalarFunction ToMonthsFun::GetFunction() {
203-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
204-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToMonthsOperator>);
205-
BaseScalarFunction::SetReturnsError(function);
206-
return function;
193+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
194+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToMonthsOperator>);
207195
}
208196

209197
ScalarFunction ToWeeksFun::GetFunction() {
210-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
211-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToWeeksOperator>);
212-
BaseScalarFunction::SetReturnsError(function);
213-
return function;
198+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
199+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToWeeksOperator>);
214200
}
215201

216202
ScalarFunction ToDaysFun::GetFunction() {
217-
ScalarFunction function({LogicalType::INTEGER}, LogicalType::INTERVAL,
218-
ScalarFunction::UnaryFunction<int32_t, interval_t, ToDaysOperator>);
219-
BaseScalarFunction::SetReturnsError(function);
220-
return function;
203+
return ScalarFunction({LogicalType::INTEGER}, LogicalType::INTERVAL,
204+
ScalarFunction::UnaryFunction<int32_t, interval_t, ToDaysOperator>);
221205
}
222206

223207
ScalarFunction ToHoursFun::GetFunction() {
224-
ScalarFunction function({LogicalType::BIGINT}, LogicalType::INTERVAL,
225-
ScalarFunction::UnaryFunction<int64_t, interval_t, ToHoursOperator>);
226-
BaseScalarFunction::SetReturnsError(function);
227-
return function;
208+
return ScalarFunction({LogicalType::BIGINT}, LogicalType::INTERVAL,
209+
ScalarFunction::UnaryFunction<int64_t, interval_t, ToHoursOperator>);
228210
}
229211

230212
ScalarFunction ToMinutesFun::GetFunction() {
231-
ScalarFunction function({LogicalType::BIGINT}, LogicalType::INTERVAL,
232-
ScalarFunction::UnaryFunction<int64_t, interval_t, ToMinutesOperator>);
233-
BaseScalarFunction::SetReturnsError(function);
234-
return function;
213+
return ScalarFunction({LogicalType::BIGINT}, LogicalType::INTERVAL,
214+
ScalarFunction::UnaryFunction<int64_t, interval_t, ToMinutesOperator>);
235215
}
236216

237217
ScalarFunction ToSecondsFun::GetFunction() {
238-
ScalarFunction function({LogicalType::DOUBLE}, LogicalType::INTERVAL,
239-
ScalarFunction::UnaryFunction<double, interval_t, ToSecondsOperator>);
240-
BaseScalarFunction::SetReturnsError(function);
241-
return function;
218+
return ScalarFunction({LogicalType::DOUBLE}, LogicalType::INTERVAL,
219+
ScalarFunction::UnaryFunction<double, interval_t, ToSecondsOperator>);
242220
}
243221

244222
ScalarFunction ToMillisecondsFun::GetFunction() {
245-
ScalarFunction function({LogicalType::DOUBLE}, LogicalType::INTERVAL,
246-
ScalarFunction::UnaryFunction<double, interval_t, ToMilliSecondsOperator>);
247-
BaseScalarFunction::SetReturnsError(function);
248-
return function;
223+
return ScalarFunction({LogicalType::DOUBLE}, LogicalType::INTERVAL,
224+
ScalarFunction::UnaryFunction<double, interval_t, ToMilliSecondsOperator>);
249225
}
250226

251227
ScalarFunction ToMicrosecondsFun::GetFunction() {
252-
ScalarFunction function({LogicalType::BIGINT}, LogicalType::INTERVAL,
253-
ScalarFunction::UnaryFunction<int64_t, interval_t, ToMicroSecondsOperator>);
254-
BaseScalarFunction::SetReturnsError(function);
255-
return function;
228+
return ScalarFunction({LogicalType::BIGINT}, LogicalType::INTERVAL,
229+
ScalarFunction::UnaryFunction<int64_t, interval_t, ToMicroSecondsOperator>);
256230
}
257231

258232
} // namespace duckdb

src/duckdb/extension/core_functions/scalar/generic/binning.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,6 @@ ScalarFunctionSet EquiWidthBinsFun::GetFunctions() {
500500
for (auto &function : functions.functions) {
501501
function.serialize = EquiWidthBinSerialize;
502502
function.deserialize = EquiWidthBinDeserialize;
503-
BaseScalarFunction::SetReturnsError(function);
504503
}
505504
return functions;
506505
}

src/duckdb/extension/core_functions/scalar/list/array_slice.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@ ScalarFunctionSet ListSliceFun::GetFunctions() {
449449
ScalarFunction fun({LogicalType::ANY, LogicalType::ANY, LogicalType::ANY}, LogicalType::ANY, ArraySliceFunction,
450450
ArraySliceBind);
451451
fun.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
452-
BaseScalarFunction::SetReturnsError(fun);
452+
453453
ScalarFunctionSet set;
454454
set.AddFunction(fun);
455455
fun.arguments.push_back(LogicalType::BIGINT);

src/duckdb/extension/core_functions/scalar/list/list_aggregates.cpp

-2
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,6 @@ static unique_ptr<FunctionData> ListAggregatesBind(ClientContext &context, Scala
468468
// found a matching function, bind it as an aggregate
469469
auto best_function = func.functions.GetFunctionByOffset(best_function_idx.GetIndex());
470470
if (IS_AGGR) {
471-
bound_function.errors = best_function.errors;
472471
return ListAggregatesBindFunction<IS_AGGR>(context, bound_function, child_type, best_function, arguments);
473472
}
474473

@@ -513,7 +512,6 @@ static unique_ptr<FunctionData> ListUniqueBind(ClientContext &context, ScalarFun
513512
ScalarFunction ListAggregateFun::GetFunction() {
514513
auto result = ScalarFunction({LogicalType::LIST(LogicalType::ANY), LogicalType::VARCHAR}, LogicalType::ANY,
515514
ListAggregateFunction, ListAggregateBind);
516-
BaseScalarFunction::SetReturnsError(result);
517515
result.null_handling = FunctionNullHandling::SPECIAL_HANDLING;
518516
result.varargs = LogicalType::ANY;
519517
result.serialize = ListAggregatesBindData::SerializeFunction;

src/duckdb/extension/core_functions/scalar/list/list_distance.cpp

-6
Original file line numberDiff line numberDiff line change
@@ -87,9 +87,6 @@ ScalarFunctionSet ListDistanceFun::GetFunctions() {
8787
for (auto &type : LogicalType::Real()) {
8888
AddListFoldFunction<DistanceOp>(set, type);
8989
}
90-
for (auto &func : set.functions) {
91-
BaseScalarFunction::SetReturnsError(func);
92-
}
9390
return set;
9491
}
9592

@@ -114,9 +111,6 @@ ScalarFunctionSet ListCosineSimilarityFun::GetFunctions() {
114111
for (auto &type : LogicalType::Real()) {
115112
AddListFoldFunction<CosineSimilarityOp>(set, type);
116113
}
117-
for (auto &func : set.functions) {
118-
BaseScalarFunction::SetReturnsError(func);
119-
}
120114
return set;
121115
}
122116

0 commit comments

Comments
 (0)