-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Description
Describe the bug
Env:
openjdk version "13.0.2" 2020-01-14
OpenJDK Runtime Environment (build 13.0.2+8)
OpenJDK 64-Bit Server VM (build 13.0.2+8, mixed mode, sharing)
doris 0.14.12.4-54eb430
Issue:
When I query the ES extranel table on doris, I receive this error "ERROR 1064 (HY000): errCode = 2, detailMessage = EsTable metadata has not been synced, Try it later".
Resolve:
Then I ran the'jstack -l $pid' command on the server. I found that the thread for sync ES metadata has been hanged. Therefore, I checked the okhttp3 source code and their github issue pool, and then I found that it might be a problem with the okhttp client on jdk13. So I upgraded the version and it can run normally.
"es repository" #34 daemon prio=5 os_prio=0 cpu=3491.43ms elapsed=207160.88s tid=0x00007f626c12b000 nid=0x1e53 in Object.wait() [0x00007f61
d7bfa000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(java.base@13.0.2/Native Method)
- waiting on
at java.lang.Object.wait(java.base@13.0.2/Object.java:326)
at okhttp3.internal.framed.FramedStream.waitForIo(FramedStream.java:584)
at okhttp3.internal.framed.FramedStream.getResponseHeaders(FramedStream.java:139)
- locked <0x00007f640e2cb600> (a okhttp3.internal.framed.FramedStream)
at okhttp3.internal.http.Http2xStream.readResponseHeaders(Http2xStream.java:145)
at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.java:53)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:45)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:109)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:124)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:170)
at okhttp3.RealCall.execute(RealCall.java:60)
at org.apache.doris.external.elasticsearch.EsRestClient.execute(EsRestClient.java:206)
at org.apache.doris.external.elasticsearch.EsRestClient.get(EsRestClient.java:228)
at org.apache.doris.external.elasticsearch.EsRestClient.version(EsRestClient.java:114)
at org.apache.doris.external.elasticsearch.VersionPhase.execute(VersionPhase.java:49)
at org.apache.doris.external.elasticsearch.EsMetaStateTracker.run(EsMetaStateTracker.java:53)
at org.apache.doris.catalog.EsTable.syncTableMetaData(EsTable.java:458)
at org.apache.doris.external.elasticsearch.EsRepository.runAfterCatalogReady(EsRepository.java:76)
at org.apache.doris.common.util.MasterDaemon.runOneCycle(MasterDaemon.java:58)
at org.apache.doris.common.util.Daemon.run(Daemon.java:116)