При попытке развернуть мою игру! 2.2.2 приложение к героку, оно терпит неудачу. Я вытащил эту ошибку из heroku logs
:@Id и @GeneratedValue не работает на Heroku
2014-09-07T15:33:56.237313+00:00 app[web.1]: play.api.Application$$anon$1: Execution exception[[PersistenceException: Error getting sequence nextval]]
2014-09-07T15:33:56.225226+00:00 app[web.1]: [error] play - Cannot invoke the action, eventually got an error: javax.persistence.PersistenceException: Error getting sequence nextval
2014-09-07T15:33:56.237314+00:00 app[web.1]: at play.api.Application$class.handleError(Application.scala:293) ~[com.typesafe.play.play_2.10-2.2.3.jar:2.2.3]
2014-09-07T15:33:56.237335+00:00 app[web.1]: Caused by: org.postgresql.util.PSQLException: ERROR: relation "problems_seq" does not exist
2014-09-07T15:33:56.237330+00:00 app[web.1]: at com.avaje.ebeaninternal.server.deploy.BeanDescriptor.nextId(BeanDescriptor.java:1133) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
2014-09-07T15:33:56.237302+00:00 app[web.1]: [error] application -
2014-09-07T15:33:56.237326+00:00 app[web.1]: at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.getMoreIds(SequenceIdGenerator.java:211) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
2014-09-07T15:33:56.237336+00:00 app[web.1]: Position: 16
2014-09-07T15:33:56.237339+00:00 app[web.1]: at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1836) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237344+00:00 app[web.1]: at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:273) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237321+00:00 app[web.1]: at scala.Option.map(Option.scala:145) [org.scala-lang.scala-library-2.10.3.jar:na]
2014-09-07T15:33:56.237324+00:00 app[web.1]: Caused by: javax.persistence.PersistenceException: Error getting sequence nextval
2014-09-07T15:33:56.237338+00:00 app[web.1]: at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2103) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237343+00:00 app[web.1]: at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:388) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237323+00:00 app[web.1]: at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$3.applyOrElse(PlayDefaultUpstreamHandler.scala:264) [com.typesafe.play.play_2.10-2.2.3.jar:2.2.3]
2014-09-07T15:33:56.237308+00:00 app[web.1]:
2014-09-07T15:33:56.237319+00:00 app[web.1]: at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$3$$anonfun$applyOrElse$3.apply(PlayDefaultUpstreamHandler.scala:264) [com.typesafe.play.play_2.10-2.2.3.jar:2.2.3]
2014-09-07T15:33:56.237327+00:00 app[web.1]: at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.loadMoreIds(SequenceIdGenerator.java:161) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
2014-09-07T15:33:56.237332+00:00 app[web.1]: at com.avaje.ebeaninternal.server.persist.DefaultPersister.setIdGenValue(DefaultPersister.java:1239) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
2014-09-07T15:33:56.237341+00:00 app[web.1]: at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:512) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237310+00:00 app[web.1]: ! @6jehmmg85 - Internal server error, for (GET) [/] ->
2014-09-07T15:33:56.237316+00:00 app[web.1]: at play.api.DefaultApplication.handleError(Application.scala:399) [com.typesafe.play.play_2.10-2.2.3.jar:2.2.3]
2014-09-07T15:33:56.237328+00:00 app[web.1]: at com.avaje.ebean.config.dbplatform.SequenceIdGenerator.nextId(SequenceIdGenerator.java:118) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
2014-09-07T15:33:56.237340+00:00 app[web.1]: at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257) ~[postgresql.postgresql-9.1-901-1.jdbc4.jar:na]
2014-09-07T15:33:56.237318+00:00 app[web.1]: at play.core.server.netty.PlayDefaultUpstreamHandler$$anonfun$3$$anonfun$applyOrElse$3.apply(PlayDefaultUpstreamHandler.scala:264) [com.typesafe.play.play_2.10-2.2.3.jar:2.2.3]
2014-09-07T15:33:56.237334+00:00 app[web.1]: at com.avaje.ebeaninternal.server.persist.DefaultPersister.insert(DefaultPersister.java:334) ~[org.avaje.ebeanorm.avaje-ebeanorm-3.2.2.jar:na]
Конкретно эта линия Caused by: org.postgresql.util.PSQLException: ERROR: relation "problems_seq" does not exist
, кажется, проблема.
Мои модели выглядят следующим образом:
@Entity
@Table(name = "problems")
public class Problem extends Model {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "problems_id_seq")
@SequenceGenerator(name = "problems_id_seq", sequenceName = "problems_id_seq", allocationSize = 1)
@Column(name = "problem_id")
public Long id;
// other properties
}
Я задаюсь вопросом, почему это не удается с ошибкой последовательности, даже если я хочу использовать GenerationType.IDENTITY
? Базовая база данных - postgres.
К сожалению, нет, все еще получая такую же ошибку. – doque