2017-04-05 235 views
1

在特定的JQL上獲取Jira問題時,我得到的日誌錯誤低於此值。我已經設置了一個標準來每隔30分鐘運行一次JQL以將檢索到的問題同步到另一個工具。在連接Jira以獲取問題時獲取超時異常

java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.util.concurrent.TimeoutException 
    at com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:294) 
    at com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:267) 
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:96) 
    at com.google.common.util.concurrent.ForwardingFuture.get(ForwardingFuture.java:69) 
    at com.asurion.Autopilot.main(Autopilot.java:104) 
Caused by: java.lang.RuntimeException: java.util.concurrent.TimeoutException 
    at com.google.common.base.Throwables.propagate(Throwables.java:160) 
    at com.atlassian.httpclient.apache.httpcomponents.DefaultHttpClient$3.apply(DefaultHttpClient.java:256) 
    at com.atlassian.httpclient.apache.httpcomponents.DefaultHttpClient$3.apply(DefaultHttpClient.java:249) 
    at com.atlassian.util.concurrent.Promises$Of$2.apply(Promises.java:276) 
    at com.atlassian.util.concurrent.Promises$Of$2.apply(Promises.java:272) 
    at com.atlassian.util.concurrent.Promises$2.onFailure(Promises.java:167) 
    at com.google.common.util.concurrent.Futures$6.run(Futures.java:801) 
    at com.google.common.util.concurrent.MoreExecutors$SameThreadExecutorService.execute(MoreExecutors.java:262) 
    at com.google.common.util.concurrent.ExecutionList$RunnableExecutorPair.execute(ExecutionList.java:149) 
    at com.google.common.util.concurrent.ExecutionList.execute(ExecutionList.java:134) 
    at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:193) 
    at com.google.common.util.concurrent.SettableFuture.setException(SettableFuture.java:68) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$1$3.run(SettableFuturePromiseHttpPromiseAsyncClient.java:73) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable$1.run(SettableFuturePromiseHttpPromiseAsyncClient.java:197) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient.runInContext(SettableFuturePromiseHttpPromiseAsyncClient.java:90) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalDelegateRunnable.run(SettableFuturePromiseHttpPromiseAsyncClient.java:192) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.util.concurrent.TimeoutException 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$1.doCancelled(SettableFuturePromiseHttpPromiseAsyncClient.java:67) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalContextAwareFutureCallback$3.run(SettableFuturePromiseHttpPromiseAsyncClient.java:152) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient.runInContext(SettableFuturePromiseHttpPromiseAsyncClient.java:90) 
    at com.atlassian.httpclient.apache.httpcomponents.SettableFuturePromiseHttpPromiseAsyncClient$ThreadLocalContextAwareFutureCallback.cancelled(SettableFuturePromiseHttpPromiseAsyncClient.java:147) 
    at org.apache.http.impl.client.cache.CachingHttpAsyncClient$2.cancelled(CachingHttpAsyncClient.java:636) 
    at org.apache.http.concurrent.BasicFuture.cancel(BasicFuture.java:150) 
    at org.apache.http.impl.nio.client.DefaultResultCallback.cancelled(DefaultResultCallback.java:57) 
    at org.apache.http.impl.nio.client.DefaultAsyncRequestDirector.cancel(DefaultAsyncRequestDirector.java:533) 
    at org.apache.http.impl.nio.client.DefaultAsyncRequestDirector$1.abortConnection(DefaultAsyncRequestDirector.java:222) 
    at org.apache.http.client.methods.HttpRequestBase.cleanup(HttpRequestBase.java:137) 
    at org.apache.http.client.methods.HttpRequestBase.abort(HttpRequestBase.java:151) 
    at com.atlassian.httpclient.base.RequestKiller$RequestEntry.abort(RequestKiller.java:98) 
    at com.atlassian.httpclient.base.RequestKiller.run(RequestKiller.java:56) 
    ... 1 more 

此錯誤發生頻繁但不連續。有時它可以工作,但很多時候不會。

Jira Version: 7.1.4#71008 
Jira REST Java Client Version: 2.0.0-m2 
JIRA REST java-client-core Version: 2.0.0-m25 

請讓我知道,如果你需要更多的細節。

在此先感謝。 Regards, Tushar

回答

0

看起來像您的請求超時,它來往於服務器負載。在同步期間,您是否可以簡化或分解查詢,設置較長的超時時間或將其他活動保持在服務器上?

+0

嗨邁克,感謝您的意見。目前我們已經放了20分鐘的時間。查詢通常每個命中返回不超過20個問題。 –

+0

我們在我們的代碼options.setConnectionTimeout(20,TimeUnit.MINUTES)中設置了3種超時類型; \t \t options.setSocketTimeout(20,TimeUnit.MINUTES); \t \t options.setConnectionPoolTimeToLive(20,TimeUnit.MINUTES);我們得到結果集,但是當我們聲明結果時,它會引發併發超時異常,如問題代碼錯誤代碼 –

+0

中提到的嗨邁克,我們將超時時間增加到** 30分鐘**。仍然是給出同樣的錯誤! –

0

Jira服務器出現了一些問題。我們無法訪問它,但幾天之後,問題似乎消失了。不知道在傑拉身邊發生了什麼事。