[hibernate-dev] Trying Hibernate 5.0.0.Beta1

Steve Ebersole steve at hibernate.org
Tue Mar 31 19:56:53 EDT 2015


Actually this may have been a brain-fart on my part when building the
release.  I think I may have forgotten to pass in the Java 6 JDK to the
build, which I use to set the javac bootclasspath.  So in that case it
would have used the bootclasspath from the Java 8 JDK I used to launch
gradle.

If you get a chance, you can test that theory by getting the sources and
running the hibernate-core build again.  You'd have to use Java 8 to launch
Gradle and pass -PJDK6_HOME=<path-to-java7-jdk>.


On Tue, Mar 31, 2015 at 6:36 PM, Steve Ebersole <steve at hibernate.org> wrote:

> Ahh, seems this may be an option to work around it:
>
> <quote>
> Using the general *Map* interface in place of the concrete
> *ConcurrentHashMap* type here side-steps the coupling to the Java 8
> return type and will allow this code to be compiled with Java 8 and run on
> Java 7.
> </quote>
>
> I had missed that part.
>
>
> On Tue, Mar 31, 2015 at 6:34 PM, Steve Ebersole <steve at hibernate.org>
> wrote:
>
>> When I say "internal" here, I mean internal to java classes.
>>
>> On Tue, Mar 31, 2015 at 6:30 PM, Steve Ebersole <steve at hibernate.org>
>> wrote:
>>
>>> Nope.  It just effects any code compiled with Java 8 even though the
>>> change is internal.  The problem is the generated bytecode incorporates
>>> this change.   Like I said, this should be compiled with 1.6 compatibility,
>>> but that is apparently not working atm.  I am having a struggle getting a
>>> mixed JDK build working "just right".
>>>
>>> On Tue, Mar 31, 2015 at 6:28 PM, Petar Tahchiev <paranoiabla at gmail.com>
>>> wrote:
>>>
>>>> According to this:
>>>>
>>>> https://gist.github.com/AlainODea/1375759b8720a3f9f094
>>>>
>>>> Notably the Java 1.7 *ConcurrentHashMap#keySet()* returns a Set<K> while
>>>> the 1.8*ConcurrentHashMap#keySet()* returns a
>>>> ConcurrentHashMap.KeySetView<K,V>`.
>>>>
>>>> I think you're using some Java8 API.
>>>>
>>>>
>>>> 2015-04-01 2:25 GMT+03:00 Petar Tahchiev <paranoiabla at gmail.com>:
>>>>
>>>>> petar at petar-ThinkPad-X1-Carbon:~$ java -version
>>>>> java version "1.7.0_71"
>>>>> Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
>>>>> Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
>>>>> petar at petar-ThinkPad-X1-Carbon:~$ uname -a
>>>>> Linux petar-ThinkPad-X1-Carbon 3.16.0-33-generic #44-Ubuntu SMP Thu
>>>>> Mar 12 12:19:35 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
>>>>> petar at petar-ThinkPad-X1-Carbon:~$
>>>>>
>>>>>
>>>>> 2015-04-01 2:21 GMT+03:00 Steve Ebersole <steve at hibernate.org>:
>>>>>
>>>>>> What JRE are you trying to use?  This error:
>>>>>>
>>>>>> java.lang.NoSuchMethodError: java.util.concurrent.
>>>>>> ConcurrentHashMap.keySet()Ljava/util/concurrent/
>>>>>> ConcurrentHashMap$KeySetView;
>>>>>>
>>>>>> is indicative of an issue in cross-jre support due to a change
>>>>>> internal to java classes.
>>>>>>
>>>>>>
>>>>>> On Tue, Mar 31, 2015 at 6:03 PM, Petar Tahchiev <
>>>>>> paranoiabla at gmail.com> wrote:
>>>>>>
>>>>>>> Thanks Steve,
>>>>>>>
>>>>>>> I managed to migrate my configuration to the new
>>>>>>> MetamodelImplementor. Now when I run the scema export I get a lot of these
>>>>>>> warning:
>>>>>>>
>>>>>>> INFO : HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
>>>>>>> WARN : JDBC Driver reports it stores quoted identifiers in both
>>>>>>> mixed and upper case
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.core.model.cms.AbstractPageModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.module.invoice.core.model.InvoicePageModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.core.model.batch.BatchStepExecutionContextModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.core.model.batch.BatchJobExecutionContextModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.module.search.core.model.SearchKeywordRedirectModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.module.search.core.model.SearchPageRedirectModel
>>>>>>> WARN : HHH000072: Duplicate joins for class:
>>>>>>> com.xxx.platform.module.promotion.core.model.PromotionModel
>>>>>>>
>>>>>>> and when I run some test I get the following exception:
>>>>>>> java.lang.NoSuchMethodError:
>>>>>>> java.util.concurrent.ConcurrentHashMap.keySet()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
>>>>>>>     at
>>>>>>> org.hibernate.internal.SessionFactoryImpl.iterateEntityNameResolvers(SessionFactoryImpl.java:733)
>>>>>>>     at
>>>>>>> org.hibernate.internal.SessionImpl$CoordinatingEntityNameResolver.resolveEntityName(SessionImpl.java:2470)
>>>>>>>     at
>>>>>>> org.hibernate.internal.SessionImpl.guessEntityName(SessionImpl.java:1992)
>>>>>>>     at
>>>>>>> org.hibernate.internal.SessionImpl.getEntityPersister(SessionImpl.java:1485)
>>>>>>>     at
>>>>>>> org.hibernate.event.internal.DefaultMergeEventListener.onMerge(DefaultMergeEventListener.java:163)
>>>>>>>     at
>>>>>>> org.hibernate.event.internal.DefaultMergeEventListener.onMerge(DefaultMergeEventListener.java:85)
>>>>>>>     at
>>>>>>> org.hibernate.internal.SessionImpl.fireMerge(SessionImpl.java:882)
>>>>>>>     at org.hibernate.internal.SessionImpl.merge(SessionImpl.java:864)
>>>>>>>     at org.hibernate.internal.SessionImpl.merge(SessionImpl.java:869)
>>>>>>>     at
>>>>>>> org.hibernate.jpa.spi.AbstractEntityManagerImpl.merge(AbstractEntityManagerImpl.java:1196)
>>>>>>>     at
>>>>>>> org.springframework.batch.item.database.JpaItemWriter.doWrite(JpaItemWriter.java:104)
>>>>>>>     at
>>>>>>> org.springframework.batch.item.database.JpaItemWriter.write(JpaItemWriter.java:83)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> 2015-04-01 1:23 GMT+03:00 Steve Ebersole <steve at hibernate.org>:
>>>>>>>
>>>>>>>> I am told that the bug does not affect the JBoss->Central sync
>>>>>>>> process.  So at some point the artifacts should all be available in Central
>>>>>>>>
>>>>>>>> On Tue, Mar 31, 2015 at 5:19 PM, Steve Ebersole <
>>>>>>>> steve at hibernate.org> wrote:
>>>>>>>>
>>>>>>>>> hibernate-core seems to be the only artifact that is available in
>>>>>>>>> JBoss Nexus.
>>>>>>>>>
>>>>>>>>> On Tue, Mar 31, 2015 at 5:18 PM, Steve Ebersole <
>>>>>>>>> steve at hibernate.org> wrote:
>>>>>>>>>
>>>>>>>>>> So apparently the artifacts / repo issue is a Nexus bug that is
>>>>>>>>>> effecting the JBoss repo (and therefore us)...
>>>>>>>>>> http://issues.sonatype.org/browse/NEXUS-7654
>>>>>>>>>>
>>>>>>>>>> As I pointed out in the announcement, I am managing the
>>>>>>>>>> "migration guide" in source repo while I develop the Betas.  See
>>>>>>>>>> https://github.com/hibernate/hibernate-orm/blob/master/working-5.0-migration-guide.md
>>>>>>>>>>  As far are the new bootstrapping apis, see
>>>>>>>>>> http://docs.jboss.org/hibernate/orm/5.0/topical/html/bootstrap/NativeBootstrapping.html
>>>>>>>>>> and
>>>>>>>>>> http://docs.jboss.org/hibernate/orm/5.0/topical/html/bootstrap/LegacyBootstrapping.html
>>>>>>>>>>
>>>>>>>>>> On Tue, Mar 31, 2015 at 5:07 PM, Petar Tahchiev <
>>>>>>>>>> paranoiabla at gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi guys,
>>>>>>>>>>>
>>>>>>>>>>> I just tried the latest beta and I cannot compile my project.
>>>>>>>>>>> With the
>>>>>>>>>>> latest hibernate 4.3.X I was able to do this:
>>>>>>>>>>> -------
>>>>>>>>>>>         final org.hibernate.cfg.Configuration configuration =
>>>>>>>>>>> getHibernateConfiguration();
>>>>>>>>>>>         configuration.buildMappings();
>>>>>>>>>>>         final SchemaUpdate schemaUpdate = new
>>>>>>>>>>> SchemaUpdate(configuration);
>>>>>>>>>>> -------
>>>>>>>>>>>
>>>>>>>>>>> however it seems that the SchemaUpdate constructor has been
>>>>>>>>>>> removed and now
>>>>>>>>>>> a new one is added:
>>>>>>>>>>> --------
>>>>>>>>>>>     public SchemaUpdate(MetadataImplementor metadata) {
>>>>>>>>>>>         this(
>>>>>>>>>>> metadata.getMetadataBuildingOptions().getServiceRegistry(),
>>>>>>>>>>> metadata );
>>>>>>>>>>>     }
>>>>>>>>>>> ---------
>>>>>>>>>>>
>>>>>>>>>>> Also the configuration.buildMappings() method has been
>>>>>>>>>>> deprecated. Where do
>>>>>>>>>>> I get the MetadataImplementor from? Also is there any changelog
>>>>>>>>>>> I can refer
>>>>>>>>>>> to?
>>>>>>>>>>>
>>>>>>>>>>> Thanks.
>>>>>>>>>>> --
>>>>>>>>>>> Regards, Petar!
>>>>>>>>>>> Karlovo, Bulgaria.
>>>>>>>>>>> ---
>>>>>>>>>>> Public PGP Key at:
>>>>>>>>>>>
>>>>>>>>>>> https://keyserver1.pgp.com/vkd/DownloadKey.event?keyid=0x19658550C3110611
>>>>>>>>>>> Key Fingerprint: A369 A7EE 61BC 93A3 CDFF  55A5 1965 8550 C311
>>>>>>>>>>> 0611
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> hibernate-dev mailing list
>>>>>>>>>>> hibernate-dev at lists.jboss.org
>>>>>>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Regards, Petar!
>>>>>>> Karlovo, Bulgaria.
>>>>>>> ---
>>>>>>> Public PGP Key at:
>>>>>>> https://keyserver1.pgp.com/vkd/DownloadKey.event?keyid=0x19658550C3110611
>>>>>>> Key Fingerprint: A369 A7EE 61BC 93A3 CDFF  55A5 1965 8550 C311 0611
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards, Petar!
>>>>> Karlovo, Bulgaria.
>>>>> ---
>>>>> Public PGP Key at:
>>>>> https://keyserver1.pgp.com/vkd/DownloadKey.event?keyid=0x19658550C3110611
>>>>> Key Fingerprint: A369 A7EE 61BC 93A3 CDFF  55A5 1965 8550 C311 0611
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Regards, Petar!
>>>> Karlovo, Bulgaria.
>>>> ---
>>>> Public PGP Key at:
>>>> https://keyserver1.pgp.com/vkd/DownloadKey.event?keyid=0x19658550C3110611
>>>> Key Fingerprint: A369 A7EE 61BC 93A3 CDFF  55A5 1965 8550 C311 0611
>>>>
>>>
>>>
>>
>


More information about the hibernate-dev mailing list