<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/yql/essentials/core/histogram, branch main</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=main</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2026-05-07T08:14:59Z</updated>
<entry>
<title>YQL-20095: Enable readability-uppercase-literal-suffix</title>
<updated>2026-05-07T08:14:59Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-05-07T07:48:47Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=d61f72b6ff7f331f79e46db4bcaada0c6ed95ba3'/>
<id>urn:sha1:d61f72b6ff7f331f79e46db4bcaada0c6ed95ba3</id>
<content type='text'>
commit_hash:41791bb9a63f1993010fb68562e9a5607927307d
</content>
</entry>
<entry>
<title>Functions needed for optimizer and range predicates in EWH and CMS</title>
<updated>2026-04-16T17:22:49Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2026-04-16T16:18:38Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ad0969b6cc4f8d410faafb2755e378515e820785'/>
<id>urn:sha1:ad0969b6cc4f8d410faafb2755e378515e820785</id>
<content type='text'>
* Added new functions, in EWH and CMS, needed for optimizer's cardinality estimation logic.

* Added new functions needed for range predicates in equi-width histogram.
commit_hash:bf5522da92ae356b3f424debda4d6a5b9aff4114
</content>
</entry>
<entry>
<title>Upgrading EWH estimator functions</title>
<updated>2026-04-14T16:31:51Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2026-04-14T16:08:18Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=1f97e7b2ac92c32052bf5aa1a283535bc8a0a490'/>
<id>urn:sha1:1f97e7b2ac92c32052bf5aa1a283535bc8a0a490</id>
<content type='text'>
Improved estimating functions of equi-width histograms.

Also, made StaticSize function public which is necessary to be used in building statistics.
commit_hash:346729e9c7ba8717e0ba5559d69889947edf782e
</content>
</entry>
<entry>
<title>update histograms</title>
<updated>2026-04-09T09:01:44Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2026-04-09T08:12:59Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ad08afcad66d398f17fc89a250f2437163027609'/>
<id>urn:sha1:ad08afcad66d398f17fc89a250f2437163027609</id>
<content type='text'>
This PR is a part of a larger PR. In current PR, several necessary functions are integrated such as:

- GetBorderValue
- GetBinarySize

In addition, several test cases are added, and slightly improved code and added comments to the code.
commit_hash:3ba09208a2bdf33ed19401128b865573e273b2d2
</content>
</entry>
<entry>
<title>YQL-20095: Enable modernize-avoid-c-arrays</title>
<updated>2026-02-19T09:38:43Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-02-19T09:00:25Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=0b99b902a66bff8b7f9fa9e99b6f3078f1c1adc8'/>
<id>urn:sha1:0b99b902a66bff8b7f9fa9e99b6f3078f1c1adc8</id>
<content type='text'>
commit_hash:da491ee93c4f4d3c885c7908a22b4d5d66c80388
</content>
</entry>
<entry>
<title>YQL-20095: Enable google-explicit-constructor</title>
<updated>2026-01-23T13:17:10Z</updated>
<author>
<name>vitya-smirnov</name>
<email>vitya-smirnov@yandex-team.com</email>
</author>
<published>2026-01-23T12:36:47Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=5ec2ab12d84c8edd135d4a89d87e2fbd2b281f4e'/>
<id>urn:sha1:5ec2ab12d84c8edd135d4a89d87e2fbd2b281f4e</id>
<content type='text'>
commit_hash:4d77ad10fd4db303459ec4e45e139967c7fc8196
</content>
</entry>
<entry>
<title>replaced prohibited std::optional and std::nullptr</title>
<updated>2025-12-26T06:38:23Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2025-12-26T06:20:33Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ee270ae6f484ff2a889792067629cb184f343440'/>
<id>urn:sha1:ee270ae6f484ff2a889792067629cb184f343440</id>
<content type='text'>
Replaced the usage of std::optional and std::nullptr with TMaybe.

The reason is they cause failure in CUDA built, described here

&lt;https://nda.ya.ru/t/fN2gGMcU7QhbuJ&gt;
commit_hash:ab5df413900ec98adf1a922bea32792d03c2d4c3
</content>
</entry>
<entry>
<title>optimized equi-width histogram</title>
<updated>2025-12-22T15:12:03Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2025-12-22T14:38:57Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=57f3173bf7afcd2bb85f08f0545f9d06c8417ba2'/>
<id>urn:sha1:57f3173bf7afcd2bb85f08f0545f9d06c8417ba2</id>
<content type='text'>
* Now, histogram is build based on min, max, and number of buckets. Thus, we optimized its memory usage and improved runtime. We do not need to store bucket border values anymore and bucket search is now O(1) and no need for binary search.
* Comparing floating point numbers still happen but only comparing with min and max values from different histogram object. To address the known issues in comparing float/double values, adaptive approach is integrated to dynamically select the epsilon. This is expected to work well with large values as well as numbers close to zero.
* Added support for new data types such as float, i8, and ui8.
commit_hash:cc76490319c2b3708e6c8d9bc299ba415a9b2127
</content>
</entry>
<entry>
<title>PR including adapted equi-width histogram for analyze command</title>
<updated>2025-12-15T13:16:39Z</updated>
<author>
<name>yizenov</name>
<email>yizenov@yandex-team.com</email>
</author>
<published>2025-12-15T12:59:15Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=0021df334b4598335130179afd94519f196d09a2'/>
<id>urn:sha1:0021df334b4598335130179afd94519f196d09a2</id>
<content type='text'>
The changes to the histogram class allow its use via the ANALYZE command to build statistics with histograms, for cardinality estimation in queries with range predicates. Also, the changes are  made to minimize dependencies between the usage logic and histogram itself, such as handling supported data types within the class of histogram.

Additional changes:

* ~~Increased the type for number of buckets in histogram to ui64 bits~~

* Added restricted access to bucket values

* Several bug fixes and checks in histogram class and its unit test
commit_hash:d42418b1da36e7c63ec6c1f5ed380e3029afee53
</content>
</entry>
<entry>
<title>YQL-20086 invert flag</title>
<updated>2025-10-10T14:08:12Z</updated>
<author>
<name>vvvv</name>
<email>vvvv@yandex-team.com</email>
</author>
<published>2025-10-10T13:31:33Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=98f2ee1a36436bada54371eef656138d98dd40e0'/>
<id>urn:sha1:98f2ee1a36436bada54371eef656138d98dd40e0</id>
<content type='text'>
commit_hash:a6b640bc576263b62884a0b4187ba79c893e13d9
</content>
</entry>
</feed>
