#pragma once #include #include #include #include #include #include #include namespace NYql { constexpr TStringBuf FastMapReduceGatewayName = "fmr"; class TYtRunTool: public TFacadeRunner { public: TYtRunTool(TString name = "ytrun"); ~TYtRunTool() = default; protected: int DoMain(int argc, const char *argv[]) override; TProgram::TStatus DoRunProgram(TProgramPtr program) override; virtual IYtGateway::TPtr CreateYtGateway(); virtual IOptimizerFactory::TPtr CreateCboFactory(); virtual IDqHelper::TPtr CreateDqHelper(); protected: TString MrJobBin_; TString MrJobUdfsDir_; size_t NumThreads_ = 1; bool KeepTemp_ = false; TString DefYtServer_; NFmr::IFmrWorker::TPtr FmrWorker_; }; } // NYql