Here is the problem:
I am trying to insert some data so i start the transaction, create the object, set the data and saveOrUpdate it, then i commit the transaction.
Looking the logs this happens.
10:24:50,718 DEBUG JDBCTransaction:54 - begin
10:24:50,718 DEBUG JDBCTransaction:59 - current autocommit status: false
10:24:50,765 DEBUG SQL:401 - select presupuest0_.id as id32_, presupuest0_.idProveedor as idProvee2_32_, presupuest0_.fecha as fecha32_, presupuest0_.fechaAutorizacion as fechaAut4_32_, presupuest0_.estado as estado32_, presupuest0_.monto as monto32_, presupuest0_.motivo as motivo32_, presupuest0_.idMoneda as idMoneda32_, presupuest0_.idPedido as idPedido32_, presupuest0_.idPersonalAutoriza as idPerso10_32_ from presupuestos_compra presupuest0_ where presupuest0_.id='5cf063ae-7191-4727-9160-2058867211a6'
10:24:50,812 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:24:50,843 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:24:50,843 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='56292510-4596-4a02-b7ff-e121d5b413b1'
10:24:50,859 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='56292510-4596-4a02-b7ff-e121d5b413b1'
10:24:50,859 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:24:50,859 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='257ca315-ae5f-450f-b3bc-362abb609098'
10:24:50,859 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='257ca315-ae5f-450f-b3bc-362abb609098'
10:24:50,875 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:24:50,875 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='1b6101e6-b519-4ed8-b41f-a250ce6811b5'
10:24:50,875 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='1b6101e6-b519-4ed8-b41f-a250ce6811b5'
10:24:50,890 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:24:50,890 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='13079191-56c1-4b4d-990f-36187bf0778f'
10:24:50,890 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='13079191-56c1-4b4d-990f-36187bf0778f'
10:24:50,906 DEBUG SQL:401 - select presupuest_.id, presupuest_.idProveedor as idProvee2_32_, presupuest_.fecha as fecha32_, presupuest_.fechaAutorizacion as fechaAut4_32_, presupuest_.estado as estado32_, presupuest_.monto as monto32_, presupuest_.motivo as motivo32_, presupuest_.idMoneda as idMoneda32_, presupuest_.idPedido as idPedido32_, presupuest_.idPersonalAutoriza as idPerso10_32_ from presupuestos_compra presupuest_ where presupuest_.id=?
10:24:50,906 DEBUG SQL:401 - select proveedor_.id, proveedor_.codigo_empresa as codigo2_5_, proveedor_.nombre as nombre5_, proveedor_.razon_social as razon4_5_, proveedor_.telefono1 as telefono5_5_, proveedor_.telefono2 as telefono6_5_, proveedor_.domicilio as domicilio5_, proveedor_.correo as correo5_, proveedor_.sitio_web as sitio9_5_, proveedor_.dado_de_baja as dado10_5_, proveedor_.evaluacion as evaluacion7_, proveedor_.especialidad as especial2_7_ from proveedores proveedor_ where proveedor_.id=?
10:24:50,906 DEBUG SQL:401 - select notapedido_.id, notapedido_.codigo as codigo12_, notapedido_.detalle as detalle12_, notapedido_.anulada as anulada12_, notapedido_.estado as estado12_, notapedido_.idCentroCostos as idCentro6_12_ from notasPedidos notapedido_ where notapedido_.id=?
10:24:50,937 DEBUG SQL:401 - select notapedido0_.id as id12_, notapedido0_.codigo as codigo12_, notapedido0_.detalle as detalle12_, notapedido0_.anulada as anulada12_, notapedido0_.estado as estado12_, notapedido0_.idCentroCostos as idCentro6_12_ from notasPedidos notapedido0_ where notapedido0_.id='f2d6b33c-37f7-4bb0-be16-9e95fb6a70d9'
10:24:50,937 DEBUG SQL:401 - select presupuest0_.idPedido as idPedido1_, presupuest0_.id as id1_, presupuest0_.id as id32_0_, presupuest0_.idProveedor as idProvee2_32_0_, presupuest0_.fecha as fecha32_0_, presupuest0_.fechaAutorizacion as fechaAut4_32_0_, presupuest0_.estado as estado32_0_, presupuest0_.monto as monto32_0_, presupuest0_.motivo as motivo32_0_, presupuest0_.idMoneda as idMoneda32_0_, presupuest0_.idPedido as idPedido32_0_, presupuest0_.idPersonalAutoriza as idPerso10_32_0_ from presupuestos_compra presupuest0_ where presupuest0_.idPedido=?
10:24:50,937 DEBUG JDBCTransaction:103 - commit
10:24:50,937 DEBUG JDBCTransaction:116 - committed JDBC Connection
As you see there is no data insertion, no exception, and comit doesnt fail.
Well, i close the app i'm developing, open it again, do the EXACT same things and this happens. (NOTE: this could happen at the third or fourth time I try).
10:26:31,000 DEBUG JDBCTransaction:54 - begin
10:26:31,000 DEBUG JDBCTransaction:59 - current autocommit status: false
10:26:31,000 DEBUG SQL:401 - select presupuest0_.id as id32_, presupuest0_.idProveedor as idProvee2_32_, presupuest0_.fecha as fecha32_, presupuest0_.fechaAutorizacion as fechaAut4_32_, presupuest0_.estado as estado32_, presupuest0_.monto as monto32_, presupuest0_.motivo as motivo32_, presupuest0_.idMoneda as idMoneda32_, presupuest0_.idPedido as idPedido32_, presupuest0_.idPersonalAutoriza as idPerso10_32_ from presupuestos_compra presupuest0_ where presupuest0_.id='375c5c43-771d-4069-acb0-a88d45918928'
10:26:31,000 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:26:31,000 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:26:31,015 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='0762a9fc-bda1-40d5-8482-7aa0952e8545'
10:26:31,031 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='0762a9fc-bda1-40d5-8482-7aa0952e8545'
10:26:31,031 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:26:31,046 DEBUG SQL:401 - update items_proveedor set codigo=?, ultimoPrecio=?, dado_de_baja=?, ultimaModificacion=?, idMoneda=?, idMaterial=?, idProveedor=? where id=?
10:26:31,140 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='52c34fa5-e70e-4bb2-8f05-fff4915c0e39'
10:26:31,140 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='52c34fa5-e70e-4bb2-8f05-fff4915c0e39'
10:26:31,156 DEBUG SQL:401 - select moneda0_.id as id0_, moneda0_.nombre as nombre0_, moneda0_.tasa_de_cambio as tasa3_0_, moneda0_.principal as principal0_, moneda0_.dado_de_baja as dado5_0_, moneda0_.descripcion as descripc6_0_ from monedas moneda0_ where moneda0_.id='f3035870-eea2-4983-b1a2-b9e579ddf4f9'
10:26:31,156 DEBUG SQL:401 - update items_proveedor set codigo=?, ultimoPrecio=?, dado_de_baja=?, ultimaModificacion=?, idMoneda=?, idMaterial=?, idProveedor=? where id=?
10:26:31,156 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='a99482e6-f8a3-438f-8afa-088a918998b8'
10:26:31,156 DEBUG SQL:401 - select itemprovee0_.id as id22_, itemprovee0_.codigo as codigo22_, itemprovee0_.ultimoPrecio as ultimoPr3_22_, itemprovee0_.dado_de_baja as dado4_22_, itemprovee0_.ultimaModificacion as ultimaMo5_22_, itemprovee0_.idMoneda as idMoneda22_, itemprovee0_.idMaterial as idMaterial22_, itemprovee0_.idProveedor as idProvee8_22_ from items_proveedor itemprovee0_ where itemprovee0_.id='a99482e6-f8a3-438f-8afa-088a918998b8'
10:26:31,171 DEBUG SQL:401 - select presupuest_.id, presupuest_.idProveedor as idProvee2_32_, presupuest_.fecha as fecha32_, presupuest_.fechaAutorizacion as fechaAut4_32_, presupuest_.estado as estado32_, presupuest_.monto as monto32_, presupuest_.motivo as motivo32_, presupuest_.idMoneda as idMoneda32_, presupuest_.idPedido as idPedido32_, presupuest_.idPersonalAutoriza as idPerso10_32_ from presupuestos_compra presupuest_ where presupuest_.id=?
10:26:31,171 DEBUG SQL:401 - select proveedor_.id, proveedor_.codigo_empresa as codigo2_5_, proveedor_.nombre as nombre5_, proveedor_.razon_social as razon4_5_, proveedor_.telefono1 as telefono5_5_, proveedor_.telefono2 as telefono6_5_, proveedor_.domicilio as domicilio5_, proveedor_.correo as correo5_, proveedor_.sitio_web as sitio9_5_, proveedor_.dado_de_baja as dado10_5_, proveedor_.evaluacion as evaluacion7_, proveedor_.especialidad as especial2_7_ from proveedores proveedor_ where proveedor_.id=?
10:26:31,171 DEBUG SQL:401 - select notapedido_.id, notapedido_.codigo as codigo12_, notapedido_.detalle as detalle12_, notapedido_.anulada as anulada12_, notapedido_.estado as estado12_, notapedido_.idCentroCostos as idCentro6_12_ from notasPedidos notapedido_ where notapedido_.id=?
10:26:31,187 DEBUG SQL:401 - select notapedido0_.id as id12_, notapedido0_.codigo as codigo12_, notapedido0_.detalle as detalle12_, notapedido0_.anulada as anulada12_, notapedido0_.estado as estado12_, notapedido0_.idCentroCostos as idCentro6_12_ from notasPedidos notapedido0_ where notapedido0_.id='f2d6b33c-37f7-4bb0-be16-9e95fb6a70d9'
10:26:31,187 DEBUG SQL:401 - select presupuest0_.idPedido as idPedido1_, presupuest0_.id as id1_, presupuest0_.id as id32_0_, presupuest0_.idProveedor as idProvee2_32_0_, presupuest0_.fecha as fecha32_0_, presupuest0_.fechaAutorizacion as fechaAut4_32_0_, presupuest0_.estado as estado32_0_, presupuest0_.monto as monto32_0_, presupuest0_.motivo as motivo32_0_, presupuest0_.idMoneda as idMoneda32_0_, presupuest0_.idPedido as idPedido32_0_, presupuest0_.idPersonalAutoriza as idPerso10_32_0_ from presupuestos_compra presupuest0_ where presupuest0_.idPedido=?
10:26:31,203 DEBUG JDBCTransaction:103 - commit
10:26:31,203 DEBUG SQL:401 - insert into presupuestos_compra (idProveedor, fecha, fechaAutorizacion, estado, monto, motivo, idMoneda, idPedido, idPersonalAutoriza, id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Estoy tratando de pasar por el nullsafe set
El tipo de arg1 es class entidades.EstadoPresupuestoCompra
10:26:31,218 DEBUG SQL:401 - update notasPedidos set codigo=?, detalle=?, anulada=?, estado=?, idCentroCostos=? where id=?
Estoy tratando de pasar por el nullsafe set
El tipo de arg1 es class entidades.EstadoNotaPedido
10:26:31,218 DEBUG SQL:401 - insert into items_presupuesto_compra (idPresupuesto, id, cantidad, precio, idMoneda, idItemProveedor) values (?, ?, ?, ?, ?, ?)
10:26:31,218 DEBUG SQL:401 - insert into items_presupuesto_compra (idPresupuesto, id, cantidad, precio, idMoneda, idItemProveedor) values (?, ?, ?, ?, ?, ?)
10:26:31,218 DEBUG SQL:401 - insert into items_presupuesto_compra (idPresupuesto, id, cantidad, precio, idMoneda, idItemProveedor) values (?, ?, ?, ?, ?, ?)
10:26:31,265 DEBUG JDBCTransaction:116 - committed JDBC Connection
can this be a bug?
Thank for the help
Hibernate version: 3.2.6
Mapping documents:
<hibernate-mapping>
<class name="entidades.PresupuestoCompra" table="presupuestos_compra">
<id name="id">
<generator class="assigned" />
</id>
<many-to-one name="proveedor" column="idProveedor" not-null="true" />
<property name="fecha" type="persistencia.tipos.FechaHibernate">
<column name="fecha" />
</property>
<property name="fechaAutorizacion" type="persistencia.tipos.FechaHibernate">
<column name="fechaAutorizacion" />
</property>
<property name="estado" type="persistencia.tipos.EstadoPresupuestoCompraHibernate">
<column name="estado" />
</property>
<property name="monto" column="monto" />
<property name="motivo" column="motivo" />
<many-to-one name="moneda" column="idMoneda" not-null="true" />
<many-to-one name="pedido" column="idPedido" not-null="true" />
<many-to-one name="autoriza" column="idPersonalAutoriza" not-null="false" />
<set name="items" table="items_presupuesto_compra" lazy="false">
<key column="idPresupuesto" />
<composite-element class="entidades.ItemPresupuestoCompra">
<property name="id" not-null="true" unique="true" />
<property name="cantidad" column="cantidad" />
<property name="precio" column="precio" />
<many-to-one name="moneda" not-null="true" column="idMoneda" />
<many-to-one name="item" not-null="true" column="idItemProveedor" />
</composite-element>
</set>
</class>
</hibernate-mapping>
Code between sessionFactory.openSession() and session.close():
Name and version of the database you are using:
MySQL
Debug level Hibernate log excerpt:
|