Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-3092

AutoNodeSelector throws ArrayIndexOutOfBoundsException when indexName is long

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • 5.3.0.CR1
    • None
    • Embedded Querying
    • None

    Description

      When hibernate search is used (with capedwarf for example), adding a fourth server to the cluster crashes infinispan.

      I've narrowed the problem down to org.hibernate.search.backend.impl.jgroups.AutoNodeSelector:78

      Here the following formula is used to calculate an array index

      int selectionRange = members.size() - 1;
      int selected = ( indexName.hashCode() % selectionRange) + 1;

      if indexname is long (like "default_taskworker-java__com.google.appengine.api.datastore.Entity")
      the hashcode becomes negative due to integer overflow, resulting in a negative index

      Attachments

        Issue Links

          Activity

            People

              sgrinove Sanne Grinovero
              danamin Wouter De Borger (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: