EventStoreDB Java客户端appendToStream阻塞无返回问题及解决
EventStoreDB appendToStream() 阻塞无返回问题解决
问题现象
试用EventStoreDB时,调用client.appendToStream()方法出现阻塞,且该方法永不返回,后续代码无法执行。
环境配置
EventStoreDB Docker启动命令
docker run --name esdb-node -it -p 2113:2113 -p 1113:1113 eventstore/eventstore:latest --insecure --run-projections=All --enable-atom-pub-over-http
初始使用的Maven依赖
<dependency> <groupId>com.eventstore</groupId> <artifactId>db-client-java</artifactId> <version>5.3.1</version> </dependency>
测试代码
EventStoreDBClientSettings setts = EventStoreDBConnectionString.parseOrThrow("esdb://localhost:2113?tls=false&tlsVerifyCert=false"); EventStoreDBClient client = EventStoreDBClient.create(setts); AccountCreated event = new AccountCreated(); JsonMapper jsonMapper = new JsonMapper(); event.setId(UUID.randomUUID().toString()); event.setLogin("test"); EventData eventData = EventData .builderAsJson("AccountCreated", jsonMapper.writeValueAsBytes(event)) .build(); client.appendToStream("some-stream", eventData) .get(); System.out.println("This never happens");
解决方案
将Maven依赖中db-client-java的版本降级至5.2.0后,问题解决。
内容的提问来源于stack exchange,提问作者user2168435
相关产品推荐
相关产品推荐

