aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp
Commit message (Collapse)AuthorAgeFilesLines
* YT-21233: Drop dependency on yson in library/cpp/yt/error by switch to ↵arkady-e1ppa2024-12-2613-593/+594
| | | | | | | std::string everywhere done commit_hash:8a83afa39917ba66a5161388a7cd74a4488d9908
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-261-1/+1
| | | | commit_hash:9c38bbe53e87d788bf4d4e1155e2c080773bacc0
* YT-23859: Various memory tracking improvementssabdenovch2024-12-253-2/+12
| | | | commit_hash:c87fb9e7c5cb8a896dd4b758ad73c5c540339df7
* YT-21233: Issues and tidying up of rXXXXXXarkady-e1ppa2024-12-256-59/+39
| | | | commit_hash:19481c9fbb008aab4f4d676f1a3a242f6e90e90e
* YT-21233: Adjust (To/From)ErrorAttributeValue CPOs, revert ConvertTo ↵arkady-e1ppa2024-12-2523-106/+3493
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | becoming CPO, move TErrorCode and TError to library/cpp/yt/error \[nodiff:caesar\] List of changes: 1) Make `ConvertTo` a normal function again (basically, a revert of previous change). It turned out to be very inconvenient entry point 2) Introduce concept for "Primitive types" which are handled without yt/core module. Please note that inclusion of core **does not** affect work with primitive types (otherwise we would be facing and ODR violation). These are numerics, duration, instant, string-like objects and guid 3) Introduce `FromErrorAttributeValue` which is a substitute to `ConvertTo` with special behavior (see below) 4) Scheme for (de-)serialization has changed: 1) Primitive types are handled via `ConvertToTextYsonString` and `ConvertFromTextYsonString` 2) Other types are not supported without yt/core. Otherwise `ConvertToYsonString(value, EYsonFormat::Text)` used for serialization and `ConvertTo<T>(value)` for deserialization. 5) New format of attribute value storage allows to not care about concrete type of the attribute (text yson strings can be detected since they start with `\"` and deserialized so are text yson bools, everything else is already human readable). This drops dependency on `TTokenizer` 6) Some small parts (e.g. enums or constants or aliases) of yt/core/misc files were moved to library/cpp/yt/\* locations and re-included to drop dependencies of stripped\_error on them 7) `TErrorAttributes` is now a simple hash map instead of a handle to `IAttributeDictionary` 8) `ExtractFromAttributes` weak symbol is finally moved to library/cpp/yt/error due to point 9 allowing to fully drop dependency on `IAttributeDictionary`. Combined with point 7 this drops dep on yt/core/ytree altogether 9) Moved `TErrorCode` to library/cpp/yt/error. There is a logger there which forces dep on library/cpp/yt/logging. It is not required really, and can be later removed 10) Moved `TError` with format and macroes to library/cpp/yt/error. It still (and probably forever will) depend on yson. What can be done next: Switch TYsonString to TString and move ConvertTo/FromTextYsonString to library/cpp/yt/error. This would remove dep on library/cpp/yt/yson\_string commit_hash:6f11dc478ab782a1f98a5aedcd45a4800d3f4e7b
* Fixed bug in loggingsabdenovch2024-12-251-1/+1
| | | | commit_hash:a31e79330e3ec72361743d932a47fc67f92fb7a0
* Intermediate changesrobot-piglet2024-12-246-0/+134
| | | | commit_hash:41c16027e2f796197b98307419a63da9fa3f1a88
* [library/cpp/hyperscan] Dropsupport ()sskvor2024-12-244-17/+3
| | | | commit_hash:f0e4b9bf3cc217402238bf1efcc4b8695f6a3709
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-231-1/+1
| | | | commit_hash:b3038041fc2814c9002bbb5e5d9e96520a3fb60a
* YT-18571: Pluggable singleton registrybabenko2024-12-215-252/+0
| | | | commit_hash:534ea2df7961feea6932d1e243df20d825c7fe69
* YT-21233: Introduce Convert(To/From)TextYsonString in ↵arkady-e1ppa2024-12-212-2/+515
| | | | | | library/cpp/yt/yson_string to be later used for error attribute serialization commit_hash:f7632c9622c71e023148c9454a9889e9cac75ecd
* Adapt type erasure to clang-16 compiler bugarkady-e1ppa2024-12-191-5/+16
| | | | commit_hash:690d178c5c95ad7106aee6c26a031e6eeec1f093
* Intermediate changesrobot-piglet2024-12-191-1/+1
| | | | commit_hash:57515baf5d33fd78c2555cb2b3351498b9189c72
* fix redirects port selectionkuzmich3212024-12-181-1/+1
| | | | | | | Если в редиректе приходит url со схемой **http (без s !!!)**, то порт выставляется ++443++ Этот PR фиксит это поведение commit_hash:ef496e4f1cb08f3ba3b9b0f89a34f077cce38e00
* Use AnyObject to remove type erasure logic from yt/yt/corearkady-e1ppa2024-12-173-7/+19
| | | | commit_hash:79b0a0b437e41879c3a7d4c079ab571bbaafd45f
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-171-1/+1
| | | | commit_hash:b1f7ffc9e8130d80fb923e4c0f5dc58bc68ce1be
* YT: Add unchecked enums to protobuf interophitsedesen2024-12-161-0/+132
| | | | commit_hash:b1009a56f6e70d65c67b72f3079ed71e43b48a7c
* Introduce (any use) YT_STATIC_INITIALIZERbabenko2024-12-141-0/+19
| | | | commit_hash:7d3055f901a21e63f7860f443252a86e9895fd08
* introduce TCgiParameters::GetLastilnurkh2024-12-133-0/+19
| | | | commit_hash:db2785d0d17510b53aeaec1e30271e6b08e07db1
* Switch all tests to atd from snapshotthegeorg2024-12-122-43/+1
| | | | commit_hash:a9a7c2df09742a540851227c4fcb7d925edd9793
* TCgiParameters: add lifetimebound checkswarmer2024-12-122-9/+9
| | | | commit_hash:d483051ff24331bcda69d8afa1413158c9e01925
* TQuickCgiParam: add lifetimebound checksswarmer2024-12-122-3/+3
| | | | commit_hash:70fc3cba6ca373b988a4d0c0de6d8e2b2028b495
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-111-1/+1
| | | | commit_hash:ed49b07b792d94c6e0da54331828dae3a5cd1e2b
* Limit the number of gRPC threadsandybg2024-12-101-0/+2
| | | | | | | Add test to verify the threads limit Try to fix; Limit number of gRPC threads. commit_hash:d525e94e0ef397bf05d367ec9904d674c17d0d76
* Make sure returned TStringBuffers do not change during splitter lifetime. ↵pnv12024-12-102-14/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also make input string reference const <https://github.com/ydb-platform/ydb/issues/12306> Make input string reference const Make sure returned TStringBuffers do not change during splitter lifetime splitter.Consume() возвращает TStringBuf. Если в колонке есть ескейпинг кавычек, вся колонка обрамлена двойными кавычками (`"`), а внутри для ескейпинга двойных кавычек используются две идущие подряд двойные кавычки (`""`). В таком случае вернуть TStringBuf, ссылающийся на кусок входящего TString, не получится, т.к. нужной подстроки в нем не существует. Для этого используется мембер TVector\<TStringbuf\> CustomStrings. В него накидываются нужные кусочки из исходной строки и в конце складываются в мембер-строку TString CustomString Например, из строки `"abc""cde""efg"` копились кусочки `abc"`, `cde"`, `efg` и в конце склеивались. И возвращался TStringBuf из этой строки-мембера. Проблема в том, что если в другой колонке той же строки также встречались кавычки с ескейпингом, эта строка-мембер CustomString очищалась. При том, что на неё всё еще ссылался возвращённый ранее TStringBuf. В итоге "предыдущий" TStringBuf либо начинал ссылаться на часть новой строки, если новая строка была длиннее, либо на часть новой строки \+ рандомный набор байт в памяти, если новая строка оказывалась короче. Фикс в том, чтобы хранить все строки, сгенерённые сплиттером, всё время жизни сплиттера commit_hash:aa4957e1d8030cd48d06eaa16a7ad61e878348f8
* Enable -Wimplicit-fallthrough (and also fix the discovered issues)babenko2024-12-081-0/+1
| | | | commit_hash:06fd6ffa9ec768168c34547fcdfb15e2f9ad75f8
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-081-1/+1
| | | | commit_hash:39518295f157c161f6c0a25a1df24b32a6cff296
* Intermediate changesrobot-piglet2024-12-073-0/+78
| | | | commit_hash:7b57398460fb850349f35c543b8cef63f6490b6b
* Fix various issuespogorelov2024-12-066-9/+8
| | | | commit_hash:50f729d3716d8b1f5b852cfc008e228172fb79c4
* Intermediate changesrobot-piglet2024-12-061-7/+7
| | | | commit_hash:87c6f9898873ec96e4aa9dc4c7df86e67a11e313
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-051-1/+1
| | | | commit_hash:7dbe58a7a8a7980241f20a2e53ace94a62c541df
* YT-23698: Check size of ref counted objectslukyan2024-12-041-0/+4
| | | | commit_hash:97159680fa733af4212c094e917bc78a47eb0c15
* Intermediate changesrobot-piglet2024-12-044-0/+1462
| | | | commit_hash:cbf5ab65e5ba1b2d286f974a6b6b463ed152b381
* YTORM: Validate pivot keys in slicer; add a comment about proxy_role optiondgolear2024-12-031-1/+1
| | | | commit_hash:2404d2a79d4961dedf17f7d0cbec38bcabb78014
* Intermediate changesrobot-piglet2024-12-031-1/+1
| | | | commit_hash:6f0d83406a245425d156e961c3519d5bd822857a
* Add missing configs + add mold and coverage to piglet YDB configmaxim-yurchuk2024-12-025-6/+138
| | | | commit_hash:c0112c0409a0972eb859b32a014980020df7ce0a
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-12-021-1/+1
| | | | commit_hash:fac37a51fb5b0fdd660beccb43a2a8861308e39f
* Intermediate changesrobot-piglet2024-12-014-85/+130
| | | | commit_hash:320ab736dea5dae74e2ec8c344fb915be4c4df99
* YT-21233: Introduce ToAttributeValue cpo which removes dependency of ↵arkady-e1ppa2024-11-297-32/+92
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | TErrorAttribute from yt/core Plan: 1) Remove `IAttributedDictionary` type from the public API. \+ 2) Remove `Set` method from public API in favor of `operator<<=`. \+ 3) Adopt `ConvertTo<T>` (or other name) CPO with proper extension into `NYT::NYson::ConvertTo` from `yt/core`. 4) Use CPO from (3) to eliminate direct dependency on `yt/core` of `Get/Find` methods from attributes API. 5) Adopt `ConvertToYsonString` (or other name) CPO with proper extension into `yt/core` customisations. 6) Use CPO from (5) to eliminate direct dependency on `yt/core` of `TErrorAttribute` ctor. 7) Swap attributes implementation to the one which doesn’t use `IAttributeDictionary`. 8) At this point `stripped_error*` can be moved to library/cpp/yt and so can recursively dependant on THROW macro methods `Get/Find/…`. 9) Adjust CPO’s to work with `std::string` instead of `TYsonString` assuming text format to be used (maybe `TString` for now). 10) Remove dep of `library/cpp/yt/error` on `yson` entirely. This pr addresses 5-6 steps of plan. Below is a brief explanation of design decisions. We also expressed everything related to key-value code in terms of aliases of `TErrorAttribute` so that later we could make a relatively simple switch to `std::string`. We expect to do steps 7-8 in the next pull request as everything should be ready commit_hash:de9feca2bd24d823b33d904ef0fa5f4856f9b020
* Intermediate changesrobot-piglet2024-11-296-5134/+0
| | | | commit_hash:60e005cdf76d5bff2a370a6b8f35ef4f6792f414
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-11-291-1/+1
| | | | commit_hash:81fb555c66d5ab8c5c260658be43bb7b61ab2622
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-11-261-1/+1
| | | | commit_hash:d73b9a2f472fbcf5f3ebc54787a964c15fba2504
* YDB Import 625robot-ydb-importer2024-11-2212-406/+0
| | | | commit_hash:bbf24592c367fa158fbc53e041fe367374d0750e
* Signed Enumeratedeep2024-11-221-5/+12
| | | | commit_hash:af73a3ea146e2eb6141cb19913e534d75ba573fd
* [arc][getopt]fix enforcment of RequiredArgument().DisableSpaceParse()tldr2024-11-213-9/+27
| | | | commit_hash:9c2ada5b95be3f810d2750406d74d839bd2598ff
* New version of the tld SKIP_CHECK SKIP_REVIEWrobot-ratatosk2024-11-201-1/+1
| | | | commit_hash:4591e7a8126c65672359f0cdee64ad789ca9ae74
* YDB Import 623robot-ydb-importer2024-11-197-318/+0
| | | | commit_hash:89b2dfdd1bb0d38b205f23744652b1db522e06c4
* Intermediate changesrobot-piglet2024-11-191-1/+1
| | | | commit_hash:1bcd4492a3f6a28a2be8e27b5660e98cc8e4c8d0
* use C++ atomic with proper default constructoreivanov892024-11-191-10/+14
| | | | commit_hash:1c25da3ce2125ca4d8d1e3e026ef0d2a6d0aa355
* Enable -Wformat under clang-clthegeorg2024-11-181-1/+1
| | | | commit_hash:b2cf3b80a36e4867b03a79f3e2c552f19920016f