Skip to content

Commit 4fd39b9

Browse files
committed
temp
1 parent f5318c3 commit 4fd39b9

File tree

13 files changed

+1157
-81
lines changed

13 files changed

+1157
-81
lines changed

presto-main-base/src/main/java/com/facebook/presto/execution/resourceGroups/ResourceGroupRuntimeInfo.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
import com.facebook.drift.annotations.ThriftField;
1818
import com.facebook.drift.annotations.ThriftStruct;
1919
import com.facebook.presto.spi.resourceGroups.ResourceGroupId;
20+
import com.fasterxml.jackson.annotation.JsonCreator;
21+
import com.fasterxml.jackson.annotation.JsonProperty;
2022

2123
import java.util.Optional;
2224

@@ -35,7 +37,14 @@ public class ResourceGroupRuntimeInfo
3537
private final Optional<ResourceGroupSpecInfo> resourceGroupConfigSpec;
3638

3739
@ThriftConstructor
38-
public ResourceGroupRuntimeInfo(ResourceGroupId resourceGroupId, long memoryUsageBytes, int queuedQueries, int descendantQueuedQueries, int runningQueries, int descendantRunningQueries, Optional<ResourceGroupSpecInfo> resourceGroupConfigSpec)
40+
@JsonCreator
41+
public ResourceGroupRuntimeInfo(@JsonProperty("resourceGroupId") ResourceGroupId resourceGroupId,
42+
@JsonProperty("memoryUsageBytes") long memoryUsageBytes,
43+
@JsonProperty("queuedQueries") int queuedQueries,
44+
@JsonProperty("descendantQueuedQueries") int descendantQueuedQueries,
45+
@JsonProperty("runningQueries") int runningQueries,
46+
@JsonProperty("descendantRunningQueries") int descendantRunningQueries,
47+
@JsonProperty("resourceGroupConfigSpec") Optional<ResourceGroupSpecInfo> resourceGroupConfigSpec)
3948
{
4049
this.resourceGroupId = requireNonNull(resourceGroupId, "resourceGroupId is null");
4150
this.memoryUsageBytes = memoryUsageBytes;
@@ -52,42 +61,49 @@ public static Builder builder(ResourceGroupId resourceGroupId)
5261
}
5362

5463
@ThriftField(1)
64+
@JsonProperty
5565
public ResourceGroupId getResourceGroupId()
5666
{
5767
return resourceGroupId;
5868
}
5969

6070
@ThriftField(2)
71+
@JsonProperty
6172
public long getMemoryUsageBytes()
6273
{
6374
return memoryUsageBytes;
6475
}
6576

6677
@ThriftField(3)
78+
@JsonProperty
6779
public int getQueuedQueries()
6880
{
6981
return queuedQueries;
7082
}
7183

7284
@ThriftField(4)
85+
@JsonProperty
7386
public int getDescendantQueuedQueries()
7487
{
7588
return descendantQueuedQueries;
7689
}
7790

7891
@ThriftField(5)
92+
@JsonProperty
7993
public int getRunningQueries()
8094
{
8195
return runningQueries;
8296
}
8397

8498
@ThriftField(6)
99+
@JsonProperty
85100
public int getDescendantRunningQueries()
86101
{
87102
return descendantRunningQueries;
88103
}
89104

