You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I had searched in the issues and found no similar issues.
Version
Doris:apache-doris-2.1.2-bin-x64-noavx2
system:CentOS Linux release 7.9.2009 (Core)
What's Wrong?
I successfully created the catalog and can query the table structure and data normally, but once it comes to querying data, the following will appear: ERROR 1105 (HY000): errCode = 2, detailMessage = Max Compute tunnel SDK exception: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
My Maxcomput is in a private cloud and not on a public cloud
I am very sure that my odps_endpoint and tunnel_endpoint are correct. I can access and obtain data normally using odpscmd on the same machine.
I also discovered an interesting phenomenon. When I query an empty table, it does not make an error. It only throws this error when querying a table with data.
Query the phenomenon of empty result table
Query has data result table phenomenon
I can get my table structure normally
I have searched and tried many methods, including downgrading the ODPS jar package, but there is no solution. Can you help me?
The following is the error message in fe.warn.log
--------------------------------------------------------fe.warn.log--------------------------------------------------------
2024-05-16 17:20:30,584 WARN (mysql-nio-pool-4|777) [StmtExecutor.executeByLegacy():882] execute Exception. stmt[55, 1ea5eb267da4489f-836d5371112ebe38]
org.apache.doris.common.UserException: errCode = 2, detailMessage = Max Compute tunnel SDK exception: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:138) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.createScanRangeLocations(FileQueryScanNode.java:271) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.doFinalize(FileQueryScanNode.java:226) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.finalize(FileQueryScanNode.java:213) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.finalize(PlanNode.java:691) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.AggregationNode.finalize(AggregationNode.java:392) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OriginalPlanner.createPlanFragments(OriginalPlanner.java:207) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OriginalPlanner.plan(OriginalPlanner.java:101) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.analyzeAndGenerateQueryPlan(StmtExecutor.java:1297) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.analyze(StmtExecutor.java:1117) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeByLegacy(StmtExecutor.java:770) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:531) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:478) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:275) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:184) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.handleQuery(MysqlConnectProcessor.java:176) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.dispatch(MysqlConnectProcessor.java:205) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.processOnce(MysqlConnectProcessor.java:258) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52) ~[doris-fe.jar:1.2-SNAPSHOT]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_351]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_351]
at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_351]
Caused by: com.aliyun.odps.tunnel.TunnelException: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:52) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
Caused by: java.util.concurrent.ExecutionException: ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:592) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:551) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:111) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:247) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2346) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2314) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2190) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2080) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache.get(LocalCache.java:4012) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4922) ~[guava-32.1.2-jre.jar:?]
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:50) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
Caused by: com.aliyun.odps.tunnel.TunnelException: ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at com.aliyun.odps.tunnel.TableTunnel$DownloadSession.initiate(TableTunnel.java:2173) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel$DownloadSession.(TableTunnel.java:1999) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel$DownloadSessionBuilder.build(TableTunnel.java:2396) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel.getDownloadSession(TableTunnel.java:756) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel.getDownloadSession(TableTunnel.java:735) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.lambda$getTotalRows$0(MaxComputeExternalTable.java:86) ~[doris-fe.jar:1.2-SNAPSHOT]
at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4927) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3571) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2313) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2190) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2080) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache.get(LocalCache.java:4012) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4922) ~[guava-32.1.2-jre.jar:?]
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:50) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
What You Expected?
I hope this problem can be solved and the data can be queried normally
Search before asking
Version
Doris:apache-doris-2.1.2-bin-x64-noavx2
system:CentOS Linux release 7.9.2009 (Core)
What's Wrong?
I successfully created the catalog and can query the table structure and data normally, but once it comes to querying data, the following will appear: ERROR 1105 (HY000): errCode = 2, detailMessage = Max Compute tunnel SDK exception: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
My Maxcomput is in a private cloud and not on a public cloud
I am very sure that my odps_endpoint and tunnel_endpoint are correct. I can access and obtain data normally using odpscmd on the same machine.
I also discovered an interesting phenomenon. When I query an empty table, it does not make an error. It only throws this error when querying a table with data.
Query the phenomenon of empty result table
Query has data result table phenomenon
I can get my table structure normally
I have searched and tried many methods, including downgrading the ODPS jar package, but there is no solution. Can you help me?
The following is the error message in fe.warn.log
--------------------------------------------------------fe.warn.log--------------------------------------------------------
2024-05-16 17:20:30,584 WARN (mysql-nio-pool-4|777) [StmtExecutor.executeByLegacy():882] execute Exception. stmt[55, 1ea5eb267da4489f-836d5371112ebe38]
org.apache.doris.common.UserException: errCode = 2, detailMessage = Max Compute tunnel SDK exception: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:138) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.createScanRangeLocations(FileQueryScanNode.java:271) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.doFinalize(FileQueryScanNode.java:226) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.FileQueryScanNode.finalize(FileQueryScanNode.java:213) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.PlanNode.finalize(PlanNode.java:691) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.AggregationNode.finalize(AggregationNode.java:392) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OriginalPlanner.createPlanFragments(OriginalPlanner.java:207) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.planner.OriginalPlanner.plan(OriginalPlanner.java:101) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.analyzeAndGenerateQueryPlan(StmtExecutor.java:1297) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.analyze(StmtExecutor.java:1117) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.executeByLegacy(StmtExecutor.java:770) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:531) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:478) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.executeQuery(ConnectProcessor.java:275) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:184) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.handleQuery(MysqlConnectProcessor.java:176) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.dispatch(MysqlConnectProcessor.java:205) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.qe.MysqlConnectProcessor.processOnce(MysqlConnectProcessor.java:258) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52) ~[doris-fe.jar:1.2-SNAPSHOT]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_351]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_351]
at java.lang.Thread.run(Thread.java:750) ~[?:1.8.0_351]
Caused by: com.aliyun.odps.tunnel.TunnelException: ErrorCode=Local Error, ErrorMessage=ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:52) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
Caused by: java.util.concurrent.ExecutionException: ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:592) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:551) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:111) ~[guava-32.1.2-jre.jar:?]
at com.google.common.util.concurrent.Uninterruptibles.getUninterruptibly(Uninterruptibles.java:247) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.getAndRecordStats(LocalCache.java:2346) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2314) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2190) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2080) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache.get(LocalCache.java:4012) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4922) ~[guava-32.1.2-jre.jar:?]
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:50) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
Caused by: com.aliyun.odps.tunnel.TunnelException: ErrorCode=Local Error, ErrorMessage=Sorry, Page Not Found
at com.aliyun.odps.tunnel.TableTunnel$DownloadSession.initiate(TableTunnel.java:2173) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel$DownloadSession.(TableTunnel.java:1999) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel$DownloadSessionBuilder.build(TableTunnel.java:2396) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel.getDownloadSession(TableTunnel.java:756) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at com.aliyun.odps.tunnel.TableTunnel.getDownloadSession(TableTunnel.java:735) ~[odps-sdk-core-0.45.2-public.jar:0.45.2-public]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.lambda$getTotalRows$0(MaxComputeExternalTable.java:86) ~[doris-fe.jar:1.2-SNAPSHOT]
at com.google.common.cache.LocalCache$LocalManualCache$1.load(LocalCache.java:4927) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3571) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2313) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2190) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2080) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache.get(LocalCache.java:4012) ~[guava-32.1.2-jre.jar:?]
at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4922) ~[guava-32.1.2-jre.jar:?]
at org.apache.doris.datasource.maxcompute.MaxComputeMetadataCache.getCachedRowCount(MaxComputeMetadataCache.java:50) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.MaxComputeExternalTable.getTotalRows(MaxComputeExternalTable.java:85) ~[doris-fe.jar:1.2-SNAPSHOT]
at org.apache.doris.datasource.maxcompute.source.MaxComputeScanNode.getSplits(MaxComputeScanNode.java:135) ~[doris-fe.jar:1.2-SNAPSHOT]
... 21 more
What You Expected?
I hope this problem can be solved and the data can be queried normally
How to Reproduce?
Below is my catalog script to create maxcompute
I dealt with some private information xxxx
CREATE CATALOG mc PROPERTIES (
"type" = "max_compute",
"mc.region" = "cn-xxxx",
"mc.default.project" = "odps",
"mc.access_key" = "JPRxxxxRFxz",
"mc.secret_key" = "zxxxxxL2",
"mc.odps_endpoint" = "http://service.cn-xxxx-xxxx-xxxx.odps.ops.xxxx.xxxx.com/api",
"mc.tunnel_endpoint" = "http://dt.cn-xxxx-xxxx-xxxx.odps.ops.xxxx.xxxx.com"
);
Anything Else?
No response
Are you willing to submit PR?
Code of Conduct
The text was updated successfully, but these errors were encountered: