| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\ \ |
|
| | |/ |
|
| | | |
|
| |/
|
| |
Co-authored-by: Alexander Kotov <[email protected]>
|
| | |
|
| |\ |
|
| | | |
|
| |\ \ |
|
| | |/ |
|
| |\ \
| |/
|/| |
|
| | |\ |
|
| | | |
| | |
| | |
| | |
| | |
| | | |
contrib/libs/zstd06: backport facebook/zstd@e50ed1fa3ac5857b6be914ec818a71c914789d4f — Fix undefined behavior when srcSize==1
contrib/libs/zstd06: backport facebook/zstd@cf409a7e2a4182530496f1b690a6c0a898b6d8dc — floor srcLog at ZSTD_HASHLOG_MIN in ZSTD_adjustCParams
commit_hash:33a74ae6c8c82727d3e4ffe1d869d27a943ae963
|
| | | |
| | |
| | |
| | | |
commit_hash:469502ac214838a72fed41d91ea10b4f420379a4
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
### Проблема
libbacktrace парсит DWARF abbrev-таблицу заново для каждого CU — кэша по offset в build_address_map нет. Инструменты, дедуплицирующие .debug_abbrev между CU (llvm-bolt --update-debug-sections, dwz, -flto=full), сводят все таблицы к одной общей, на которую ссылаются все CU разом - и стоимость инициализации символизатора становится O(N_CU × размер общей таблицы). На BOLT-бинаре yabs-server (\~70k CU) первый же резолв бэктрейса разворачивает в память 70 тысяч копий одной и той же таблицы: 15.7 ГиБ анонимной памяти, в проде - OOM-цикл сервиса при включённой DWARF-символизации. Дедупликация таблиц есть и без BOLT (линкер мёржит одинаковые), поэтому эффект, в меньшем масштабе, заметен везде.
### Воспроизведение
<https://nda.ya.ru/t/L_uavEhP7jBnqo>
```bash
cd junk/denkitaev/libbacktrace_debug/repro
ya make -r && ./repro # .debug_abbrev не дедуплицированна
ya make -r -DUSE_LTO=yes && ./repro # .debug_abbrev дедуплицированна
```
### Фикс
Кэш распарсенных таблиц по abbrev_offset внутри build_address_map: таблица парсится один раз, CU получают shallow-копии. Кэш локален для одного вызова (одна .debug_abbrev-секция; потокобезопасность не меняется), владеет таблицами; fail-путь освобождает их ровно один раз — прежний per-unit free_abbrevs при шаринге дал бы double-free. Горячий путь резолва не тронут.
#|
||
**<a href="https://nda.ya.ru/t/s7nuA8_37jBnqq" target="_blank"> Echo tests</a>**
||
|#
commit_hash:d101e82766f99efbc214a894c1e0971822ba0485
|
| | | |
| | |
| | |
| | | |
commit_hash:56b2152787054956a435aacc30e4fac599abd1b7
|
| | | |
| | |
| | |
| | | |
commit_hash:495661965ba43a59b6637e923fe4e03a07c21882
|
| | | |
| | |
| | |
| | | |
commit_hash:38591191870b1e6c570e260aed459c016f81a64f
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | | |
Python-клиент (обертка над С\+\+ клиентом) UA с fork support виснет в `fork()` (\>50%): `TClientSession::CheckGrpcCallInactivity` (inactivity-watchdog на потоке gRPC completion-queue) брал сессионный лок `with_lock` не проверив что не идет форк. Пока pthread_atfork-обработчик `TClient::PreFork` держит этот лок в `WaitAll()`, поллер застревает на CheckGrpcCallInactivity -\> сессия не закрывается -\> `fork()` не завершается.
Фикс: `CheckGrpcCallInactivity` захватывает лок `TryAcquire` \+ выход по `ForkInProgress` - как уже делает `Poll()`
commit_hash:79b1f727d8ecc9b54e386b586f4f49bf1d6512d8
|
| | | |
| | |
| | |
| | | |
commit_hash:2d3c54c918706f97b85d6afcd116dc95aaf7dae6
|
| | | |
| | |
| | |
| | | |
commit_hash:c0c30cc8da8dcce3b02a489b3f5d0688402f5003
|
| | | |
| | |
| | |
| | | |
commit_hash:7e764940a6e26341022cd8c1c2d8453f203e7b1a
|
| | | |
| | |
| | |
| | | |
commit_hash:78b02e1e92874488f64c4d1dc2f5d9930b87c279
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`golang.org/x/[email protected]` update addresses security issues:
*-5005 / CVE-2026-39833](https://pkg.go.dev/vuln/-5005) ([^1])
*-5006 / CVE-2026-39832](https://pkg.go.dev/vuln/-5006) ([^1])
*-5013 / CVE-2026-46597](https://pkg.go.dev/vuln/-5013) ([^1])
*-5014 / CVE-2026-39828](https://pkg.go.dev/vuln/-5014) ([^1])
*-5015 / CVE-2026-39835](https://pkg.go.dev/vuln/-5015) ([^1])
*-5016 / CVE-2026-39827](https://pkg.go.dev/vuln/-5016) ([^1])
*-5017 / CVE-2026-39830](https://pkg.go.dev/vuln/-5017) ([^1])
*-5018 / CVE-2026-39829](https://pkg.go.dev/vuln/-5018) ([^1])
*-5019 / CVE-2026-39831](https://pkg.go.dev/vuln/-5019) ([^1])
*-5020 / CVE-2026-39834](https://pkg.go.dev/vuln/-5020) ([^1])
*-5021 / CVE-2026-42508](https://pkg.go.dev/vuln/-5021) ([^1])
*-5023 / CVE-2026-46595](https://pkg.go.dev/vuln/-5023) ([^1])
*-5033 / CVE-2026-46598](https://pkg.go.dev/vuln/-5033) ([^1])
`golang.org/x/[email protected]` update addresses security issues:
*-4918 / CVE-2026-33814](https://pkg.go.dev/vuln/-4918)
*-5025 / CVE-2026-42506](https://pkg.go.dev/vuln/-5025) ([^2])
*-5026 / CVE-2026-39821](https://pkg.go.dev/vuln/-5026) ([^2])
*-5027 / CVE-2026-42502](https://pkg.go.dev/vuln/-5027) ([^2])
*-5028 / CVE-2026-25680](https://pkg.go.dev/vuln/-5028) ([^2])
*-5029 / CVE-2026-25681](https://pkg.go.dev/vuln/-5029) ([^2])
*-5030 / CVE-2026-27136](https://pkg.go.dev/vuln/-5030) ([^2])
`golang.org/x/[email protected]` update addresses security issue:
*-5024 / CVE-2026-39824](https://pkg.go.dev/vuln/-5024) ([^3])
Other updates are either dependency-related or are there to fix tests.
[^1]: https://groups.google.com/g/golang-announce/c/a082jnz-LvI
[^2]: https://groups.google.com/g/golang-announce/c/iI-mYSI0lu8
[^3]: https://groups.google.com/g/golang-announce/c/6MMI8Lj-Atg
commit_hash:72ce6a5d9fe2519c24072c9e08e99a1220c4cb4e
|
| | | |
| | |
| | |
| | | |
commit_hash:dbb5d28367be7cb318f0e373533600e70075b14c
|
| | | |
| | |
| | |
| | | |
commit_hash:16adc3694a02a636ae594b94a8747bad66a2ae62
|
| | | |
| | |
| | |
| | |
| | | |
Update tools: os_test_tool, ya_bin, os_ya, test_tool
commit_hash:67947cb92f0e1125ca1ce18d03fd958cc9d4b9d2
|
| | | |
| | |
| | |
| | |
| | | |
Update tools: ymake, os_ymake
commit_hash:21653d54aac40695ee994a64bb982176331aa99d
|
| |\ \ \ |
|
| | | | | |
|
| |\ \ \ \ |
|
| | |/ / / |
|
| |/ / / |
|
| |/ / |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
representation (#46374)
IValueArrowCodec reads/writes json values into properly typed arrays.
TEncodingPlainBuilder/TEncodingSparsedBuilder with same interface are used for building and compacting subcolumns.
|
| | | |
|
| |\ \ |
|
| | | | |
|
| |\ \ \
| |/ /
|/| | |
|
| | | | |
|
| |/ / |
|
| |\ \ |
|
| | | | |
|
| |/ / |
|
| | |
| |
| | |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
|
| | | |
|
| |\ \ |
|