Uploaded image for project: 'Quarkus'
  1. Quarkus
  2. QUARKUS-1221

Unpredictable "Shutdown in progress" exception for code in dev mode

XMLWordPrintable

    • Hide

      Download examples from code.quarkus.io(the more extensions included, the better)
      Run mvn quarkus:dev on this code
      Repeat a lot(this bug cannot be reproduced robustly, probably due to data race)

      Show
      Download examples from code.quarkus.io(the more extensions included, the better) Run mvn quarkus:dev on this code Repeat a lot(this bug cannot be reproduced robustly, probably due to data race)
    • +

      We found, that sometimes our test runs fail with "java.lang.IllegalStateException: Shutdown in progress" exceptions. It appears randomly([1],[2],[3]) but it looks like more demanding tasks tend to provoke this behaviour more often.

      [1] https://github.com/quarkus-qe/quarkus-startstop/pull/102/checks?check_run_id=3220458632
      [2] https://github.com/quarkus-qe/quarkus-startstop/runs/3297343795?check_suite_focus=true
      [3] https://github.com/quarkus-qe/quarkus-startstop/runs/3206345439?check_suite_focus=true

      Stacktraces look like that:

      2021-08-02 12:13:05,272 INFO  [io.quarkus] (Quarkus Main Thread) code-with-quarkus stopped in 0.007s
      Press [space] to restart, [e] to edit command line args (currently ''), [r] to resume testing, [h] for more options>
      2021-08-02 12:13:05,298 ERROR [io.qua.boo.cla.QuarkusClassLoader] (Quarkus Shutdown Thread) Failed to run close task: java.lang.IllegalStateException: Shutdown in progress
      	at java.base/java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:82)
      	at java.base/java.lang.Runtime.removeShutdownHook(Runtime.java:244)
      	at io.quarkus.datasource.deployment.devservices.DevServicesDatasourceProcessor$2.run(DevServicesDatasourceProcessor.java:169)
      	at io.quarkus.bootstrap.classloading.QuarkusClassLoader.close(QuarkusClassLoader.java:551)
      	at io.quarkus.bootstrap.app.CuratedApplication.close(CuratedApplication.java:362)
      	at io.quarkus.deployment.dev.IsolatedDevModeMain.close(IsolatedDevModeMain.java:327)
      	at io.quarkus.deployment.dev.IsolatedDevModeMain$5.run(IsolatedDevModeMain.java:441)
      	at java.base/java.lang.Thread.run(Thread.java:829)
      
      Press [space] to restart, [e] to edit command line args (currently ''), [h] for more options>
      2021-08-02 12:13:05,299 ERROR [io.qua.boo.cla.QuarkusClassLoader] (Quarkus Shutdown Thread) Failed to run close task: java.lang.IllegalStateException: Shutdown in progress
      	at java.base/java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:82)
      	at java.base/java.lang.Runtime.removeShutdownHook(Runtime.java:244)
      	at io.quarkus.mongodb.deployment.DevServicesMongoProcessor$2.run(DevServicesMongoProcessor.java:132)
      	at io.quarkus.bootstrap.classloading.QuarkusClassLoader.close(QuarkusClassLoader.java:551)
      	at io.quarkus.bootstrap.app.CuratedApplication.close(CuratedApplication.java:362)
      	at io.quarkus.deployment.dev.IsolatedDevModeMain.close(IsolatedDevModeMain.java:327)
      	at io.quarkus.deployment.dev.IsolatedDevModeMain$5.run(IsolatedDevModeMain.java:441)
      	at java.base/java.lang.Thread.run(Thread.java:829)
      
      

      The same issue on GitHub:

      https://github.com/quarkusio/quarkus/issues/19509

            gsmet@redhat.com Guillaume Smet
            rhn-support-fdudinsk Fedor Dudinskii
            Josef Smrcka Josef Smrcka (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: