aboutsummaryrefslogtreecommitdiffstats
path: root/yql/essentials/udfs/common/stat/static
diff options
context:
space:
mode:
authorvvvv <vvvv@yandex-team.com>2025-02-28 10:39:13 +0300
committervvvv <vvvv@yandex-team.com>2025-02-28 11:42:27 +0300
commita4ebae0970f4e2748cb954f4fd56b40b42841809 (patch)
treeea7df8ec396ad5916a42577c692c6eefdd6e78bf /yql/essentials/udfs/common/stat/static
parentb0a2365a3ba58c8b1c2ef256d2e061662b2b5900 (diff)
downloadydb-a4ebae0970f4e2748cb954f4fd56b40b42841809.tar.gz
YQL-19495 handle NaNs in TDigest
commit_hash:6ceaf9a8cc4d034c2829780bed37396d25f9056d
Diffstat (limited to 'yql/essentials/udfs/common/stat/static')
-rw-r--r--yql/essentials/udfs/common/stat/static/stat_udf.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/yql/essentials/udfs/common/stat/static/stat_udf.h b/yql/essentials/udfs/common/stat/static/stat_udf.h
index f0c11a6812..36a1bad7c4 100644
--- a/yql/essentials/udfs/common/stat/static/stat_udf.h
+++ b/yql/essentials/udfs/common/stat/static/stat_udf.h
@@ -22,7 +22,7 @@ namespace {
UdfTerminate((TStringBuilder() << GetPos() << " Invalid combination of delta/K values").data());
}
- return TUnboxedValuePod(new TDigestResource(delta, K, args[0].Get<double>()));
+ return TUnboxedValuePod(new TDigestResource(delta, K, args[0].Get<double>(), true));
}
SIMPLE_STRICT_UDF(TTDigest_AddValue, TResource<DigestResourceName>(TResource<DigestResourceName>, double)) {
@@ -46,14 +46,17 @@ namespace {
SIMPLE_UDF(TTDigest_Deserialize, TResource<DigestResourceName>(char*)) {
Y_UNUSED(valueBuilder);
- return TUnboxedValuePod(new TDigestResource(TString(args[0].AsStringRef())));
+ return TUnboxedValuePod(new TDigestResource(TString(args[0].AsStringRef()), true));
}
SIMPLE_STRICT_UDF(TTDigest_Merge, TResource<DigestResourceName>(TResource<DigestResourceName>, TResource<DigestResourceName>)) {
Y_UNUSED(valueBuilder);
TDigestResource::Validate(args[0]);
TDigestResource::Validate(args[1]);
- return TUnboxedValuePod(new TDigestResource(static_cast<TDigestResource*>(args[0].AsBoxed().Get())->Get(), static_cast<TDigestResource*>(args[1].AsBoxed().Get())->Get()));
+ return TUnboxedValuePod(new TDigestResource(
+ static_cast<TDigestResource*>(args[0].AsBoxed().Get())->Get(),
+ static_cast<TDigestResource*>(args[1].AsBoxed().Get())->Get(),
+ true));
}
/*