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

Iteration in DistributedTaskLifecycleService using ServiceLoader fails

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Minor Minor
    • 5.2.0.Final
    • 5.1.4.FINAL
    • Clustered Executor
    • None

      For some unknown reason iteration over available DistributedTaskLifecycle services in DistributedTaskLifecycleService fails, and it fails only in AS environment:

      Caused by: java.util.NoSuchElementException
      at java.util.AbstractList$Itr.next(AbstractList.java:350) [classes.jar:1.6.0_31]
      at java.util.Collections$1.nextElement(Collections.java:3389) [classes.jar:1.6.0_31]
      at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:332) [classes.jar:1.6.0_31]
      at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:415) [classes.jar:1.6.0_31]
      at org.infinispan.distexec.spi.DistributedTaskLifecycleService.onPreExecute(DistributedTaskLifecycleService.java:50) [infinispan-core-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]

      public <T> void onPreExecute(Callable<T> task) {
      try {
      Iterator<DistributedTaskLifecycle> i = loader.iterator();
      while (i.hasNext()) { // <------------------------------------------------- we CHECK before
      DistributedTaskLifecycle cl = i.next();
      cl.onPreExecute(task);

              vblagoje Vladimir Blagojevic (Inactive)
              ajustin@redhat.com Ales Justin
              Archiver:
              rhn-support-adongare Amol Dongare

                Created:
                Updated:
                Resolved:
                Archived: