|
C++ YT Wrapper
C++ library for working with YT clusters
|
Public Member Functions | |
| void | LoadToken () |
| void | LoadSpec () |
| void | LoadTimings () |
| void | LoadProxyUrlAliasingRules () |
| void | Reset () |
Static Public Member Functions | |
| static bool | GetBool (const char *var, bool defaultValue=false) |
| static int | GetInt (const char *var, int defaultValue) |
| static TDuration | GetDuration (const char *var, TDuration defaultValue) |
| static EEncoding | GetEncoding (const char *var) |
| static EUploadDeduplicationMode | GetUploadingDeduplicationMode (const char *var, EUploadDeduplicationMode defaultValue) |
| static void | ValidateToken (const TString &token) |
| static TString | LoadTokenFromFile (const TString &tokenPath) |
| static TNode | LoadJsonSpec (const TString &strSpec) |
| static TRichYPath | LoadApiFilePathOptions (const TString &ysonMap) |
| static TConfigPtr | Get () |
Public Attributes | |
| TString | Hosts |
| TString | Pool |
| TString | Token |
| TString | Prefix |
| TString | ApiVersion |
| TString | LogLevel |
| TString | LogPath |
| THashSet< TString > | LogExcludeCategories = {"Bus", "Net", "Dns", "Concurrency"} |
| TString | StructuredLog |
| Path to the structured log file for recording telemetry data in JSON format. This allows later retrieval and analysis of these metrics. | |
| TString | HttpProxyRole |
| Represents the role involved in HTTP proxy configuration. | |
| TString | RpcProxyRole |
| Represents the role involved in RPC proxy configuration. | |
| THashMap< TString, TString > | ProxyUrlAliasingRules |
| Proxy url aliasing rules to be used for connection. | |
| bool | LogUseCore = true |
| EEncoding | ContentEncoding |
| EEncoding | AcceptEncoding |
| TString | GlobalTxId |
| bool | ForceIpV4 |
| bool | ForceIpV6 |
| bool | UseHosts |
| bool | PreferHttps |
| Use https if no schema was provided in proxy url. | |
| bool | UseTLS |
| TDuration | HostListUpdateInterval |
| TNode | Spec |
| TNode | TableWriter |
| TDuration | ConnectTimeout |
| TDuration | SocketTimeout |
| TDuration | AddressCacheExpirationTimeout |
| TDuration | TxTimeout |
| TDuration | PingTimeout |
| TDuration | PingInterval |
| int | AsyncHttpClientThreads |
| int | AsyncTxPingerPoolThreads |
| TDuration | WaitLockPollInterval |
| TDuration | RetryInterval |
| TDuration | ChunkErrorsRetryInterval |
| TDuration | RateLimitExceededRetryInterval |
| TDuration | StartOperationRetryInterval |
| int | RetryCount |
| int | ReadRetryCount |
| int | StartOperationRetryCount |
| int | CheckLivenessRetryCount |
| TDuration | OperationTrackerPollPeriod = TDuration::Seconds(5) |
| Period for checking status of running operation. | |
| TString | RemoteTempFilesDirectory |
| TString | RemoteTempTablesDirectory |
| bool | KeepTempTables = false |
| bool | InferTableSchema |
| bool | UseClientProtobuf |
| ENodeReaderFormat | NodeReaderFormat |
| bool | ProtobufFormatWithDescriptors |
| int | ConnectionPoolSize |
| TPatchableField< i64 > | FileCacheReplicationFactor = TPatchableField<i64>("file_cache_replication_factor", 10) |
| TDuration | CacheLockTimeoutPerGb |
| Used when waiting for other process which uploads the same file to the file cache. | |
| EUploadDeduplicationMode | CacheUploadDeduplicationMode |
| Used to prevent concurrent uploading of the same file to the file cache. NB: Each mode affects only users with the same mode enabled. | |
| i64 | CacheUploadDeduplicationThreshold |
| bool | LockFileStorage = false |
| Take a shared lock on the file cache directory during operation preparation. | |
| bool | MountSandboxInTmpfs |
| TRichYPath | ApiFilePathOptions |
| Set upload options (e.g.) for files created by library. | |
| bool | UseAbortableResponse = false |
| bool | EnableDebugMetrics = false |
| bool | UseHaltingResponse = false |
| Simulate a response that halts (stops sending data) mid-stream. | |
| i64 | HaltingResponseBytesLimit = 64 * 1024 |
| Maximum number of bytes sent before the response is halted. | |
| bool | EnableLocalModeOptimization = true |
| bool | WriteStderrSuccessfulJobs = false |
| ETraceHttpRequestsMode | TraceHttpRequestsMode = ETraceHttpRequestsMode::Never |
| TString | SkynetApiHost |
| TMaybe< int > | SocketPriority |
| THashSet< TString > | CommandsWithFraming |
| ETableWriterVersion | TableWriterVersion = ETableWriterVersion::Auto |
| Which implemetation of table writer to use. | |
| bool | RedirectStdoutToStderr = false |
| Redirects stdout to stderr for jobs. | |
| bool | EnableDebugCommandLineArguments = true |
| Append job and operation IDs as shell command options. | |
| TString | ConfigRemotePatchPath = "//sys/client_config" |
| Path to document node with cluster config for |IClient::GetDynamicConfiguration|. | |
| TPatchableField< TString > | OperationLinkPattern = TPatchableField<TString>("operation_link_pattern", "https://yt.yandex-team.ru/{cluster_ui_host}/operations/{operation_id}") |
| Pattern for generating operation web link in |GetOperationWebInterfaceUrl|. | |
| bool | EnableClientTracing = true |
| Allow to create trace_id on client side and propogate with request. | |
| bool | EnableControlMultiplexingBand = false |
| If true, all RPC requests share a single connection,. | |
| TRichYPath NYT::TConfig::ApiFilePathOptions |
Set upload options (e.g.) for files created by library.
Path itself is always ignored but path options (e.g. BypassArtifactCache) are used when uploading system files: cppbinary, job state, etc
| TDuration NYT::TConfig::CacheLockTimeoutPerGb |
Used when waiting for other process which uploads the same file to the file cache.
If CacheUploadDeduplicationMode is not Disabled, current process can wait for some other process which is uploading the same file. This value is proportional to the timeout of waiting, actual timeout computes as follows: fileSizeGb * CacheLockTimeoutPerGb. Default timeout assumes that host has uploading speed equal to 20 Mb/s. If timeout was reached, the file will be uploaded by current process without any other waits.
| TPatchableField<i64> NYT::TConfig::FileCacheReplicationFactor = TPatchableField<i64>("file_cache_replication_factor", 10) |
Defines replication factor that is used for files that are uploaded to YT to use them in operations.
| i64 NYT::TConfig::HaltingResponseBytesLimit = 64 * 1024 |
Maximum number of bytes sent before the response is halted.
Testing options, should never be used in user programs. Only meaningful when UseHaltingResponse is true.
| TString NYT::TConfig::HttpProxyRole |
Represents the role involved in HTTP proxy configuration.
| bool NYT::TConfig::LockFileStorage = false |
Take a shared lock on the file cache directory during operation preparation.
Prevents periodic cleaners from removing the cache directory between its creation and operation files upload to the cache.
Only non-default file storages are locked. The default one is expected to be protected on the cluster side.
| bool NYT::TConfig::LogUseCore = true |
For historical reasons mapreduce client uses its own logging system.
Currently library uses yt/yt/core logging by default. But if user calls NYT::SetLogger, library switches back to logger provided by user (except for messages from yt/yt/core).
TODO: This is a temporary option for emergency fallback. Should be removed after eliminating all NYT::SetLogger references.
| THashMap<TString, TString> NYT::TConfig::ProxyUrlAliasingRules |
Proxy url aliasing rules to be used for connection.
You can pass here "foo" => "fqdn:port" and afterwards use "foo" as handy alias, while all connections will be made to "fqdn:port" address.
| bool NYT::TConfig::UseHaltingResponse = false |
Simulate a response that halts (stops sending data) mid-stream.
Testing options, should never be used in user programs. When enabled, the HTTP response will be truncated after HaltingResponseBytesLimit bytes.