java.lang.ClassCastException during collection.dropIndexes()
rebeccan opened this issue · 3 comments
rebeccan commented
Hi there :-)
I am trying to run a migration script that drops all indexes of a collection in the inMemory database.
During collection.dropIndexes() I receive the following Exception:
17:22:47.468 [mongo-server-worker2] ERROR d.b.m.w.MongoWireProtocolHandler Unknown error!
java.lang.ClassCastException: java.lang.String cannot be cast to de.bwaldvogel.mongo.bson.Document
at de.bwaldvogel.mongo.backend.AbstractMongoDatabase.commandDropIndexes(AbstractMongoDatabase.java:430)
at de.bwaldvogel.mongo.backend.AbstractMongoDatabase.handleCommandSync(AbstractMongoDatabase.java:134)
at de.bwaldvogel.mongo.backend.AbstractMongoDatabase.lambda$handleCommandAsync$1(AbstractMongoDatabase.java:194)
at de.bwaldvogel.mongo.util.FutureUtils.wrap(FutureUtils.java:9)
at de.bwaldvogel.mongo.backend.AbstractMongoDatabase.handleCommandAsync(AbstractMongoDatabase.java:194)
at de.bwaldvogel.mongo.backend.AbstractMongoBackend.handleCommandAsync(AbstractMongoBackend.java:376)
at de.bwaldvogel.mongo.wire.MongoDatabaseHandler.handleCommandAsync(MongoDatabaseHandler.java:254)
at de.bwaldvogel.mongo.wire.MongoDatabaseHandler.handleQueryAsync(MongoDatabaseHandler.java:120)
at de.bwaldvogel.mongo.wire.MongoDatabaseHandler.channelRead0(MongoDatabaseHandler.java:73)
at de.bwaldvogel.mongo.wire.MongoDatabaseHandler.channelRead0(MongoDatabaseHandler.java:34)
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:296)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:714)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:650)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:576)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:493)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at java.lang.Thread.run(Thread.java:748)
The piece of code that fails is:
MongoCollection<Document> collection = mongoClient.getDatabase("testDatabase").getCollection("testCollection");
collection.dropIndexes();
Listing collections, creating indexes and listing indexes works fine, so my test must be set up correctly.
I am working with the latest mongo-java-server Version, which is currently 1.35.0.
Can you verify that bug? Will there be a fix?
Thanks in advance!
bwaldvogel commented
Thanks for reporting. I’ve implemented support for collection.dropIndexes()
in 9161cce.
rebeccan commented
Awesome! Thank you 👍 I am looking forward to it being released :-)
bwaldvogel commented
I’ve just released version 1.36.0