diff options
author | mvel <mvel@yandex-team.com> | 2022-12-19 11:56:43 +0300 |
---|---|---|
committer | mvel <mvel@yandex-team.com> | 2022-12-19 11:56:43 +0300 |
commit | 52a9e6a2c317d50ff61a20a705c0848623256c1d (patch) | |
tree | eb653ae7c11370bf4641fc1e0eba8d3ce60a9947 /contrib/libs/icu/common/unisetspan.cpp | |
parent | ee24e6c1f52ac838f4acd7773fcac520dec6267b (diff) | |
download | ydb-52a9e6a2c317d50ff61a20a705c0848623256c1d.tar.gz |
[yql] Avoid heavy checksums calculation in local mode ()
Суть проблемы: YQL свой файловый сторадж устраивает так: считает от файла md5 и по этому ключу его кладёт.
Ключ считается долго и печально, и при запуске в локальном режиме этот самый подсчёт md5 занимает примерно половину времени.
Делаем так: в режиме `YQL_LOCAL == "1"` вместо настоящей контрольной суммы подсовываем md5 от имени файла (в локальном сторадже работают хардлинки и дедупликация не болит).
При этом возникает неприятность, которую приходится слегка костылить на стыке с YT: нельзя сообщать YT эту фальшивую контрольную сумму.
В сам кипарис загружается небольшая часть файлов при запуске тестов, так что подсчёт чексуммы на стороне YT при покладке в свой сторадж уже не сильно жмёт.
А вот в YQL-ный сторадж грузится много разных сошек и в некоторых случаях ещё и бинарь `mrproc`, и вот тут мы очень много экономим, не вычисляя md5 много раз.
Diffstat (limited to 'contrib/libs/icu/common/unisetspan.cpp')
0 files changed, 0 insertions, 0 deletions