16 #ifndef IMPALA_RUNTIME_EXEC_ENV_H
17 #define IMPALA_RUNTIME_EXEC_ENV_H
19 #include <boost/scoped_ptr.hpp>
20 #include <boost/shared_ptr.hpp>
21 #include <boost/thread/thread.hpp>
34 class HBaseTableFactory;
38 class StatestoreSubscriber;
43 class ThreadResourceMgr;
46 class RequestPoolService;
57 ExecEnv(
const std::string& hostname,
int backend_port,
int subscriber_port,
58 int webserver_port,
const std::string& statestore_host,
int statestore_port);
void SetImpalaServer(ImpalaServer *server)
boost::scoped_ptr< DiskIoMgr > disk_io_mgr_
StatestoreSubscriber * statestore_subscriber()
void InitRm()
Initialise cgroups manager, detect test RM environment and init resource broker.
boost::scoped_ptr< MemTracker > mem_tracker_
boost::scoped_ptr< RequestPoolService > request_pool_service_
TNetworkAddress backend_address_
Address of the Impala backend server instance.
Functions to load and access the timestamp database.
Status InitForFeTests()
Initializes the exec env for running FE tests.
boost::scoped_ptr< HdfsOpThreadPool > hdfs_op_thread_pool_
boost::scoped_ptr< Scheduler > scheduler_
boost::scoped_ptr< CgroupsMgr > cgroups_mgr_
static ExecEnv * exec_env_
MetricGroups may be organised hierarchically as a tree.
boost::scoped_ptr< ResourceBroker > resource_broker_
boost::scoped_ptr< Frontend > frontend_
HBaseTableFactory * htable_factory()
boost::scoped_ptr< ImpalaInternalServiceClientCache > impalad_client_cache_
boost::scoped_ptr< StatestoreSubscriber > statestore_subscriber_
ResourceBroker * resource_broker()
ImpalaServer * impala_server()
TimezoneDatabase tz_database_
MemTracker * process_mem_tracker()
CgroupsMgr * cgroups_mgr()
bool is_pseudo_distributed_llama_
CatalogServiceClientCache * catalogd_client_cache()
const TNetworkAddress & backend_address() const
boost::scoped_ptr< HBaseTableFactory > htable_factory_
boost::scoped_ptr< CatalogServiceClientCache > catalogd_client_cache_
HdfsOpThreadPool * hdfs_op_thread_pool()
virtual Status StartServices()
Starts any dependent services in their correct order.
This class is thread-safe.
boost::scoped_ptr< MetricGroup > metrics_
static ExecEnv * GetInstance()
boost::scoped_ptr< ThreadResourceMgr > thread_mgr_
bool is_pseudo_distributed_llama()
DiskIoMgr * disk_io_mgr()
DataStreamMgr * stream_mgr()
ImpalaServer * impala_server_
Not owned by this class.
StatestoreSubscriber * subscriber()
ThreadResourceMgr * thread_mgr()
void set_enable_webserver(bool enable)
boost::scoped_ptr< DataStreamMgr > stream_mgr_
Leave protected so that subclasses can override.
boost::scoped_ptr< Webserver > webserver_
ImpalaInternalServiceClientCache * impalad_client_cache()