[infinispan-issues] [JBoss JIRA] (ISPN-2550) NoSuchElementException in Hot Rod Encoder

Michal Linhard (JIRA) jira-events at lists.jboss.org
Mon Dec 17 08:31:08 EST 2012


    [ https://issues.jboss.org/browse/ISPN-2550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12741855#comment-12741855 ] 

Michal Linhard commented on ISPN-2550:
--------------------------------------

I've patched JDG 6.1.0.ER5 by replacing infinispan-core and infinispan-server-hotrod jars built from dan's branch
and ran resilience tests in hyperion

http://www.qa.jboss.com/~mlinhard/hyperion3/run0011/report/stats-throughput.png

the issues ISPN-2550 and ISPN-2642 didn't appear but the run still wasn't OK. After rejoin of killed node0002 all operations were blocked for more than 5 minutes - i.e. zero throughput in the last stage of the test. I'm investigating what happened there.
                
> NoSuchElementException in Hot Rod Encoder
> -----------------------------------------
>
>                 Key: ISPN-2550
>                 URL: https://issues.jboss.org/browse/ISPN-2550
>             Project: Infinispan
>          Issue Type: Bug
>          Components: Remote protocols
>    Affects Versions: 5.2.0.Beta4
>            Reporter: Michal Linhard
>            Assignee: Dan Berindei
>            Priority: Blocker
>             Fix For: 5.2.0.Beta6
>
>
> Tomas noticed this a while ago in a specific functional test:
> https://bugzilla.redhat.com/show_bug.cgi?id=875151
> I'm creating a more general JIRA, cause I'm having this in resilience test.
> What I found by quick debug, is that here:
> https://github.com/infinispan/infinispan/blob/master/server/hotrod/src/main/scala/org/infinispan/server/hotrod/Encoders.scala#L106
> {code}
>                for (segmentIdx <- 0 until numSegments) {
>                   val denormalizedSegmentHashIds = allDenormalizedHashIds(segmentIdx)
>                   val segmentOwners = ch.locateOwnersForSegment(segmentIdx)
>                   for (ownerIdx <- 0 until segmentOwners.length) {
>                      val address = segmentOwners(ownerIdx % segmentOwners.size)
>                      val serverAddress = members(address)
>                      val hashId = denormalizedSegmentHashIds(ownerIdx)
>                      log.tracef("Writing hash id %d for %s:%s", hashId, serverAddress.host, serverAddress.port)
>                      writeString(serverAddress.host, buf)
>                      writeUnsignedShort(serverAddress.port, buf)
>                      buf.writeInt(hashId)
>                   }
>                }
> {code}
> we're trying to obtain serverAddress for nonexistent address and NoSuchElementException is not handled properly.
> It hapens after I kill a node in a resilience test and the exception appears when querying for the node in the members cache.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the infinispan-issues mailing list