Call DataChatServiceClient with Conversation leads to --> Suppressed: java.lang.RuntimeException: Asynchronous task failed at com.google.api.gax.rpc.ServerStreamIterator.hasNext(ServerStreamIterator.java:105)
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 48/100
調査の方向性
まず、conversationId を指定して失敗を再現し、conversationId なしで動作するリクエストと比較します。DataChatService.chat と forEachChatMessage を読み、その後 buildChatRequest と ConversationReference/DataAgentContext の構築を調べます。conversation に基づくチャットが INTERNAL エラーなしで成功し、conversation なしのパスも引き続き動作すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Issue Details
I am using
<google.cloud.libraries-bom.version>26.84.0</google.cloud.libraries-bom.version>
---
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>libraries-bom</artifactId>
<version>${google.cloud.libraries-bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
-----
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-geminidataanalytics</artifactId>
</dependency>
When calling the DataChatServiceClient with a conversation i got:
com.google.api.gax.rpc.InternalException: io.grpc.StatusRuntimeException: INTERNAL: Internal error encountered.
at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:120)
at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:86)
at com.google.api.gax.rpc.ApiExceptionFactory.createException(ApiExceptionFactory.java:41)
at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:86)
at com.google.api.gax.grpc.GrpcApiExceptionFactory.create(GrpcApiExceptionFactory.java:66)
at com.google.api.gax.grpc.ExceptionResponseObserver.onErrorImpl(ExceptionResponseObserver.java:82)
at com.google.api.gax.rpc.StateCheckingResponseObserver.onError(StateCheckingResponseObserver.java:84)
at com.google.api.gax.grpc.GrpcDirectStreamController$ResponseObserverAdapter.onClose(GrpcDirectStreamController.java:148)
at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
at com.google.api.gax.grpc.ChannelPool$ReleasingClientCall$1.onClose(ChannelPool.java:651)
at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
at com.google.api.gax.grpc.GrpcLoggingInterceptor$1$1.onClose(GrpcLoggingInterceptor.java:98)
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:566)
at io.grpc.internal.ClientCallImpl.access$100(ClientCallImpl.java:72)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:734)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:715)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
at java.base/java.lang.Thread.run(Thread.java:1474)
Suppressed: java.lang.RuntimeException: Asynchronous task failed
at com.google.api.gax.rpc.ServerStreamIterator.hasNext(ServerStreamIterator.java:105)
at io.gec.bigquery.control.DataAgentChatService.forEachChatMessage(DataAgentChatService.java:120)
at io.gec.bigquery.control.DataAgentChatService.chat(DataAgentChatService.java:102)
at io.gec.bigquery.control.DataAgentChatService_ClientProxy.chat(Unknown Source)
at io.gec.bigquery.boundary.ChatResource.chat(ChatResource.java:30)
at io.gec.bigquery.boundary.ChatResource_ClientProxy.chat(Unknown Source)
at io.gec.bigquery.boundary.ChatResource$quarkusrestinvoker$chat_6f06d6f38f3e27ba1e41c7eaa780f3bbd3a1ade8.invoke(Unknown Source)
at org.jboss.resteasy.reactive.server.handlers.InvocationHandler.handle(InvocationHandler.java:29)
at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:190)
at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
at io.quarkus.vertx.core.runtime.VertxCoreRecorder$15.runWith(VertxCoreRecorder.java:695)
at org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2651)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2630)
at org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1622)
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1589)
at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:11)
at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:11)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
... 1 more
Caused by: io.grpc.StatusRuntimeException: INTERNAL: Internal error encountered.
at io.grpc.Status.asRuntimeException(Status.java:532)
... 18 more
Here my Implementation:
private ChatRequest buildChatRequest(String question, String conversationId) {
String parent = locationName();
Message userMessage = Message.newBuilder()
.setUserMessage(UserMessage.newBuilder().setText(question).build())
.build();
ChatRequest.Builder requestBuilder = ChatRequest.newBuilder()
.setParent(parent)
.addMessages(userMessage);
if (conversationId != null && !conversationId.isBlank()) {
String conversationName = conversationName(conversationId);
ConversationReference conversationReference = ConversationReference.newBuilder()
.setConversation(conversationName)
.setDataAgentContext(DataAgentContext.newBuilder()
.setDataAgent(configuredDataAgentName())
.build())
.build();
requestBuilder.setConversationReference(conversationReference);
} else {
requestBuilder.setDataAgentContext(DataAgentContext.newBuilder()
.setDataAgent(configuredDataAgentName())
.build());
}
return requestBuilder.build();
}
When calling without conversationId everything is working as expected.
Environment
- Linux
- JDK 25.0.2
- 26.84.0
- 主要言語
- Java
- スター
- 2.1k
- フォーク
- 1.2k
- 平均マージ
- 2日 14時間
- マージ済み PR(30日)
- 192
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
googleapis/google-cloud-java のほかの issue
-
[java-core] Timestamp.of(java.sql.Timestamp) is one second late for a time less than a second before the epoch対応中かも @Vcode2407 が 4 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
googleapis/google-cloud-java#14636 ·
メンテナーはふだん 1 日以内に返信
-
[java-firestore] UserDataConverter encodes a pre-epoch Date with negative nanos, so the write is refused対応中かも @wu-hui が 23 日前に担当しました。 オープンpriority: p2 type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
googleapis/google-cloud-java#14635 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
[java-firestore] UserDataConverter throws IndexOutOfBoundsException on an empty __binary__ value対応中かも @wu-hui が 23 日前に担当しました。 オープンpriority: p2 type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
googleapis/google-cloud-java#14634 · コメント 1 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
[java-firestore] CustomClassMapper.convertBigDecimal calls .abs() on Double, unintentionally flipping negative values to positive再び着手できるかも @wu-hui が 45 日前に担当しましたが、オープン中のプルリクエストはありません。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
googleapis/google-cloud-java#14533 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Github CI failing when trying to install xmllint対応中かも @blakeli0 が 81 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
googleapis/google-cloud-java#14132 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
googleapis/google-cloud-java の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 88/100
-
難易度 2/5 1時間未満 初心者へのやさしさ 84/100
cpp-best-practices/project_validator#251 ·
メンテナーはふだん 1 日以内に返信
-
backend enhancement
難易度 2/5 半日 初心者へのやさしさ 70/100
damodharg6/payledger#16 ·
-
[Bug]: An initiative list with no current entry logs an error on every change対応中かも @dwizard0 が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
メンテナーはふだん 1 日以内に返信