Я пытаюсь проанализировать файл CSV и создать узлы и ребра в базе данных Cosmos с помощью клиента gremlin-java (https://github.com/Azure-Samples/azure-cosmos-db-graph-java-getting-started).
Некоторые запросы, которые я изменил в этой программе:
Для добавления данных:
Отправка запроса Gremlin 87246:
gV (). Has ('id', '1120-L КОНСОЛИДИРОВАННЫЙ ГРАФИК L'). Fold (). Coalesce (unold (), addV ('sub_schedule'). Property ('id', '1120-L) КОНСОЛИДИРОВАННЫЙ ГРАФИК L '). Property (' name ',' 1120-L КОНСОЛИДИРОВАННЫЙ ГРАФИК L '))
Для создания ребра:
gV (). HasLabel ('parent'). Has ('id', '1120'). AddE ('has'). To (gV (). HasLabel ('state'). Has ('id') , 'FD'))
После успешного запуска почти 6 часов выдает странную ошибку:
Exception in thread "main" java.util.concurrent.ExecutionException: java.io.IOException: An existing connection was forcibly closed by the remote host
at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
at GetStarted.WriteWithOriginalCSVData.main(WriteWithOriginalCSVData.java:158)
Caused by: java.io.IOException: An existing connection was forcibly closed by the remote host
at sun.nio.ch.SocketDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:43)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
at sun.nio.ch.IOUtil.read(IOUtil.java:192)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
at io.netty.buffer.PooledUnsafeDirectByteBuf.setBytes(PooledUnsafeDirectByteBuf.java:221)
at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:899)
at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:275)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:119)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:652)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:575)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:489)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:451)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:140)
at java.lang.Thread.run(Thread.java:745)
Может кто-нибудь сказать, пожалуйста, возможные причины этого?
Отметим, что я вызываю этот java-клиент удаленно со своего ноутбука через открытое соединение и подключаюсь к службам Azure (в другом месте).
Сначала я подумал, что это может быть из-за моего интернет-соединения. Но он точно выдает ошибку, когда выполнил несколько 87-88k запросов gremlin.
Может кто-нибудь, пожалуйста, дайте мне знать, где я иду не так?