summaryrefslogtreecommitdiffstats
path: root/yt/cpp/mapreduce/client
Commit message (Collapse)AuthorAgeFilesLines
* YT-21308: Minor codestyle tweakapachee2024-06-171-3/+3
| | | | | Fix indent a6a3500f712f343a6127243f63bb9d798e358fb3
* YT-21868: Static analysis of format string in loggingarkady-e1ppa2024-05-302-2/+7
| | | | | | | | | | | | | Added static analysis to format of YT_LOG_XXX macro's. We expect you to write format string as first or the second argument and follow the rules as if you are writing arguments for `NYT::Format`, which match those of printf: https://en.cppreference.com/w/cpp/io/c/fprintf plus few extra flags like 'v'. At the moment analyser checks if flags sequences is 1. Correctly terminated 2. Only contains specifiers valid for a given argument (if we are parsing nth argument of type T, then T must have all specifiers from its list of Conversion or Flag specifiers. (2) Also means that the number of flag sequences must match the number of arguments supplied to format. You can specialize `TFormatArg<T>` which is used to determine allowed Conversion and Flag specifiers to customise rules of static analysis. E.g. you can introduce new flags to the mix which you promise to parse in the related FormatValue function. If you feel like this produces to much overhead in terms of compile time, you are free to use macro YT_DISABLE_FORMAT_STATIC_ANALYSIS to turn the entire thing into a no-op. We have measured compile time to be affected by roughly 3-5% in a log intensive files. ae6def509474e8a42027bb4ed84ac040509b7c85
* YT-21308: Add redirect_stdout_to_stderr flag for C++ clientapachee2024-05-243-1/+11
| | | | | Adds redirect_stdout_to_stderr spec option for operations that allows writing to stdout as if it was stderr. 6a8ac5f21955a79848d86f72715628c7b8bb65c4
* [yt/cpp/mapreduce] YT-21405: Don't ignore backoff and pass actual exception ↵nadya732024-04-182-6/+23
| | | | | | | in Retry() Don't ignore backoff and pass actual exception in Retry() b821c02fd21c9f8115cd2a4896372a9fda69e5f6
* Fix more problems with RetryfulWriterV2ermolovd2024-04-174-13/+43
| | | | 404e999bcffb20d5497161a98f48f566b5245704
* BufferMemory usage for retryful writer v2ermolovd2024-04-132-0/+7
| | | | ca66c0e73475f3596f6fb2e4e655f2ec378a71a9
* Fix crash in retryful writer v2ermolovd2024-04-121-2/+2
| | | | d95cdb95b36efff7cbf942996a10ee4ff755bbfc
* Fix preedirs yt/cpp/mapreduce/library/table_schemanadya022024-04-041-1/+0
| | | | | fix preedirs 6bb186d9bd0ececb764c3e8596d8360098ad5124
* YT: Apply aliasing rules in CreateClientImplpechatnov2024-04-041-3/+1
| | | | | Поддерживаю алиасинг урлов для функции NYT::CreateClient c111a561639e4c8fdd73d9df66f41ec29e4dbe5e
* YT-18458: Introduce wide types into mapreduce interfacewhatsername2024-03-211-0/+6
| | | | 7ae047ef618cc44d7dd3e817dc27f2336d9e38c3
* Support building yt/cpp and yt/yt/core with vanilla protobufGrigory Reznikov2024-03-191-8/+9
| | | | | | | | | | | | | | After this PR yt/cpp and yt/yt/core are possible to be built both with Arcadia protobuf (that uses TString as a string) and vanilla protobuf (that uses std::string as a string). To achieve so, a couple of interoperability primitives are introduced. * `TProtobufString` is an alias to protobuf string type, i.e. it can be `TString` or `std::string` depending on the protobuf implementation. * `IsVanillaProtobuf` and `IsArcadiaProtobuf` are the constexpr boolean values that allow to check protobuf implementation both in the compile time and runtime. The most challenging interoperability issue solved here is a string copy between protobuf message and C++ code that has a form of `TString str = msg.str()`. This code works perfect with Arcadia protobuf but does not work with vanilla protobuf. To solve it, a previously introduced primitive `FromProto<TString>` is used. This expression makes the most efficient cast possible between protobuf string and C++ string. Internally, it is just a copy in both cases. Since TString is CoW by default, this expression is almost zero-cost (actually it's just one atomic operation), so no degradation is expected for YTsaurus server builds. The most hot code is handled differently to avoid even atomic operations (see `GetRequestTargetYPath`). In case of vanilla protobuf string is copied, however there are no places in C++ SDK where it might be a problem. If such issues would appear, performance-critial code can be rewritten in `GetRequestTargetYPath`-style. --- 1a6f3e02cb6e83915102c24b73bc8734f6a48e74 Pull Request resolved: https://github.com/ytsaurus/ytsaurus/pull/466
* YT-21141 Avoid content deduplication for files under 10MBorlovorlov2024-03-182-5/+8
| | | | febae4e49cd0f600bf21616025f210e99235cfdc
* add job_profile.cppuzhas2024-03-101-0/+141
| | | | 8571dcd93f2c4adc97e84f5a92373149b0d6e0f9
* Intermediate changesrobot-piglet2024-02-271-1/+33
|
* Intermediate changesrobot-piglet2024-02-122-21/+9
|
* YDB Import 552robot-ydb-importer2024-01-251-11/+4
|
* erm: Add new version for `@yatool/prebuilder`: `0.5.1` and set `0.5.1` as ↵robot-erm2024-01-256-6/+10
| | | | | | default Executed command: `./erm --verbose --profile update @yatool/prebuilder`
* feat contrib: aiogram 3armenqa2024-01-196-377/+0
| | | | Relates: https://st.yandex-team.ru/, https://st.yandex-team.ru/
* Library import 7 (#937)AlexSm2024-01-115-14/+14
|
* External build system generator release 65robot-ya-builder2023-12-051-3/+3
| | | | Update tools: yexport, os-yexport
* Increase timeout to decrease test flapsermolovd2023-12-051-2/+3
|
* [yt/cpp/mapreduce] YT-20588: Add more logs for readers and fix client_reader ↵nadya732023-11-281-2/+6
| | | | retries
* YT-19269: table writer implementation that doesn't wait for complete buffer ↵ermolovd2023-11-2813-13/+629
| | | | before sending to network
* YT-20315: Support retries of cross cell copyingnadya022023-11-241-2/+37
| | | | | | add options YT-20315: Support retries of cross cell copying
* Fix serialization of decimal type in TTableSchemaEgor Chunaev2023-11-231-2/+8
| | | | | | | | | | | | I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en Fix for https://github.com/ytsaurus/ytsaurus/issues/173 --- Pull Request resolved: https://github.com/ytsaurus/ytsaurus/pull/174 Co-authored-by: ermolovd <[email protected]>
* Revert "YT-20315: Support retries of cross cell copying"ermolovd2023-11-231-37/+2
| | | | | This reverts commit 9b45f88f366c2a170ab826922dd6eeaa64ea4192, reversing changes made to d6dc5a658da5b61fd71e72f1a60479989c5c64c5.
* YT-18863 Support 'deleted' field in NYT::TTableSchemaorlovorlov2023-11-221-0/+3
|
* YT-20315: Support retries of cross cell copyingnadya022023-11-221-2/+37
|
* add darwin-arm64 CMakeListsdcherednik2023-11-202-0/+73
|
* YT-20029: Support url schema for YT_PROXYwhatsername2023-11-151-6/+28
| | | | | Example YT_PROXY=https://freud.yt.yandex.net
* YT: fix duplicated proxy in url for write_file requestslysheva2023-11-151-1/+4
| | | | YT: fix duplicated proxy in url for write_file request
* add acquire buffer size to parallel file writeralxmopo3ov2023-10-312-0/+6
| | | | | | | | test with acquire ram buffers Add test on write with acquiring hard limit on file writer Implement acquire ram buffers setting for parallel file writer
* YT: yamaking missing cppleasid2023-10-286-0/+6
|
* YT-18571: Fix myriads of typosbabenko2023-10-231-1/+1
|
* add using http-proxy for reading table from YTannashest182023-10-225-1/+10
| | | | | | add using http-proxy for reading table from YT Нам нужна возможность ходить в YT через HTTP proxy для чтения таблиц, используя С++ клиент не из контура Яндекса, к сожалению, сейчас такой возможности нет. В этом ПР черновик изменения, которого нам достаточно https://a.yandex-team.ru/review/4676436/details - тут это же изменение в YT + коммит с тем, как мы планируем использовать
* Y_FAIL->Y_ABORT at '^yt'ilnurkh2023-10-173-7/+7
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* Possibility to get operation by its aliasermolovd2023-10-162-0/+12
|
* Y_VERIFY->Y_ABORT_UNLESS at ^ytilnurkh2023-10-0910-44/+44
| | | | https://clubs.at.yandex-team.ru/arcadia/29404
* support disk_request in user job specermolovd2023-09-281-0/+17
|
* YT-19885: Send impersonation in all requests when it existsmpereskokova2023-09-204-0/+23
|
* [yt/cpp/mapreduce] YT-19268: Lock memory for parallel writernadya732023-09-146-5/+28
|
* Add `layer_paths` user job spec option to the C++ interfacegaltsev2023-09-063-0/+12
|
* Fix input variable missprintsvidyuk2023-08-304-0/+24
|
* All .ll files support in LLVM_BCsvidyuk2023-08-304-24/+0
|
* Fix race in clientermolovd2023-08-242-3/+4
|
* YT-19445: do not write sort_by if it's emptyermolovd2023-08-091-1/+3
|
* YT-19210: expose YQL shared library for YT.max422023-07-2958-0/+11776
| | | | 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
* Revert "YT-19324: move YT provider to ydb/library/yql"max422023-06-3053-11481/+0
| | | | This reverts commit ca272f12fdd0e8d5c3e957fc87939148f1caaf72, reversing changes made to 49f8acfc8b0b5c0071b804423bcf53fda26c7c12.
* YT-19324: move YT provider to ydb/library/yqlmax422023-06-3053-0/+11481
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 -> 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} -> 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 -> ydb/library/yql/core/extract_predicate/ut`; - `yql/core/{ut,ut_common} -> ydb/library/yql/core/{ut,ut_common}`; - `yql/core` is gone; - `yql/library/url_preprocessing -> 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.