2016-09-11 29 views
0

我目前正在開發WebApp以提高我在Scala中使用Play Framework的技能。使用Slick 3.1和PlayFramework 2.5進行演化時超時Scala

我按照這個教程:http://pedrorijo.com/blog/play-slick/

我已經適應代碼到我的用戶對象(變化的領域),但在全球範圍,這是一樣的最終結果(https://github.com/nemoo/play-slick3-example),我還通過克隆重現回購。唯一可能不同的是我使用RDS數據庫來測試我的代碼。

當我啓動的索引頁沒有1.SQL,它不工作,這是正常的,它給我的錯誤,告訴該表用戶缺少

當我手動續集添加了專業的表中數據庫,一切工作正常

然而,當我嘗試通過遊戲進化我得到這個錯誤來創建它:

java.sql.SQLTimeoutException: Timeout after 1004ms of waiting for a connection. 
com.zaxxer.hikari.pool.BaseHikariPool.getConnection(BaseHikariPool.java:227) 
com.zaxxer.hikari.pool.BaseHikariPool.getConnection(BaseHikariPool.java:182) 
com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:93) 
slick.jdbc.hikaricp.HikariCPJdbcDataSource.createConnection(HikariCPJdbcDataSource.scala:12) 
play.api.db.slick.evolutions.internal.DBApiAdapter$DatabaseAdapter.getConnection(DBApiAdapter.scala:57) 
play.api.db.slick.evolutions.internal.DBApiAdapter$DatabaseAdapter.getConnection(DBApiAdapter.scala:60) 
play.api.db.evolutions.DatabaseEvolutions.databaseEvolutions(EvolutionsApi.scala:124) 
play.api.db.evolutions.DatabaseEvolutions.scripts(EvolutionsApi.scala:102) 
play.api.db.evolutions.DatabaseEvolutions.scripts(EvolutionsApi.scala:117) 
play.api.db.evolutions.DefaultEvolutionsApi.scripts(EvolutionsApi.scala:82) 
play.api.db.evolutions.ApplicationEvolutions$$anonfun$play$api$db$evolutions$ApplicationEvolutions$$runEvolutions$1.apply$mcV$sp(ApplicationEvolutions.scala:53) 
play.api.db.evolutions.ApplicationEvolutions.withLock(ApplicationEvolutions.scala:99) 
play.api.db.evolutions.ApplicationEvolutions.play$api$db$evolutions$ApplicationEvolutions$$runEvolutions(ApplicationEvolutions.scala:49) 
play.api.db.evolutions.ApplicationEvolutions$$anonfun$start$1.apply(ApplicationEvolutions.scala:42) 
play.api.db.evolutions.ApplicationEvolutions$$anonfun$start$1.apply(ApplicationEvolutions.scala:42) 
scala.collection.immutable.Stream.foreach(Stream.scala:594) 
play.api.db.evolutions.ApplicationEvolutions.start(ApplicationEvolutions.scala:42) 
play.api.db.evolutions.ApplicationEvolutions.<init>(ApplicationEvolutions.scala:150) 
play.api.db.evolutions.ApplicationEvolutionsProvider.get$lzycompute(EvolutionsModule.scala:53) 
play.api.db.evolutions.ApplicationEvolutionsProvider.get(EvolutionsModule.scala:53) 
play.api.db.evolutions.ApplicationEvolutionsProvider.get(EvolutionsModule.scala:44) 
com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81) 
com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72) 
com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61) 
com.google.inject.internal.BoundProviderFactory.get(BoundProviderFactory.java:62) 
com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46) 
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1103) 
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40) 
com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:145) 
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41) 
com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:205) 
com.google.inject.internal.InternalInjectorCreator$1.call(InternalInjectorCreator.java:199) 
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1092) 
com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:199) 
com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:180) 
com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:110) 
com.google.inject.Guice.createInjector(Guice.java:96) 
com.google.inject.Guice.createInjector(Guice.java:84) 
play.api.inject.guice.GuiceBuilder.injector(GuiceInjectorBuilder.scala:181) 
play.api.inject.guice.GuiceApplicationBuilder.build(GuiceApplicationBuilder.scala:123) 
play.api.inject.guice.GuiceApplicationLoader.load(GuiceApplicationLoader.scala:21) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1$$anonfun$2.apply(DevServerStart.scala:168) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1$$anonfun$2.apply(DevServerStart.scala:164) 
play.utils.Threads$.withContextClassLoader(Threads.scala:21) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(DevServerStart.scala:164) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(DevServerStart.scala:131) 
scala.Option.map(Option.scala:146) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1.apply(DevServerStart.scala:131) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1.apply(DevServerStart.scala:129) 
scala.util.Success.flatMap(Try.scala:231) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1.apply(DevServerStart.scala:129) 
play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1.apply(DevServerStart.scala:121) 
scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24) 
scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24) 
java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402) 
java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) 
java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) 
java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1689) 
java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157) 

我不知道爲什麼我得到一個超時而一切手動完成時工作正常。感謝所有會幫助我的人!

+0

您能否顯示您的Slick配置? – Salem

+0

嗨,謝謝你的回答,我發現問題,我會在這裏發佈它作爲接受的答案:) – Argurth

回答

0

這只是Amazon RDS實例安全組的問題,打開3306端口可解決問題:)

相關問題