| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\ |
|
| | |
|
| |\ |
|
| | |
| | |
| | |
| | | |
commit_hash:d3338a1bff7bbd98b909624a96978006710dd89a
|
| | |
| | |
| | |
| | | |
commit_hash:8e8156e1330120223f9e7a5b850380a7c75a7929
|
| | |
| | |
| | |
| | | |
commit_hash:3baf0b19e0ee4df8ceb16ad17bd19f522cffe06f
|
| | |
| | |
| | |
| | | |
commit_hash:902cfa0c1b574c1addb5df96a4b38c792ae82258
|
| | |
| | |
| | |
| | |
| | |
| | | |
YT table
commit_hash:52e7cb121d510ac627eaa7e74b4802b8968b1ab1
|
| | |
| | |
| | |
| | |
| | | |
Unique source/resource sets, refactor templates
commit_hash:b23a8d4a220dc84dcb59d63e8924cc5e70537ba7
|
| | |
| | |
| | |
| | | |
commit_hash:3c10c54803265211cf64d4c98705be92ef0c8486
|
| | |
| | |
| | |
| | | |
commit_hash:cca2568fdd279c80e1af6d3c056c7bed92f690ca
|
| | |
| | |
| | |
| | |
| | |
| | | |
os_test_tool
commit_hash:c427f1614e027af269fddb3f287f6ec3f6cfd171
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
TWriterStarvingRWLock
Previously, it was possible that `TReaderWriterSpinLock` wouldn't let the writer through if there's a steady flow of readers.
This change addresses that by:
1. Prioritizing writers inside the spinlock by adding an additional `WriterReady` flag that writers set on arrival. This flag doesn't allow any readers to come through.
2. Adding the proper tests to verify this functionality, as well as spinlock's behaviour under forks.
3. Clarifying the documentation about spinlock guarantees
4. Adding a TLA+ model, formally specifying and verifying the guarantees of the new spinlock.
5. Renaming the old lock to `TWriterStarvingRWSpinLock`, and replacing all usages inside YT with the new version (renaming all usages outside of YT to the WriterStarving version).
This is a second attempt of REVIEW: 8233768, the first one was rolled back as it lead to deadlocks in user code with reentrant reader locks:
the case of `AcquireReader(thread0) -> AcquireWriter(thread1) -> AcquireReader(thread0)` is a deadlock, as `thread0` will not be able to acquire the lock (for the second time) before `thread1` frees writer lock, and `thread1` will not be able to acquire writer lock before the reader lock will be released by `thread0`, which won't happen until `thread0` acquires the lock for the second time. See/for more context and a real example of such situation. Analogous problem can happen with fibers: this is why you shouldn't allow context switches under the lock.
Wondering why this ugly name `WriterStarvingRWSpinLock` appeared in your beautiful code? No worries, if you are **sure** that you don't use reentrant locks or fiber switches under the lock, you can freely replace your usage with the new `ReaderWriterSpinLock`. The replacement is drop-in.
[nodiff:caesar]
commit_hash:97683f854defca00cc283f5a2a10a1730b3c9174
|
| | |
| | |
| | |
| | | |
commit_hash:b1ed324e2b774c388cc76403e9970975d5561717
|
| | |
| | |
| | |
| | | |
commit_hash:103a2a417e1039b8e61dc17b40bec9a9b6a7dfd1
|
| | |
| | |
| | |
| | | |
commit_hash:1278a9caa698516bc22582f545ae3e8685543759
|
| | |
| | |
| | |
| | |
| | | |
Cut classpath by common_dir
commit_hash:d49342ba8eea0705b4965f0c1ad7b9ac7bd9f8f3
|
| | |
| | |
| | |
| | |
| | | |
Update tools: test_tool, os_ya, ya_bin, os_test_tool
commit_hash:b739c38e84e158193f19913a89bc1b75fa758ccf
|
| | |
| | |
| | |
| | | |
commit_hash:d6538967a151a3aba3c806d3d1ba3f4c7ef1ae47
|
| | |
| | |
| | |
| | |
| | |
| | | |
methods
commit_hash:c71f62e346bef766379d7b3c3ac2933bb96ac543
|
| | |
| | |
| | |
| | | |
commit_hash:24b52143fbef864df48f3359b14f9e0294f367f5
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Type: improvement
Component: yql
---
Co-authored-by: Tony-Romanov [150126326+Tony-Romanov@users.noreply.github.com]
Pull Request resolved: https://github.com/ytsaurus/ytsaurus/pull/1180
Co-authored-by: aneporada <aneporada@yandex-team.com>
commit_hash:c400a5028a4894d48ccdad5c21353502afc1bfc0
|
| | |
| | |
| | |
| | | |
commit_hash:5d480768af407f35b6df9ca2c749f4fdd0cbdb3a
|
| | |
| | |
| | |
| | | |
commit_hash:3b3c9b5707e608f411cace07b0b7a41f2ec1f2cb
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
native protocol
## Changelog entry
* Type: feature
* Component: controller agent, native protocol
Move operation locking output dynamic tables from controller to native protocol
commit_hash:81c264c531329871d6b86bc5d5c1ddb8140b05d9
|
|/ / |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Co-authored-by: Eugene Arbatsky <elabpro@yandex-team.ru>
Co-authored-by: anton-bobkov <anton-bobkov@ydb.tech>
Co-authored-by: Ivan Blinkov <ivan@blinkov.ru>
Co-authored-by: Alexander Petrukhin <shmel1k@ydb.tech>
|
| |
| |
| |
| | |
Co-authored-by: azevaykin <145343289+azevaykin@users.noreply.github.com>
Co-authored-by: anton-bobkov <anton-bobkov@ydb.tech>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| | |
Co-authored-by: Ilnaz Nizametdinov <i.nizametdinov@gmail.com>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| | |
Co-authored-by: Vitaly Isaev <vitalyisaev2@gmail.com>
|
| | |
|
| | |
|
| | |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
<section id="quibbler-autodescription">
#### Отключение использования чанков для ESLint 📝
- 🔧 Отключено использование чанков в конфигурации ESLint, что уменьшает время обработки файлов до 0 секунд.
- ✨ Добавлен параметр `SIZE(MEDIUM)` в конфигурационные файлы для оптимизации сборки.
<a href="HIDDEN_URL"><font size="2">Autodescription by Code Assistant</font></a>
</section>
#### Отключение использования чанков для ESLint (``) 📝
- 🔧 Отключено использование чанков в конфигурации ESLint - для крупных проектов это в разы сокращает время работы тестов локально и в CI (вне distbuild), а также затраты ресурсов при любом варианте запуска
- ✨ Если в distbuild (в плашке) тесты не помещаются в 60 секунд, то необходимо выставить `SIZE(MEDIUM)` в `ya.make` проекта.
commit_hash:ef1d3688e977d634c41aa2a185607ee09a1d9598
|
| |
| |
| |
| | |
commit_hash:0e4b24c65451e75f168b456cd0d271ddebb7219d
|