Skip to content

Commit 937161e

Browse files
adheer-araokarfacebook-github-bot
authored andcommitted
feat: Send "ensureConsistentRead" to Metastore API for all SELECT queries (#26474)
Summary: X-link: facebookexternal/presto-facebook#3436 X-link: facebookexternal/presto-facebook#3436 feat: Send "ensureConsistentRead" to Metastore API for all SELECT queries BREAKING CHANGE: Default metastore replica to be read from for Select queries will be the read replica, and re-after-write users will have to set "prism.force_metastore_primary_enabled" session property to "true" Differential Revision: D84520611 Pulled By: adheer-araokar
1 parent d4d0d49 commit 937161e

File tree

5 files changed

+31
-0
lines changed

5 files changed

+31
-0
lines changed

presto-hive/src/test/java/com/facebook/presto/hive/AbstractTestHiveClient.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.facebook.presto.common.predicate.Range;
3030
import com.facebook.presto.common.predicate.TupleDomain;
3131
import com.facebook.presto.common.predicate.ValueSet;
32+
import com.facebook.presto.common.resourceGroups.QueryType;
3233
import com.facebook.presto.common.type.ArrayType;
3334
import com.facebook.presto.common.type.MapType;
3435
import com.facebook.presto.common.type.NamedTypeSignature;
@@ -1250,6 +1251,12 @@ public RuntimeStats getRuntimeStats()
12501251
return session.getRuntimeStats();
12511252
}
12521253

1254+
@Override
1255+
public Optional<QueryType> getQueryType()
1256+
{
1257+
return session.getQueryType();
1258+
}
1259+
12531260
@Override
12541261
public ConnectorSession forConnectorId(ConnectorId connectorId)
12551262
{

presto-main-base/src/main/java/com/facebook/presto/FullConnectorSession.java

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

1616
import com.facebook.presto.common.RuntimeStats;
1717
import com.facebook.presto.common.function.SqlFunctionProperties;
18+
import com.facebook.presto.common.resourceGroups.QueryType;
1819
import com.facebook.presto.common.type.TimeZoneKey;
1920
import com.facebook.presto.metadata.SessionPropertyManager;
2021
import com.facebook.presto.spi.ConnectorId;
@@ -309,6 +310,12 @@ public RuntimeStats getRuntimeStats()
309310
return runtimeStats;
310311
}
311312

313+
@Override
314+
public Optional<QueryType> getQueryType()
315+
{
316+
return session.getQueryType();
317+
}
318+
312319
@Override
313320
public ConnectorSession forConnectorId(ConnectorId connectorId)
314321
{

presto-main-base/src/main/java/com/facebook/presto/testing/TestingConnectorSession.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import com.facebook.presto.FullConnectorSession;
1717
import com.facebook.presto.common.RuntimeStats;
1818
import com.facebook.presto.common.function.SqlFunctionProperties;
19+
import com.facebook.presto.common.resourceGroups.QueryType;
1920
import com.facebook.presto.common.type.TimeZoneKey;
2021
import com.facebook.presto.execution.QueryIdGenerator;
2122
import com.facebook.presto.spi.ConnectorId;
@@ -228,6 +229,12 @@ public RuntimeStats getRuntimeStats()
228229
return new RuntimeStats();
229230
}
230231

232+
@Override
233+
public Optional<QueryType> getQueryType()
234+
{
235+
return Optional.of(QueryType.SELECT);
236+
}
237+
231238
@Override
232239
public ConnectorSession forConnectorId(ConnectorId connectorId)
233240
{

presto-spi/src/main/java/com/facebook/presto/spi/ConnectorSession.java

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

1616
import com.facebook.presto.common.RuntimeStats;
1717
import com.facebook.presto.common.function.SqlFunctionProperties;
18+
import com.facebook.presto.common.resourceGroups.QueryType;
1819
import com.facebook.presto.common.type.TimeZoneKey;
1920
import com.facebook.presto.spi.function.SqlFunctionId;
2021
import com.facebook.presto.spi.function.SqlInvokedFunction;
@@ -67,6 +68,8 @@ default boolean isReadConstraints()
6768

6869
RuntimeStats getRuntimeStats();
6970

71+
Optional<QueryType> getQueryType();
72+
7073
/**
7174
* returns a ConnectorSession for a specific ConnectorId
7275
* @return

presto-spi/src/test/java/com/facebook/presto/spi/TestingSession.java

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

1616
import com.facebook.presto.common.RuntimeStats;
1717
import com.facebook.presto.common.function.SqlFunctionProperties;
18+
import com.facebook.presto.common.resourceGroups.QueryType;
1819
import com.facebook.presto.common.type.TimeZoneKey;
1920
import com.facebook.presto.spi.function.SqlFunctionId;
2021
import com.facebook.presto.spi.function.SqlInvokedFunction;
@@ -131,6 +132,12 @@ public RuntimeStats getRuntimeStats()
131132
return new RuntimeStats();
132133
}
133134

135+
@Override
136+
public Optional<QueryType> getQueryType()
137+
{
138+
return Optional.of(QueryType.SELECT);
139+
}
140+
134141
@Override
135142
public ConnectorSession forConnectorId(ConnectorId connectorId)
136143
{

0 commit comments

Comments
 (0)