我创建了一个播放框架 2.1.0 项目并将其部署在 heroku 上。上周五我不得不更改数据模型以添加一些额外的字段。一旦我尝试部署更改,它就会给我带来进化错误。
无法解决问题,我已恢复更改并部署了旧版本,但仍然出现错误。
我得到的当前错误是这个
database [default] connected at jdbc:postgresql: ...
Position: 27 [ERROR:0, SQLSTATE:42601]
ERROR: syntax error at or near "FALSE"
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1$$anonfun$apply$1.apply$mcV$sp(Evolutions.scala:435)
Oops, cannot start the server.
at play.api.db.evolutions.EvolutionsPlugin$$anonfun$onStart$1.apply(Evolutions.scala:434)
at play.api.db.evolutions.Evolutions$.evolutionScript(Evolutions.scala:306)
at scala.collection.immutable.List.foreach(List.scala:309)
at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:63)
at play.api.Play$.start(Play.scala:62)
at play.api.db.evolutions.EvolutionsPlugin.onStart(Evolutions.scala:432)
@6ele4bdao: Database 'default' is in inconsistent state!
....
要部署我使用以下 procfile 行:
web: target/start -Dhttp.port=${PORT} ${JAVA_OPTS} -DapplyDownEvolutions.default=true -DapplyEvolutions.default=true -Ddb.default.driver=org.postgresql.Driver -Ddb.default.url=${POSTGRESQL_URL}
同样正如我所建议的那样,我已经使用heroku pg:psql
withSELECT id, last_problem FROM play_evolutions;
来找出错误并且它说syntax error at or near "FALSE"
但我在我的 1.sql 文件中没有看到任何错误。
任何人都可以帮我解决这个问题,这让我发疯。