kblincoe / QualOpt_SE701

2 stars 15 forks source link

QualOpt doesn't work in Heroku #105

Open TheGuardianWolf opened 6 years ago

TheGuardianWolf commented 6 years ago

QualOpt is currently not deploying properly on Heroku, and experiences a fatal error on launch inside one of its instances. The README instructions were followed on deployment.

I tried deploying the original version of QualOpt before we did any changes and it didn't actually work before.

Now that I've done the Java 9 upgrade with #49 , this should be fixed. Size will be medium.

My suggested fix is to use dockerised deployments instead of deploying straight to Heroku, the application runs properly on docker.

Dependency on #108 .

Error logs as below from my spring-upgrade branch.

2018-03-15T03:39:32.473284+00:00 app[web.1]: 03:39:32.472 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
2018-03-15T03:39:32.473287+00:00 app[web.1]: java.lang.NoSuchMethodError: org.springframework.util.Assert.isTrue(ZLjava/util/function/Supplier;)V
2018-03-15T03:39:32.473289+00:00 app[web.1]:    at org.springframework.boot.context.properties.source.ConfigurationPropertyName.lambda$append$2(ConfigurationPropertyName.java:185)
2018-03-15T03:39:32.473291+00:00 app[web.1]:    at org.springframework.boot.context.properties.source.ConfigurationPropertyName.processElement(ConfigurationPropertyName.java:548)
2018-03-15T03:39:32.473293+00:00 app[web.1]:    at org.springframework.boot.context.properties.source.ConfigurationPropertyName.process(ConfigurationPropertyName.java:524)
2018-03-15T03:39:32.473294+00:00 app[web.1]:    at org.springframework.boot.context.properties.source.ConfigurationPropertyName.append(ConfigurationPropertyName.java:185)
2018-03-15T03:39:32.473296+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.IndexedElementsBinder.bindIndexed(IndexedElementsBinder.java:103)
2018-03-15T03:39:32.473297+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.IndexedElementsBinder.bindIndexed(IndexedElementsBinder.java:92)
2018-03-15T03:39:32.473299+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.IndexedElementsBinder.bindIndexed(IndexedElementsBinder.java:70)
2018-03-15T03:39:32.4733
00+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.ArrayBinder.bindAggregate(ArrayBinder.java:45)
2018-03-15T03:39:32.473302+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.AggregateBinder.bind(AggregateBinder.java:58)
2018-03-15T03:39:32.473304+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.lambda$bindAggregate$2(Binder.java:306)
2018-03-15T03:39:32.473305+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder$Context.withIncreasedDepth(Binder.java:4
39)
2018-03-15T03:39:32.473307+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder$Context.access$100(Binder.java:379)
2018-03-15T03:39:32.473308+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.bindAggregate(Binder.java:305)
2018-03-15T03:39:32.473310+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.bindObject(Binder.java:263)
2018-03-15T03:39:32.473312+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:221)
2018-03-15T03:39:32.473313+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:210)
2018-03-15T03:39:32.473315+00:00 app[web.1]:    at org.springframework.boot.context.properties.bind.Binder.bind(Binder.java:166)
2018-03-15T03:39:32.473316+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$asDocuments$8(ConfigFileApplicationListener.java:561)
2018-03-15T03:39:32.473318+00:00 app[web.1]:    at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
2018-03-15T03:39:32.473320+00:00 app[web.1]:    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
2018-03-15T03:39:32.473321+00:00 app[web.1]:    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
2018-03-15T03:39:32.473323+00:00 app[web.1]:    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
2018-03-15T03:39:32.473325+00:00 app[web.1]:    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
2018-03-15T03:39:32.473326+00:00 app[web.1]:    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
2018-03-15T03:39:32.473328+00:00 app[web.1]:    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
2018-03-15T03:39:32.473329+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.asDocuments(ConfigFileApplicationListener.java:565)
2018-03-15T03:39:32.473331+00
:00 app[web.1]:     at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadDocuments(ConfigFileApplicationListener.java:547)
2018-03-15T03:39:32.473333+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:515)
2018-03-15T03:39:32.473335+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.loadForFileExtension(ConfigFileApplicationListener.java:494)
2018-03-15T03:39:32.473336+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:462)
2018-03-15T03:39:32.473338+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$null$4(ConfigFileApplicationListener.java:444)
2018-03-15T03:39:32.473341+00:00 app[web.1]:    at java.lang.Iterable.forEach(Iterable.java:75)
2018-03-15T03:39:32.473342+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.lambda$load$5(ConfigFileApplicationListener.java:443)
2018-03-15T03:39:32.473344+00:00 app[web.1]:    at java.lang.Iterable.forEach(Iterable.java:75)
2018-03-15T03:39:32.473346+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:440)
2018-03-15T03:39:32.473347+00:00 app[web.1]:    at org.springframework.boot.contex
t.config.ConfigFileApplicationListener$Loader.load(ConfigFileApplicationListener.java:331)
2018-03-15T03:39:32.473349+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener.addPropertySources(ConfigFileApplicationListener.java:213)
2018-03-15T03:39:32.473356+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener.postProcessEnvironment(ConfigFileApplicationListener.java:196)
2018-03-15T03:39:32.473358+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener
.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:183)
2018-03-15T03:39:32.473360+00:00 app[web.1]:    at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:169)
2018-03-15T03:39:32.473361+00:00 app[web.1]:    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:167)
2018-03-15T03:39:32.473366+00:00 app[web.1]:    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
2018-03-15T03:39:32.473368+00:00 app[web.1]:    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:122)
2018-03-15T03:39:32.473370+00:00 app[web.1]:    at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74)
2018-03-15T03:39:32.473371+00:00 app[web.1]:    at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
2018-03-15T03:39:32.473373+00:00 app[web.1]:    at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:351)
2018-03-15T03:39:32.473374+00:00 app[web.1]:    at org.springframework.boot.SpringApplication.run(SpringApplication.java:317)
2018-03-15T03:39:32.473376+00:00 app[web.1]:    at org.project36.qualopt.QualOptApp.main(QualOptApp.java:65)
2018-03-15T03:39:32.473378+00:00 app[web.1]:    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2018-03-15T03:39:32.473379+00:00 app[web.1]:    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
2018-03-15T03:39:32.473381+00:00 app[web.1]:    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2018-03-15T03:39:32.473382+00:00 app[web.1]:    at java.lang.reflect.Method.invoke(Method.java:498)
2018-03-15T03:39:32.473384+00:00 app[web.1]:    at org.springframework.boot.loader.MainMetho
dRunner.run(MainMethodRunner.java:48)
2018-03-15T03:39:32.473385+00:00 app[web.1]:    at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
2018-03-15T03:39:32.473387+00:00 app[web.1]:    at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
2018-03-15T03:39:32.473389+00:00 app[web.1]:    at org.springframework.boot.loader.WarLauncher.main(WarLauncher.java:58)
2018-03-15T03:39:32.572662+00:00 heroku[web.1]: Process exited with status 1
2018-03-15T03:39:33.135482+00:00 heroku[web.1]: State changed from starting to crashed
softeng-701 commented 6 years ago

@TheGuardianWolf APPROVED!

TheGuardianWolf commented 6 years ago

Someone feel free to take this, I've done enough as is and need to work on other projects.