This is an automated email from the ASF dual-hosted git repository.
gavinchou pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-3.0 by this push:
new 1b41de79a75 branch-3.0: [fix](cloud version) fix version of
information_schema table backward when query in follower node (#43496)
1b41de79a75 is described below
commit 1b41de79a753a49ee398617a53dbd2806347ebb4
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Wed Nov 13 14:24:17 2024 +0800
branch-3.0: [fix](cloud version) fix version of information_schema table
backward when query in follower node (#43496)
Cherry-picked from #43451
Co-authored-by: hui lai <[email protected]>
---
.../org/apache/doris/service/FrontendServiceImpl.java | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git
a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
index ac342672638..eb80009116b 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/service/FrontendServiceImpl.java
@@ -45,6 +45,7 @@ import org.apache.doris.catalog.TableIf;
import org.apache.doris.catalog.TableIf.TableType;
import org.apache.doris.catalog.Tablet;
import org.apache.doris.catalog.TabletMeta;
+import org.apache.doris.cloud.catalog.CloudPartition;
import org.apache.doris.cloud.catalog.CloudTablet;
import org.apache.doris.cloud.proto.Cloud.CommitTxnResponse;
import org.apache.doris.cluster.ClusterNamespace;
@@ -625,6 +626,20 @@ public class FrontendServiceImpl implements
FrontendService.Iface {
table.getName(), PrivPredicate.SHOW)) {
continue;
}
+ // For the follower node in cloud mode,
+ // when querying the information_schema table,
+ // the version needs to be updated.
+ // Otherwise, the version will always be the old value
+ // unless there is a query for the table in the
follower node.
+ if (!Env.getCurrentEnv().isMaster() &&
Config.isCloudMode()
+ && table instanceof OlapTable) {
+ OlapTable olapTable = (OlapTable) table;
+ List<CloudPartition> partitions =
olapTable.getAllPartitions().stream()
+ .filter(p -> p instanceof CloudPartition)
+ .map(cloudPartition -> (CloudPartition)
cloudPartition)
+ .collect(Collectors.toList());
+
CloudPartition.getSnapshotVisibleVersion(partitions);
+ }
table.readLock();
try {
if (matcher != null &&
!matcher.match(table.getName())) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]