Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-9852

Result is already complete (IllegalStateException)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.0.5
    • 4.0.0-alpha-3
    • None
    • Windows 10
      OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_272-b10)
    • Important

    Description

      Steps:

      1 - Consider this reproducer https://github.com/ptomaszek/vertx-groovy

      2 - Edit build.gradle and change vertxVersion to '4.0.0.Beta1' (uses Groovy 3.0.3)

      3 - Edit org.example.MainGroovy and replace the code of main method with the following:

      Promise p = Promise.promise()
      p.future().onSuccess { println it }
      p.complete("Done with Groovy!!!")

      The code runs fine.

      But, if in Step 2 the vertxVersion in build.gradle is changed to '4.0.0.Beta2' (uses Groovy 3.0.5), the code from Step 3 will fail with an IllegalStateException. 

      Exception in thread "main" java.lang.IllegalStateException: Result is already complete
       at io.vertx.core.Promise.complete(Promise.java:67)
       at io.vertx.core.Promise$complete$1.call(Unknown Source)
       at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47)
       at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
       at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:139)
       at org.example.MainGroovy.main(MainGroovy.groovy:17)
      

      If you use @CompileStatic on main method with Step 3, with Beta2, it works fine. The @CompileStatic is not necessary to run well with Vert.x '4.0.0.Beta1'. A Java class with similar code will work using any version of Vert.x (Beta1, Beta2, Beta3, CR1....), so doesn't looks like a Java or Vertx issue.

      Attachments

        Issue Links

          Activity

            People

              emilles Eric Milles
              aaloise André Filipe Aloise
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 40m
                  40m