To celebrate the release of GATK 4.0, we are giving away free credits for running the GATK4 Best Practices pipelines in FireCloud, our secure online analysis portal. It’s first come first serve, so sign up now to claim your free credits worth $250. Sponsored by Google Cloud. Learn more at https://software.broadinstitute.org/firecloud/documentation/freecredits

Cromwell config issue

GeminghuiGeminghui Member
edited November 2016 in Ask the WDL team

hi all. I encountered an error when I using java -Dconfig.file=application.conf -jar cromwell.jar run ... and the following command :
java -Dconcurrent-job-limit=5 -jar cromwell.jar run... didn't work either. Cromwell actually launched all the 40 jobs in the workflow... Could anyone give me a hint?

Exception in thread "main" java.lang.ClassNotFoundException: cromwell.backend.impl.local.LocalBackendLif                                       ecycleActorFactory
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:264)
        at cromwell.engine.backend.BackendConfigurationEntry.asBackendLifecycleActorFactory(BackendConfi                                       guration.scala:11)
        at cromwell.engine.backend.CromwellBackends$$anonfun$1.apply(CromwellBackends.scala:12)
        at cromwell.engine.backend.CromwellBackends$$anonfun$1.apply(CromwellBackends.scala:12)
        at scala.collection.immutable.List.map(List.scala:273)
        at cromwell.engine.backend.CromwellBackends.<init>(CromwellBackends.scala:12)
        at cromwell.engine.backend.CromwellBackends$.initBackends(CromwellBackends.scala:40)
        at cromwell.server.CromwellSystem$class.$init$(CromwellSystem.scala:21)
        at cromwell.Main$$anon$1.<init>(Main.scala:20)
        at cromwell.Main$.CromwellSystem$lzycompute(Main.scala:20)
        at cromwell.Main$.CromwellSystem(Main.scala:20)
        at cromwell.Main$.runWorkflow(Main.scala:63)
        at cromwell.Main$.delayedEndpoint$cromwell$Main$1(Main.scala:25)
        at cromwell.Main$delayedInit$body.apply(Main.scala:15)
        at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
        at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
        at scala.App$$anonfun$main$1.apply(App.scala:76)
        at scala.App$$anonfun$main$1.apply(App.scala:76)
        at scala.collection.immutable.List.foreach(List.scala:381)
        at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
        at scala.App$class.main(App.scala:76)
        at cromwell.Main$.main(Main.scala:15)
        at cromwell.Main.main(Main.scala)
Post edited by KateN on

Best Answer

Answers

  • KateNKateN Cambridge, MAMember, Broadie, Moderator

    Could you post the contents of your edited application.conf file? Additionally, if you weren't in the same directory as the application.conf file, you will need to link the entire path: -Dconfig.file=/path/to/application.conf.

    From the error, it sounds as if Cromwell did not find your application file. Is the posted error the same one you got when running java -Dconcurrent-job-limit=5?

    Lastly, what version of Cromwell are you using? There have been changes to the naming of items in the config file, so updating to the newest version might help.

  • Thanks Kate~ I do use the absolute path of my aplication.conf (java -Dconfig.file=/work/project/application.conf -jar) and the contents of my application.conf are listed below:

    
    
    akka {
      loggers = ["akka.event.slf4j.Slf4jLogger"]
      logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
    }
    
    spray.can {
      server {
        request-timeout = 40s
      }
      client {
        request-timeout = 40s
        connecting-timeout = 40s
      }
    }
    
    # additional config
    system {
    max-concurrent-workflows = 15
    }
    
    backend {
      default = "Local"
            providers {
                    Local {
                    actor-factory = "cromwell.backend.impl.local.LocalBackendLifecycleActorFactory"
                            config {
                                    concurrent-job-limit = 5
                                    root: "cromwell-executions"
                    filesystems = {
                                                    local {
                                                            localization: [
                                        "soft-link","hard-link", "copy"
                                                                    ]
                                                            }
    
                                            }
            }
         }
      }
    }
    

    I got memory errors for running java -Dconcurrent-job-limit=5 command and the concurrent job number is much greater than I specified. By the way, the version of Cromwell I'm using is 0.22, downloaded from https://github.com/broadinstitute/cromwell/releases/download/0.22/cromwell-0.22.jar

  • Thanks @kshakir. Problem solved~

Sign In or Register to comment.