90105
@ThriftField(7)
106+
@JsonProperty
91107
public Optional<ResourceGroupSpecInfo> getResourceGroupConfigSpec()
92108
{
93109
return resourceGroupConfigSpec;

presto-main-base/src/main/java/com/facebook/presto/resourcemanager/ResourceManagerConfig.java

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import com.facebook.airlift.configuration.ConfigDescription;
1818
import com.facebook.airlift.units.Duration;
1919
import com.facebook.airlift.units.MinDuration;
20+
import com.facebook.presto.server.InternalCommunicationConfig;
2021
import jakarta.validation.constraints.Min;
2122

2223
import java.util.concurrent.TimeUnit;
@@ -42,7 +43,9 @@ public class ResourceManagerConfig
4243
private Duration memoryPoolFetchInterval = new Duration(1, SECONDS);
4344
private boolean resourceGroupServiceCacheEnabled;
4445
private Duration resourceGroupServiceCacheExpireInterval = new Duration(10, SECONDS);
45-
private boolean heartbeatHttpEnabled;
46+
private boolean httpServerEnabled;
47+
48+
private InternalCommunicationConfig.CommunicationProtocol communicationProtocol = InternalCommunicationConfig.CommunicationProtocol.THRIFT;
4649
private Duration resourceGroupServiceCacheRefreshInterval = new Duration(1, SECONDS);
4750

4851
private Duration runningTaskCountFetchInterval = new Duration(1, SECONDS);
@@ -279,15 +282,29 @@ public ResourceManagerConfig setRunningTaskCountFetchInterval(Duration runningTa
279282
return this;
280283
}
281284

282-
public boolean getHeartbeatHttpEnabled()
285+
@Config("resource-manager.http-server-enabled")
286+
@ConfigDescription("Enable HTTP REST endpoints on the resource manager for internal communication.")
287+
public ResourceManagerConfig setHttpServerEnabled(boolean httpEnabled)
288+
{
289+
this.httpServerEnabled = httpEnabled;
290+
return this;
291+
}
292+
293+
public boolean getHttpServerEnabled()
283294
{
284-
return heartbeatHttpEnabled;
295+
return httpServerEnabled;
285296
}
286297

287-
@Config("resource-manager.heartbeat-http-enabled")
288-
public ResourceManagerConfig setHeartbeatHttpEnabled(boolean heartbeatHttpEnabled)
298+
@Config("resource-manager.communication-protocol")
299+
@ConfigDescription("Protocol for internal communication with resource managers.")
300+
public ResourceManagerConfig setCommunicationProtocol(InternalCommunicationConfig.CommunicationProtocol communicationProtocol)
289301
{
290-
this.heartbeatHttpEnabled = heartbeatHttpEnabled;
302+
this.communicationProtocol = communicationProtocol;
291303
return this;
292304
}
305+
306+
public InternalCommunicationConfig.CommunicationProtocol getCommunicationProtocol()
307+
{
308+
return communicationProtocol;
309+
}
293310
}

presto-main-base/src/test/java/com/facebook/presto/resourcemanager/TestResourceManagerClusterStateProvider.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,7 @@ private void assertMemoryPoolMap(ResourceManagerClusterStateProvider provider, i
724724
assertEquals(clusterMemoryPoolInfo.getLargestMemoryQuery().map(QueryId::getId), largestMemoryQuery);
725725
}
726726

727-
private static BasicQueryInfo createQueryInfo(String queryId, QueryState state)
727+
public static BasicQueryInfo createQueryInfo(String queryId, QueryState state)
728728
{
729729
return createQueryInfo(queryId, state, "global", GENERAL_POOL);
730730
}

presto-main-base/src/test/java/com/facebook/presto/resourcemanager/TestResourceManagerConfig.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
import com.facebook.airlift.configuration.testing.ConfigAssertions;
1717
import com.facebook.airlift.units.Duration;
18+
import com.facebook.presto.server.InternalCommunicationConfig;
1819
import com.google.common.collect.ImmutableMap;
1920
import org.testng.annotations.Test;
2021

@@ -50,7 +51,8 @@ public void testDefaults()
5051
.setResourceGroupRuntimeHeartbeatInterval(new Duration(1, SECONDS))
5152
.setRunningTaskCountFetchInterval(new Duration(1, SECONDS))
5253
.setResourceGroupRuntimeInfoTimeout(new Duration(30, SECONDS))
53-
.setHeartbeatHttpEnabled(false));
54+
.setHttpServerEnabled(false)
55+
.setCommunicationProtocol(InternalCommunicationConfig.CommunicationProtocol.THRIFT));
5456
}
5557

5658
@Test
@@ -75,7 +77,8 @@ public void testExplicitPropertyMappings()
7577
.put("resource-manager.resource-group-runtimeinfo-heartbeat-interval", "6m")
7678
.put("resource-manager.running-task-count-fetch-interval", "1m")
7779
.put("resource-manager.resource-group-runtimeinfo-timeout", "4s")
78-
.put("resource-manager.heartbeat-http-enabled", "true")
80+
.put("resource-manager.http-server-enabled", "true")
81+
.put("resource-manager.communication-protocol", "HTTP")
7982
.build();
8083

8184
ResourceManagerConfig expected = new ResourceManagerConfig()
@@ -97,7 +100,8 @@ public void testExplicitPropertyMappings()
97100
.setResourceGroupRuntimeHeartbeatInterval(new Duration(6, MINUTES))
98101
.setResourceGroupRuntimeInfoTimeout(new Duration(4, SECONDS))
99102
.setRunningTaskCountFetchInterval(new Duration(1, MINUTES))
100-
.setHeartbeatHttpEnabled(true);
103+
.setHttpServerEnabled(true)
104+
.setCommunicationProtocol(InternalCommunicationConfig.CommunicationProtocol.HTTP);
101105

102106
assertFullMapping(properties, expected);
103107
}

presto-main/etc/catalog/hive.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,4 @@
66
#
77

88
connector.name=hive-hadoop2
9-
hive.metastore.uri=thrift://localhost:9083
9+
hive.metastore.uri=thrift://localhost:9083

0 commit comments

Comments
 (0)