<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/library/cpp/yt/threading, branch CLI_2.8.0</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=CLI_2.8.0</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=CLI_2.8.0'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2023-12-05T09:25:06Z</updated>
<entry>
<title>External build system generator release 65</title>
<updated>2023-12-05T09:25:06Z</updated>
<author>
<name>robot-ya-builder</name>
<email>robot-ya-builder@yandex-team.com</email>
</author>
<published>2023-12-05T08:10:55Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=96458ea3c773a8a3edb707f73db0cdedbfcfad90'/>
<id>urn:sha1:96458ea3c773a8a3edb707f73db0cdedbfcfad90</id>
<content type='text'>
Update tools: yexport, os-yexport
</content>
</entry>
<entry>
<title>add  darwin-arm64 CMakeLists</title>
<updated>2023-11-20T11:34:20Z</updated>
<author>
<name>dcherednik</name>
<email>dcherednik@ydb.tech</email>
</author>
<published>2023-11-20T10:23:37Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ffff7a34e41bf0dd7d5e0f3d78aeaebbf56200e6'/>
<id>urn:sha1:ffff7a34e41bf0dd7d5e0f3d78aeaebbf56200e6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Active spinlock tracking from pr3151306. Added TracelessGuards to disable mentioned tracking</title>
<updated>2023-11-16T15:51:45Z</updated>
<author>
<name>arkady-e1ppa</name>
<email>arkady-e1ppa@yandex-team.com</email>
</author>
<published>2023-11-16T14:24:02Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=6b40f0f1060a3e9d54347e52c7dc8fb278e6e86b'/>
<id>urn:sha1:6b40f0f1060a3e9d54347e52c7dc8fb278e6e86b</id>
<content type='text'>
1) Добавлена возможность инструментировать ваш любимый мьютекс/спинлок/что-либо с методами Acquire/Release со схожим смыслом. Делается это засчет методов ```NThreading::NDetail::RecordSpinlockAcquired```/```NThreading::NDetail::RecordSpinlockReleased```. Они отслеживают число захваченных спинлоков.

2) Добавлен макрос ```REGISTER_TRACKED_SPIN_LOCK_CLASS```, который позволяет номинально проверить на этапе компиляции, что данный спинлок отслеживается.

3) Добавлен метод ```NThreading::VerifyNoSpinlockAffinity```, который коркается, если число захваченных спинлоков больше нуля.

4) Добавлены Traceless версии (почти) всех гардов, чтобы можно было не отслеживать конкретную критическую секцию, если очень нужно.

5) Внутри файберного ```WaitUntilSet``` вызывается ```VerifyNoSpinlockAffinity``` -- делать ```WaitFor``` или ```Yield``` внутри отслеживаемых критических секций нельзя. Если очень хочется -- используем TracelessGuard нужного вида.

6) Теперь отслеживаются такие спинлоки и их наследники: ```TSpinLock```, ```TRecursiveSpinLock```, ```TReaderWriterSpinLock```.

7) Зарегистрированы как отслеживаемые все вышеперечисленные спинлоки и их Padded версии.

