sourcegraph / jetbrains

Apache License 2.0
67 stars 22 forks source link

JetBrains: An error occurred "java.util.concurrent.ExecutionException: org.eclipse.lsp4j.jsonrpc.ResponseErrorException:" after deleting token and changing project #762

Open jay-fibi opened 8 months ago

jay-fibi commented 8 months ago

Installation Information

Plugin version: 5.3.27 IDE version: PC-233.13763.11

Describe the bug

Steps to reproduce:

  1. Have Cody plugin installed in your JetBrains IntelliJ IDEA editor
  2. User is already logged in to Cody with Pro subscription
  3. Delete the auth token from Sourcegraph web
  4. Go to editor and run any command i.e. Generate Test
  5. Switch to another project and run any command

Observed behavior: An error occurred on performing this activity quickly and below stacktrace thrown,

java.util.concurrent.ExecutionException: org.eclipse.lsp4j.jsonrpc.ResponseErrorException: accessing Sourcegraph GraphQL API: Error: HTTP status code 401: Invalid access token.
 (https://sourcegraph.com/.api/graphql?CurrentUserCodySubscription)

Error: accessing Sourcegraph GraphQL API: Error: HTTP status code 401: Invalid access token.
 (https://sourcegraph.com/.api/graphql?CurrentUserCodySubscription)
    at /snapshot/dist/agent.js
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async /snapshot/dist/agent.js
    at java.base/java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:396)
    at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2073)
    at com.sourcegraph.cody.initialization.EndOfTrialNotificationScheduler.lambda$1$lambda$0(EndOfTrialNotificationScheduler.kt:44)
    at com.sourcegraph.cody.agent.CodyAgentService$Companion.withAgentRestartIfNeeded$lambda$1(CodyAgentService.kt:134)
    at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:249)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
    at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: org.eclipse.lsp4j.jsonrpc.ResponseErrorException: accessing Sourcegraph GraphQL API: Error: HTTP status code 401: Invalid access token.
 (https://sourcegraph.com/.api/graphql?CurrentUserCodySubscription)

Error: accessing Sourcegraph GraphQL API: Error: HTTP status code 401: Invalid access token.
 (https://sourcegraph.com/.api/graphql?CurrentUserCodySubscription)
    at /snapshot/dist/agent.js
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async /snapshot/dist/agent.js
    at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.handleResponse(RemoteEndpoint.java:209)
    at org.eclipse.lsp4j.jsonrpc.RemoteEndpoint.consume(RemoteEndpoint.java:193)
    at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.handleMessage(StreamMessageProducer.java:194)
    at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:94)
    at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    ... 1 more

Expected behavior

Error should not occur.

Additional context (logs, images, etc)

No response

jay-fibi commented 8 months ago

FYI - This is not consistently repro but I have encountered this issue 2 times so reported here.

mkondratek commented 7 months ago

@jay-fibi, thanks for the report. we believe it's related to the missing/poor handling of the deleted/expired tokens.

I just realised your report mentions the deletion in the title - sorry we missed it 🙇

the wrapping issue - related directly to the scenario I mentioned: https://github.com/sourcegraph/jetbrains/issues/1035