[Hibernate-JIRA] Created: (HHH-6188) java.util.UUID cannot be used for Ids
by Thomas Oellrich (JIRA)
java.util.UUID cannot be used for Ids
-------------------------------------
Key: HHH-6188
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-6188
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.6.3
Environment: Hibernate 3.6.3Final, Oracle 9i
Reporter: Thomas Oellrich
Attachments: Foo.java, foo.sql, fullstacktrace.txt
Hibernate successfully maps java.util.UUID to a database field defined as raw(16) in Oracle. However, as soon as I add the @Id annotation from the JPA-API, I get the following error:
Caused by: org.hibernate.MappingException: No Dialect mapping for JDBC type: -2
at org.hibernate.dialect.TypeNames.get(TypeNames.java:77)
at org.hibernate.dialect.TypeNames.get(TypeNames.java:100)
at org.hibernate.dialect.Dialect.getTypeName(Dialect.java:296)
at org.hibernate.mapping.Column.getSqlType(Column.java:208)
at org.hibernate.mapping.Table.sqlTemporaryTableCreateString(Table.java:371)
at org.hibernate.mapping.PersistentClass.prepareTemporaryTables(PersistentClass.java:774)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:272)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1845)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:906)
I'm using org.hibernate.dialect.Oracle9iDialect.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-6121) Hibernate statistics should log at DEBUG level instead of INFO
by Philippe Laflamme (JIRA)
Hibernate statistics should log at DEBUG level instead of INFO
--------------------------------------------------------------
Key: HHH-6121
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-6121
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.5.6
Reporter: Philippe Laflamme
With HHH-3659 came lots of output at INFO level during bulk operations:
{noformat}
2011-04-13 14:16:21,538 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
2011-04-13 14:16:21,538 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
2011-04-13 14:16:21,577 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
2011-04-13 14:16:21,577 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
2011-04-13 14:16:21,626 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
2011-04-13 14:16:21,626 - INFO - hibernate.stat.Statistics - HQL: null, time: 0ms, rows: 0
{noformat}
Hibernate used to be completely silent (except at startup) when set at the INFO level. Now, it is very verbose.
If someone needs query timings they are probably debugging something. This output should probably set at DEBUG level instead of INFO.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-3440) 3.3.0 GA with MySQL 5.0 throws table validation exception
by Carlo Luib-Finetti (JIRA)
3.3.0 GA with MySQL 5.0 throws table validation exception
---------------------------------------------------------
Key: HHH-3440
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3440
Project: Hibernate3
Issue Type: Bug
Components: core
Affects Versions: 3.3.0.GA
Environment: Hibernate 3.3.0 GA
MySQL 5.0
JBoss 4.2.2
Reporter: Carlo Luib-Finetti
Hibernate immediately throws an exception at application startup, when it does the schema validation.
org.hibernate.HibernateException: Wrong column type in dpjw.assessment for column NOTES. Found: text, expected: longtext
Comparing the sources of 3.2.0 with 3.3.0 I can see that someone set two java statements into comment. The 3.2 version of MySQLDialect.java looks like this:
protected void registerVarcharTypes() {
registerColumnType( Types.VARCHAR, "longtext" );
registerColumnType( Types.VARCHAR, 16777215, "mediumtext" );
registerColumnType( Types.VARCHAR, 65535, "text" );
registerColumnType( Types.VARCHAR, 255, "varchar($l)" );
}
while the new 3.3.0 version is this:
protected void registerVarcharTypes() {
registerColumnType( Types.VARCHAR, "longtext" );
// registerColumnType( Types.VARCHAR, 16777215, "mediumtext" );
// registerColumnType( Types.VARCHAR, 65535, "text" );
registerColumnType( Types.VARCHAR, 255, "varchar($l)" );
}
If I uncomment these (and others in the same Java file!), the validation process is ok.
Is there any reason why these statements (and others!) were commented out???
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-3530) The code in the 3.3.1.GA subversion tag is not the code that's been released on the maven repository.jboss.org as 3.3.1.GA
by Geoffrey De Smet (JIRA)
The code in the 3.3.1.GA subversion tag is not the code that's been released on the maven repository.jboss.org as 3.3.1.GA
--------------------------------------------------------------------------------------------------------------------------
Key: HHH-3530
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3530
Project: Hibernate Core
Issue Type: Bug
Components: build
Affects Versions: 3.3.1
Reporter: Geoffrey De Smet
Here's the proof:
http://fisheye.jboss.org/browse/Hibernate/core/tags/hibernate-3.3.1.GA/co...
contains the lines (44-45):
registerColumnType( Types.CLOB, "longtext" );
registerColumnType( Types.CLOB, 16777215, "mediumtext" );
registerColumnType( Types.CLOB, 65535, "text" );
But the sources jar downloaded from
http://repository.jboss.org/maven2/org/hibernate/hibernate-core/3.3.1.GA/...
file
org\hibernate\dialect\MySQLDialect.java
so on my pc
C:\Documents and Settings\gds\.m2\repository\org\hibernate\hibernate-core\3.3.1.GA\hibernate-core-3.3.1.GA-sources.jar!\org\hibernate\dialect\MySQLDialect.java
has these lines (66-68) instead:
registerColumnType( Types.CLOB, "longtext" );
// registerColumnType( Types.CLOB, 16777215, "mediumtext" );
// registerColumnType( Types.CLOB, 65535, "text" );
It's not just some copyright stuff that been added (giving it different line numbers), some lines are clearly commented out.
Maybe untagged changes happened in other files too?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-3930) one-to-one causes redundant select query
by Martijn Dashorst (JIRA)
one-to-one causes redundant select query
----------------------------------------
Key: HHH-3930
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3930
Project: Hibernate Core
Issue Type: Bug
Components: core
Affects Versions: 3.3.1
Reporter: Martijn Dashorst
@Entity
public class Address {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@OneToOne(mappedBy = "address")
private Customer customer;
}
@Entity
public class Customer {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Address address = new Address();
public Long getId() {
return id;
}
public Address getAddress() {
return address;
}
}
This mapping causes 2 instead of the expected 1 query to retrieve a Customer and its Address from the db:
select * from Customer customer0_ left outer join Address address1_ on customer0_.address_id=address1_.id where customer0_.id=?
select * from Customer customer0_ left outer join Address address1_ on customer0_.address_id=address1_.id where customer0_.address_id=?
Changing the mapping to a LAZY fetch type:
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
private Address address = new Address();
Causes 3 select queries instead of the expected 2 queries to retrieve a Customer (and its Address) from the db:
select * from Customer customer0_ where customer0_.id=?
select * from Address address0_ left outer join Customer customer1_ on address0_.id=customer1_.address_id where address0_.id=?
select * from Customer customer0_ where customer0_.address_id=?
The third select is superfluous because the relationship is already completely known: you already have the customer, so why not just set it on the address entity?
Making the address field in Customer a @ManyToOne doesn't make a difference.
Making the customer field in Address a @OneToMany does remove the extra select, but forces our model to change the relationship from Customer to List<Customer> where we *know* there'll be only 1 element.
Apparently Hibernate can figure out the reverse relationship with a @ManyToOne - @OneToMany without the need for additional queries, can't this be extended to @OneToOne bidirectional relationships as well?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-5917) Envers doesnt track all columns anymore
by Slawek Garwol (JIRA)
Envers doesnt track all columns anymore
---------------------------------------
Key: HHH-5917
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-5917
Project: Hibernate Core
Issue Type: Bug
Components: envers
Affects Versions: 3.6.1
Environment: WinXP, Oracle
Reporter: Slawek Garwol
Envers doesnt track all columns anymore:
Audited table:
create table CREW_DAILY_STATISTICS (
CREW_DAILY_STATISTICS_ID number(10,0) not null,
STAFF_NUM varchar2(12 char) not null,
STATISTICS_DATE timestamp not null,
CREDIT_TIME number(5,0) not null,
DUTY_TIME number(5,0) not null,
FLYING_TIME number(5,0) not null,
NIGHT_FLYING_TIME number(5,0) not null,
NON_STD_FLYING_TIME number(5,0) not null,
DAYS_OFF_COUNT number(5,0) not null,
LEAVE_COUNT number(5,0) not null,
BLANK_DAY_COUNT number(5,0) not null,
primary key (CREW_DAILY_STATISTICS_ID),
unique (STAFF_NUM, STATISTICS_DATE)
);
AUD table in Hibernate 3.6.0:
create table CREW_DAILY_STATISTICS_AUD (
CREW_DAILY_STATISTICS_ID number(10,0) not null,
REV number(19,0) not null,
REVTYPE number(3,0),
STAFF_NUM varchar2(12 char),
STATISTICS_DATE timestamp,
CREDIT_TIME number(5,0),
DUTY_TIME number(5,0),
FLYING_TIME number(5,0),
NIGHT_FLYING_TIME number(5,0),
NON_STD_FLYING_TIME number(5,0),
DAYS_OFF_COUNT number(5,0),
LEAVE_COUNT number(5,0),
BLANK_DAY_COUNT number(5,0),
primary key (CREW_DAILY_STATISTICS_ID, REV)
);
AUD table in Hibernate 3.6.1:
create table CREW_DAILY_STATISTICS_AUD (
CREW_DAILY_STATISTICS_ID number(10,0) not null,
REV number(19,0) not null,
REVTYPE number(3,0),
primary key (CREW_DAILY_STATISTICS_ID, REV)
);
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months
[Hibernate-JIRA] Created: (HHH-6177) Envers - problem with mapping relation when using mixed inheritance strategy
by Michał Skowronek (JIRA)
Envers - problem with mapping relation when using mixed inheritance strategy
----------------------------------------------------------------------------
Key: HHH-6177
URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-6177
Project: Hibernate Core
Issue Type: Bug
Components: envers
Affects Versions: 4.0.0.Alpha2
Environment: 3.6.0.Final
Oracle10g
Reporter: Michał Skowronek
Attachments: MixedInheritanceStrategies.patch
For the mapping like that:
<hibernate-mapping>
<class abstract="true" name="AbstractActivity"
table="ACTIVITY">
<id name="id" type="integer">
<generator class="assigned"/>
</id>
<discriminator column="ACTIVITY_TYPE" type="string" length="20"/>
<property name="sequenceNumber" type="int" not-null="true"/>
<subclass abstract="true"
name="AbstractCheckActivity">
<join table="ACTIVITY_CHECK">
<key foreign-key="FK_CHKACT_ACT" not-null="true" column="ACTIVITY_ID"/>
<property name="durationInMinutes" type="int" not-null="true" column="DURATION_IN_MINUTES"/>
<many-to-one name="relatedActivity"
cascade="merge"
foreign-key="FK_CHKACT_RELACT"
class="AbstractActivity"
lazy="proxy">
<column name="RELATED_ACTIVITY_ID" not-null="false"/>
</many-to-one>
</join>
<subclass name="CheckInActivity"
discriminator-value="CHECK_IN"/>
</subclass>
<subclass name="NormalActivity"
discriminator-value="NORMAL"/>
</class>
</hibernate-mapping>
Envers generates improper audit table configuration for AbstractCheckActivity:
<hibernate-mapping auto-import="false">
<subclass entity-name="AbstractCheckActivity_AUD" discriminator-value="AbstractCheckActivity" table="ACTIVITY_AUD" extends="AbstractActivity_AUD">
<join table="ACTIVITY_CHECK_AUD">
<key>
<column name="ACTIVITY_ID" length="255" scale="2" precision="19"/>
<column name="REV"/>
</key>
<property name="durationInMinutes" insert="true" update="false" type="integer">
<column name="DURATION_IN_MINUTES" length="255" scale="2" precision="19"/>
</property>
<properties name="relatedActivity">
<property name="relatedActivity_id" insert="true" update="false" type="integer">
<column name="RELATED_ACTIVITY_ID" length="255" scale="2" precision="19"/>
</property>
</properties>
</join>
</subclass>
</hibernate-mapping>
This is not a valid mapping document, because properties tag is not allowed within join. The resulting schema doesn't contain column RELATED_ACTIVITY_ID -> this property is always null for historic data (as read by AuditReader).
The problem won't occur if I use joined-subclass inheritance strategy for the hierarchy, but it's not desirable here.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 5 months