Uploaded image for project: 'Java Couchbase JVM Core'
  1. Java Couchbase JVM Core
  2. JVMCBC-432

IndexOutOfBoundsException when kv service not on all nodes (cluster_run)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • 1.4.7
    • 1.4.5
    • Core

    Description

      Running the cluster using the ClusterIntegrationUtil I cannot connect to a bucket on the same machine. To reproduce

      1. Start the cluster using ClusterIntegrationUtil.
      2. Load beer-sample
      3. Run

      DROP DATASET breweries IF EXISTS;
      DROP DATASET beers IF EXISTS;
      DROP BUCKET beerbucket IF EXISTS;
      CREATE BUCKET beerbucket WITH {"name":"beer-sample","nodes":"127.0.0.1:9000"};
      CREATE SHADOW DATASET breweries ON beerbucket WHERE `type` = "brewery";
      CREATE SHADOW DATASET beers ON beerbucket WHERE `type` = "beer";
      

      4. Run

      CONNECT BUCKET beerbucket WITH { "username":"couchbase","password":"couchbase" }
      

      Resulting stacktrace in the log:

      n_0:Caused by: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
      n_0:	at java.util.ArrayList.rangeCheck(ArrayList.java:653) ~[?:1.8.0_112]
      n_0:	at java.util.ArrayList.get(ArrayList.java:429) ~[?:1.8.0_112]
      n_0:	at com.couchbase.client.core.config.AbstractBucketConfig.nodeInfoFromExtended(AbstractBucketConfig.java:71) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.core.config.AbstractBucketConfig.<init>(AbstractBucketConfig.java:44) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.core.config.DefaultCouchbaseBucketConfig.<init>(DefaultCouchbaseBucketConfig.java:70) ~[core-io-1.4.5.jar:?]
      n_0:	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_112]
      n_0:	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_112]
      n_0:	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_112]
      n_0:	at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_112]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.introspect.AnnotatedConstructor.call(AnnotatedConstructor.java:124) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.std.StdValueInstantiator.createFromObjectWith(StdValueInstantiator.java:256) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.impl.PropertyBasedCreator.build(PropertyBasedCreator.java:135) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:389) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1127) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:298) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther(BeanDeserializer.java:168) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:135) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId(AsPropertyTypeDeserializer.java:120) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:91) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType(AbstractDeserializer.java:142) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.deser.impl.TypeWrappedDeserializer.deserialize(TypeWrappedDeserializer.java:63) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.ObjectReader._bindAndClose(ObjectReader.java:1579) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.com.fasterxml.jackson.databind.ObjectReader.readValue(ObjectReader.java:1200) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.core.config.parser.BucketConfigParser.parse(BucketConfigParser.java:50) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.dcp.transport.netty.ConfigHandler.decodeChunk(ConfigHandler.java:92) ~[cbas-dcp-client-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
      n_0:	at com.couchbase.client.dcp.transport.netty.ConfigHandler.channelRead0(ConfigHandler.java:73) ~[cbas-dcp-client-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
      n_0:	at com.couchbase.client.dcp.transport.netty.ConfigHandler.channelRead0(ConfigHandler.java:31) ~[cbas-dcp-client-1.0.0-SNAPSHOT.jar:1.0.0-SNAPSHOT]
      n_0:	at com.couchbase.client.deps.io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:438) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:293) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:267) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:253) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:335) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1294) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:356) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:342) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:911) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:625) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:560) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:477) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:439) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131) ~[core-io-1.4.5.jar:?]
      n_0:	at com.couchbase.client.deps.io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144) ~[core-io-1.4.5.jar:?]
      n_0:	... 1 more
      

      Attachments

        For Gerrit Dashboard: JVMCBC-432
        # Subject Branch Project Status CR V

        Activity

          People

            avsej Sergey Avseyev
            till Till Westmann
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes

                PagerDuty