-
Bug
-
Resolution: Done
-
Blocker
-
5.2.0.Final
-
None
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:
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) } }
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.