Uploaded image for project: 'Hot Rod Native client'
  1. Hot Rod Native client
  2. HRCPP-366

Unable to register filter for remote events

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 8.1.0.CR2, 8.1.0.Final
    • 8.1.0.CR1
    • .NET
    • None

    Description

      The following test fails with the exception below.

      LoggingEventListener<string> listener = new LoggingEventListener<string>();
                  IRemoteCache<string, string> cache = remoteManager.GetCache<string, string>();
                  Event.ClientListener<string, string> cl = new Event.ClientListener<string, string>();
                  try
                  {
                      cache.Clear();
                      cl.filterFactoryName = "string-is-equal-filter-factory";
                      cl.converterFactoryName = "";
                      cl.AddListener(listener.CreatedEventAction);
                      cl.AddListener(listener.ModifiedEventAction);
                      cl.AddListener(listener.RemovedEventAction);
                      cl.AddListener(listener.ExpiredEventAction);
                      cl.AddListener(listener.CustomEventAction);
                      cache.AddClientListener(cl, new string[] { "wantedkeyprefix" }, new string[] { }, null);
                      AssertNoEvents(listener);
                      cache.Put("key1", "value1");
                      cache.Put("wantedkeyprefix_key1", "value2");
                      //only one received; one is ignored
                      AssertOnlyCreated("wantedkeyprefix_key1", listener);
                      AssertNoEvents(listener);
                      cache.Replace("key1", "modified");
                      cache.Replace("wantedkeyprefix_key1", "modified");
                      AssertOnlyModified("wantedkeyprefix_key1", listener);
                      AssertNoEvents(listener);
                      cache.Remove("key1");
                      cache.Remove("wantedkeyprefix_key1");
                      AssertOnlyRemoved("wantedkeyprefix_key1", listener);
                      AssertNoEvents(listener);
                  }
                  finally
                  {
                      cache.RemoveClientListener(cl);
                  }
      

      Filure:

       1) Test Error : Infinispan.HotRod.Tests.RemoteEventTest.FilterEventsTest
      4:    Infinispan.HotRod.Exceptions.Exception : java.io.IOException: Unsupported protocol version 119
      4:    at Infinispan.HotRod.SWIGGen.RemoteByteArrayCache.addClientListener(VectorChar filterName, VectorChar converterName, Boolean includeCurrentState, VectorVectorChar filterFactoryParam, VectorVectorChar converterFactoryParams) in C:\workdir\dotnet-client\build_windows\swig\RemoteByteArrayCache.cs:line 394
      4:    at Infinispan.HotRod.Impl.RemoteCacheSWIGGenImpl`2.AddClientListener(ClientListener`2 cl, String[] filterFactoryParams, String[] converterFactoryParams, Action recoveryCallback) in C:\workdir\dotnet-client\src\main\cs\Infinispan\HotRod\Impl\RemoteCacheSWIGImpl.cs:line 421
      4:    at Infinispan.HotRod.Tests.RemoteEventTest.FilterEventsTest() in C:\workdir\dotnet-client\src\test\cs\Infinispan\HotRod\RemoteEventTest.cs:line 172
      

      The server side shows a similar error:

      2017-03-01 23:11:11,466 DEBUG [org.infinispan.server.hotrod.HotRodExceptionHandler] (HotRodServerWorker-5-1) Exception caught: org.infinispan.commons.CacheException: java.io.IOException: Unsupported protocol version 119
      	at org.infinispan.server.hotrod.ClientListenerRegistry.lambda$unmarshallParams$2(ClientListenerRegistry.java:270)
      	at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
      	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
      	at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
      	at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
      	at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
      	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
      	at org.infinispan.server.hotrod.ClientListenerRegistry.unmarshallParams(ClientListenerRegistry.java:272)
      	at org.infinispan.server.hotrod.ClientListenerRegistry.getFilter(ClientListenerRegistry.java:213)
      	at org.infinispan.server.hotrod.ClientListenerRegistry.addClientListener(ClientListenerRegistry.java:151)
      	at org.infinispan.server.hotrod.ContextHandler.realRead(ContextHandler.java:154)
      	at org.infinispan.server.hotrod.ContextHandler.lambda$channelRead0$1(ContextHandler.java:57)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
      	at java.lang.Thread.run(Thread.java:745)
      Caused by: java.io.IOException: Unsupported protocol version 119
      	at org.jboss.marshalling.river.RiverUnmarshaller.start(RiverUnmarshaller.java:1348)
      	at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.startObjectInput(AbstractJBossMarshaller.java:128)
      	at org.infinispan.commons.marshall.jboss.AbstractJBossMarshaller.objectFromByteBuffer(AbstractJBossMarshaller.java:109)
      	at org.infinispan.commons.marshall.AbstractMarshaller.objectFromByteBuffer(AbstractMarshaller.java:82)
      	at org.infinispan.server.hotrod.ClientListenerRegistry.lambda$unmarshallParams$2(ClientListenerRegistry.java:268)
      	... 16 more
      

      Attachments

        Activity

          People

            vrigamon@redhat.com Vittorio Rigamonti
            mgencur Martin Gencur
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: