Skip to content
This repository has been archived by the owner on Aug 31, 2022. It is now read-only.

Db.save fails when autogenerated keys are missing #90

Open
atiqsayyed opened this issue Jul 8, 2017 · 0 comments
Open

Db.save fails when autogenerated keys are missing #90

atiqsayyed opened this issue Jul 8, 2017 · 0 comments

Comments

@atiqsayyed
Copy link

[ERROR] [07/08/2017 19:39:20.831] [tims-system-akka.actor.default-dispatcher-4] [akka.actor.ActorSystemImpl] Error during processing of request: 'head of empty list'. Completing with 500 Internal Server Error response. To change default exception handling behavior, provide a custom ExceptionHandler.

java.util.NoSuchElementException: head of empty list
	at scala.collection.immutable.Nil$.head(List.scala:420)
	at scala.collection.immutable.Nil$.head(List.scala:417)
	at sorm.driver.StdModify$$anonfun$insertAndGetGeneratedKeys$4.apply(StdModify.scala:26)
	at sorm.driver.StdModify$$anonfun$insertAndGetGeneratedKeys$4.apply(StdModify.scala:26)
	at embrace.package$EmbraceAny$.$$extension(package.scala:6)
	at sorm.driver.StdModify$class.insertAndGetGeneratedKeys(StdModify.scala:26)
	at sorm.driver.Mysql.insertAndGetGeneratedKeys(Mysql.scala:7)
	at sorm.mappings.EntityMapping.save(EntityMapping.scala:66)
	at sorm.Instance$Api$$anonfun$save$1.apply(Instance.scala:130)
	at sorm.Instance$Api$$anonfun$save$1.apply(Instance.scala:129)
	at embrace.package$EmbraceAny$.$$extension(package.scala:6)
	at sorm.core.Connector$$anonfun$withConnection$1.apply(Connector.scala:28)
	at sorm.core.Connector$$anonfun$withConnection$1.apply(Connector.scala:28)
	at sorm.pooling.ConnectionPool$class.withConnection(ConnectionPool.scala:22)
	at sorm.pooling.C3p0ConnectionPool.withConnection(C3p0ConnectionPool.scala:9)
	at sorm.core.Connector.withConnection(Connector.scala:28)
	at sorm.Instance$Api$class.save(Instance.scala:129)
	at sorm.Instance.save(Instance.scala:30)

In trait StdModify
  def insertAndGetGeneratedKeys
    ( table : String, values : Iterable[(String, Any)] )
    : Seq[Any]
    = values.toStream.unzip $$ (Insert(table, _, _)) $ statement $ connection.executeUpdateAndGetGeneratedKeys $ (_.**head**)

what if the executeUpdateAndGetGeneratedKeys returns an empty list?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant