Package io.trino.memory
Class ClusterMemoryManager
- java.lang.Object
-
- io.trino.memory.ClusterMemoryManager
-
- All Implemented Interfaces:
ClusterMemoryPoolManager
public class ClusterMemoryManager extends Object implements ClusterMemoryPoolManager
-
-
Constructor Summary
Constructors Constructor Description ClusterMemoryManager(io.airlift.http.client.HttpClient httpClient, InternalNodeManager nodeManager, LocationFactory locationFactory, org.weakref.jmx.MBeanExporter exporter, io.airlift.json.JsonCodec<MemoryInfo> memoryInfoCodec, io.airlift.json.JsonCodec<MemoryPoolAssignmentsRequest> assignmentsRequestJsonCodec, QueryIdGenerator queryIdGenerator, LowMemoryKiller lowMemoryKiller, ServerConfig serverConfig, MemoryManagerConfig config, NodeMemoryConfig nodeMemoryConfig, NodeSchedulerConfig schedulerConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddChangeListener(MemoryPoolId poolId, Consumer<MemoryPoolInfo> listener)voiddestroy()longgetClusterMemoryBytes()longgetClusterTotalMemoryReservation()longgetClusterUserMemoryReservation()Map<MemoryPoolId,MemoryPoolInfo>getMemoryPoolInfo()intgetNumberOfLeakedQueries()longgetQueriesKilledDueToOutOfMemory()longgetTotalAvailableProcessors()Map<String,Optional<MemoryInfo>>getWorkerMemoryInfo()booleanmemoryPoolExists(MemoryPoolId poolId)voidprocess(Iterable<QueryExecution> runningQueries, Supplier<List<BasicQueryInfo>> allQueryInfoSupplier)
-
-
-
Constructor Detail
-
ClusterMemoryManager
@Inject public ClusterMemoryManager(io.airlift.http.client.HttpClient httpClient, InternalNodeManager nodeManager, LocationFactory locationFactory, org.weakref.jmx.MBeanExporter exporter, io.airlift.json.JsonCodec<MemoryInfo> memoryInfoCodec, io.airlift.json.JsonCodec<MemoryPoolAssignmentsRequest> assignmentsRequestJsonCodec, QueryIdGenerator queryIdGenerator, LowMemoryKiller lowMemoryKiller, ServerConfig serverConfig, MemoryManagerConfig config, NodeMemoryConfig nodeMemoryConfig, NodeSchedulerConfig schedulerConfig)
-
-
Method Detail
-
addChangeListener
public void addChangeListener(MemoryPoolId poolId, Consumer<MemoryPoolInfo> listener)
- Specified by:
addChangeListenerin interfaceClusterMemoryPoolManager
-
memoryPoolExists
public boolean memoryPoolExists(MemoryPoolId poolId)
-
process
public void process(Iterable<QueryExecution> runningQueries, Supplier<List<BasicQueryInfo>> allQueryInfoSupplier)
-
getMemoryPoolInfo
public Map<MemoryPoolId,MemoryPoolInfo> getMemoryPoolInfo()
-
getWorkerMemoryInfo
public Map<String,Optional<MemoryInfo>> getWorkerMemoryInfo()
-
destroy
@PreDestroy public void destroy() throws IOException- Throws:
IOException
-
getTotalAvailableProcessors
public long getTotalAvailableProcessors()
-
getNumberOfLeakedQueries
public int getNumberOfLeakedQueries()
-
getClusterUserMemoryReservation
public long getClusterUserMemoryReservation()
-
getClusterTotalMemoryReservation
public long getClusterTotalMemoryReservation()
-
getClusterMemoryBytes
public long getClusterMemoryBytes()
-
getQueriesKilledDueToOutOfMemory
public long getQueriesKilledDueToOutOfMemory()
-
-