Files
datastore/tests/performance/math.xml
T
Konstantin Bogdanov 38c3f36b44 Fix math function domain violations in performance test
Assisted-by: Claude Sonnet 4.5 via GitHub Copilot
2026-01-28 18:17:58 +01:00

80 lines
2.7 KiB
XML

<test>
<substitutions>
<substitution>
<name>func_slow</name>
<values>
<value>atan</value>
<value>cbrt</value>
<value>cos</value>
<value>sin</value>
<value>tan</value>
</values>
</substitution>
<substitution>
<name>func_slow_positive</name>
<values>
<value>lgamma</value>
<value>tgamma</value>
<value>log10</value>
</values>
</substitution>
<substitution>
<name>func</name>
<values>
<value>exp</value>
<value>exp2</value>
<value>exp10</value>
<value>sqrt</value>
<value>erf</value>
<value>erfc</value>
<value>sigmoid</value>
<value>tanh</value>
</values>
</substitution>
<substitution>
<name>func_positive</name>
<values>
<value>log</value>
<value>log2</value>
</values>
</substitution>
<substitution>
<name>func_bounded</name>
<values>
<value>asin</value>
<value>acos</value>
</values>
</substitution>
<substitution>
<name>arg</name>
<values>
<value>toFloat64(number)</value>
<value>toFloat32(number)</value>
<value>number</value>
</values>
</substitution>
<substitution>
<name>arg_positive</name>
<values>
<value>toFloat64(number + 1)</value>
<value>toFloat32(number + 1)</value>
<value>number + 1</value>
</values>
</substitution>
<substitution>
<name>arg_bounded</name>
<values>
<value>toFloat64(number % 1000) / 1000.0</value>
<value>toFloat32(number % 1000) / 1000.0</value>
<value>(number % 1000) / 1000.0</value>
</values>
</substitution>
</substitutions>
<query>SELECT count() FROM numbers(100000000) WHERE NOT ignore({func}({arg}))</query>
<query>SELECT count() FROM numbers(100000000) WHERE NOT ignore({func_positive}({arg_positive}))</query>
<query>SELECT count() FROM numbers(100000000) WHERE NOT ignore({func_bounded}({arg_bounded}))</query>
<query>SELECT count() FROM numbers(10000000) WHERE NOT ignore({func_slow}({arg}))</query>
<query>SELECT count() FROM numbers(10000000) WHERE NOT ignore({func_slow_positive}({arg_positive}))</query>
</test>