From 904ac8975f44173166643c9ea8514944d2f7008c Mon Sep 17 00:00:00 2001 From: Juan Manuel Leflet Estrada Date: Fri, 10 Mar 2023 12:49:09 +0100 Subject: [PATCH] [WINDUPRULE-966] Add @GeneratedValue rule (#888) * [WINDUPRULE-966] Add @GeneratedValue rule * [WINDUPRULE-966] Fix jakarta count (cherry picked from commit c39865406a69cb4b3d9600f7e4379a0ee698fd77) --- .../eap8/eap7/hibernate6.windup.xml | 25 ++++++++++++++++++ .../hibernate6/HibernateOrm6TestClass.java | 2 ++ .../hibernate6/hibernate-core-5.5.5.Final.jar | Bin 0 -> 201 bytes .../eap7/tests/hibernate6.windup.test.xml | 10 +++++++ .../javax-to-jakarta-package.windup.test.xml | 2 +- 5 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/hibernate-core-5.5.5.Final.jar diff --git a/rules/rules-reviewed/eap8/eap7/hibernate6.windup.xml b/rules/rules-reviewed/eap8/eap7/hibernate6.windup.xml index 8fa3b4e7e..fe00d92ee 100644 --- a/rules/rules-reviewed/eap8/eap7/hibernate6.windup.xml +++ b/rules/rules-reviewed/eap8/eap7/hibernate6.windup.xml @@ -16,6 +16,31 @@ + + + + + ANNOTATION + + + + + + + + + + + + + The way in which Hibernate determines implicit names for sequences and tables associated with identifier generation has changed in 6.0 which may affect migrating applications. + As of 6.0, Hibernate by default creates a sequence per entity hierarchy instead of a single sequence hibernate_sequence. + Due to this change, users that previously used `@GeneratedValue(strategy = GenerationStrategy.AUTO)` or simply `@GeneratedValue` (since `AUTO` is the default), need to ensure that the database now contains sequences for every entity, named `<entity name>_seq`. For an entity Person, a sequence person_seq is expected to exist. It’s best to run hbm2ddl (e.g. by temporarily setting `hbm2ddl.auto=create`) to obtain a list of DDL statements for the sequences. + + + + + diff --git a/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/HibernateOrm6TestClass.java b/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/HibernateOrm6TestClass.java index d48c5a2b3..93b42afa6 100644 --- a/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/HibernateOrm6TestClass.java +++ b/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/HibernateOrm6TestClass.java @@ -18,12 +18,14 @@ import org.hibernate.jmx.internal.DisabledJmxServiceImpl; import org.hibernate.criterion.Criterion; +import javax.persistence.GeneratedValue; @NamedNativeQuery(callable = true, name = "name", query = "query") public class HibernateOrm6TestClass implements BasicType { @AnyMetaDef(metaType = "type") String hey; + @GeneratedValue @ParamDef(name = "name", type = "type") String param; diff --git a/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/hibernate-core-5.5.5.Final.jar b/rules/rules-reviewed/eap8/eap7/tests/data/hibernate6/hibernate-core-5.5.5.Final.jar new file mode 100644 index 0000000000000000000000000000000000000000..3bf8f0e9e24629468b7677d98611fae3f008e0d2 GIT binary patch literal 201 zcmWIWW@Zs#U|`^2@JlccvzqQ`s|e(20x>6p3`0t3Zf>PsNkvI$2qy!xOXj)cc|crR z!Og(P@`9Ox0Zg3M_qu-igpZf*DQ_LmtxcOtCV%b@TI=)G;exKQzF|8zLx49UlN>WH nTO@#XF)%O!@sdUm3&~Dah@EKm1$eWvffO../ + + + + + + + + + + diff --git a/rules/rules-reviewed/eap8/eap7/tests/javax-to-jakarta-package.windup.test.xml b/rules/rules-reviewed/eap8/eap7/tests/javax-to-jakarta-package.windup.test.xml index 04c39ada6..0621f4c44 100644 --- a/rules/rules-reviewed/eap8/eap7/tests/javax-to-jakarta-package.windup.test.xml +++ b/rules/rules-reviewed/eap8/eap7/tests/javax-to-jakarta-package.windup.test.xml @@ -10,7 +10,7 @@ - +