8) Все эти действия имеют эффект только в дебаг сборке. В релизе вся эта диагностика стирается.
</content>
</entry>
<entry>
<title>Y_VERIFY-&gt;Y_ABORT_UNLESS at ^l</title>
<updated>2023-10-09T20:57:14Z</updated>
<author>
<name>ilnurkh</name>
<email>ilnurkh@yandex-team.com</email>
</author>
<published>2023-10-09T20:39:40Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=e601ca03f859335d57ecff2e5aa6af234b6052ed'/>
<id>urn:sha1:e601ca03f859335d57ecff2e5aa6af234b6052ed</id>
<content type='text'>
https://clubs.at.yandex-team.ru/arcadia/29404
</content>
</entry>
<entry>
<title>YT-19210: expose YQL shared library for YT.</title>
<updated>2023-07-28T21:02:16Z</updated>
<author>
<name>max42</name>
<email>max42@yandex-team.com</email>
</author>
<published>2023-07-28T21:02:16Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=73b89de71748a21e102d27b9f3ed1bf658766cb5'/>
<id>urn:sha1:73b89de71748a21e102d27b9f3ed1bf658766cb5</id>
<content type='text'>
After this, a new target libyqlplugin.so appears. in open-source cmake build.
Diff in open-source YDB repo looks like the following: https://paste.yandex-team.ru/f302bdb4-7ef2-4362-91c7-6ca45f329264</content>
</entry>
<entry>
<title>revert rXXXXXX (see discusstion in pr), will commit again more pci-dss friendly way</title>
<updated>2023-07-27T09:28:50Z</updated>
<author>
<name>kulikov</name>
<email>kulikov@yandex-team.com</email>
</author>
<published>2023-07-27T09:28:50Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4a7691c519e6114e013dc1dd0c3b2528154507f9'/>
<id>urn:sha1:4a7691c519e6114e013dc1dd0c3b2528154507f9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>try to get rid of locks and allocations for elastic queue thread pool</title>
<updated>2023-07-21T10:59:33Z</updated>
<author>
<name>kulikov</name>
<email>kulikov@yandex-team.com</email>
</author>
<published>2023-07-21T10:59:33Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=5706cb392271ea40eab053314e7c0f4d9d4547ba'/>
<id>urn:sha1:5706cb392271ea40eab053314e7c0f4d9d4547ba</id>
<content type='text'>
In case of heavy load and high rps current thread pool implementation seems to have problems at least with contention on lock inside condvar (long futex wait calls from http server listener thread), so try to implement something more efficient:
 - replace condvar with TEventCounter implementation without internal lock (pthread condvar maintains waiters wakeup order, thread pool doesn't need it);
 - introduce well-known bounded mpmc queue over ring buffer;
 - get rid of TDecrementingWrapper;
 - add options to turn on new pool in library/cpp/http/server and search/daemons (will remove after adoption);
 - make elastic queue ut check both versions;
 - workaround problems with android/arm build targets.</content>
</entry>
<entry>
<title>Revert "YT-19324: move YT provider to ydb/library/yql"</title>
<updated>2023-06-30T08:13:34Z</updated>
<author>
<name>max42</name>
<email>max42@yandex-team.com</email>
</author>
<published>2023-06-30T08:13:34Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=3e1899838408bbad47622007aa382bc8a2b01f87'/>
<id>urn:sha1:3e1899838408bbad47622007aa382bc8a2b01f87</id>
<content type='text'>
This reverts commit ca272f12fdd0e8d5c3e957fc87939148f1caaf72, reversing
changes made to 49f8acfc8b0b5c0071b804423bcf53fda26c7c12.</content>
</entry>
<entry>
<title>YT-19324: move YT provider to ydb/library/yql</title>
<updated>2023-06-30T00:37:03Z</updated>
<author>
<name>max42</name>
<email>max42@yandex-team.com</email>
</author>
<published>2023-06-30T00:37:03Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=fac2bd72b4b31ec3238292caf8fb2a8aaa6d6c4a'/>
<id>urn:sha1:fac2bd72b4b31ec3238292caf8fb2a8aaa6d6c4a</id>
<content type='text'>
This commit is formed by the following script: https://paste.yandex-team.ru/6f92e4b8-efc5-4d34-948b-15ee2accd7e7/text.
This commit has zero effect on all projects that depend on YQL.

The summary of changes:
- `yql/providers/yt -&gt; ydb/library/yql/providers/yt `- the whole implementation of YT provider is moved into YDB code base for further export as a part of YT YQL plugin shared library;
- `yql/providers/stat/{expr_nodes,uploader} -&gt; ydb/library/yql/providers/stat/{expr_nodes,uploader}` - a small interface without implementation and the description of stat expr nodes;
- `yql/core/extract_predicate/ut -&gt; ydb/library/yql/core/extract_predicate/ut`;
- `yql/core/{ut,ut_common} -&gt; ydb/library/yql/core/{ut,ut_common}`;
- `yql/core` is gone;
- `yql/library/url_preprocessing -&gt; ydb/library/yql/core/url_preprocessing`.

**NB**: all new targets inside `ydb/` are under `IF (NOT CMAKE_EXPORT)` clause which disables them from open-source cmake generation and ya make build. They will be enabled in the subsequent commits.</content>
</entry>
<entry>
<title>add ymake export to ydb</title>
<updated>2023-06-13T08:05:01Z</updated>
<author>
<name>alexv-smirnov</name>
<email>alex@ydb.tech</email>
</author>
<published>2023-06-13T08:05:01Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=bf0f13dd39ee3e65092ba3572bb5b1fcd125dcd0'/>
<id>urn:sha1:bf0f13dd39ee3e65092ba3572bb5b1fcd125dcd0</id>
<content type='text'>
</content>
</entry>
</feed>
