HHH-13317
by Gail Badner
HHH-13317 is specifically a bug with bytecode enhancement using Javassist.
It showed up when running a test added for HHH-13241.
I've verified that the same issue affected 5.1, so this is not a regression.
Is it worthwhile to fix this issue in 5.3/5.4? Will Javassist continue to
be supported in Hibernate ORM 6? If not, I'd like to close HHH-13317 as
"Won't fix".
Thanks,
Gail
5 years, 2 months
Rebased ORM6
by Sanne Grinovero
I've completed a rebase of Steve's latest ORM6 branch onto our latest ORM5
master, so to have it incorporate all latest bugfixes and performance
enhancements we recently developed on master.
To be more specific, this is a rebase of commit 'wip/sqm-jpa-types-sql-ast'
[2e002c73c6] onto 'master' [40b30fa099].
I'm pushing it as branch '6-rebased-August' to my own fork. (commit
[ec3a325fbc]).
I hope that anyone having some work in progress could cherry pick on top of
that :)
Also you probably want to push it somewhere else and give a more creative
name.
Steve: the last commit might need special attention.
I needed to review the SessionImpl#buildLockOptions method as there was a
conflict, but while trying to resolve it I realized the method was probably
not doing what it was supposed to, so I changed it - I think fixing
something odd but I might have misunderstood the intent, or thrown off by
some mistake during rebase. Would appreciate another pair of eyes on that
one as I definitely changed the semantics.
Thanks,
Sanne
5 years, 2 months
EntityMetamodel
by Gail Badner
HHH-11147 changed a EntityMetamodel constructor argument from
a SessionFactoryImplementor to a PersisterCreationContext.
Would a custom EntityPersister break due to calling the constructor with
the new argument type?
>From what I can tell, the argument was changed to PersisterCreationContext
go get access to an entity's metamodel, intended to be used
by EnhancementHelper.includeInBaseFetchGroup.
The Function<String,Boolean> subclassChecker is passed to:
* BytecodeEnhancementMetadataPojoImpl.from
* LazyAttributesMetadata.from
* EnhancementHelper.includeInBaseFetchGroup
EnhancementHelper.includeInBaseFetchGroup does not use the value passed in
for hasSubclassChecker.
Can the EntityMetamodel constructor be changed back to take a
SessionFactoryImplementor?
Can the hasSubclassChecker argument be removed from
BytecodeEnhancementMetadataPojoImpl.from, LazyAttributesMetadata.from, and
EnhancementHelper.includeInBaseFetchGroup?
Thanks,
Gail
5 years, 2 months
Property#isLazy
by Gail Badner
HHH-11147 changed Property#isLazy as shown in [1].
The part that concerns me is:
+ // For a many-to-one, this is always false. Whether the
+ // association is EAGER, PROXY or NO-PROXY we want the fk
+ // selected
+ return false;
I don't think this is correct when enhancement-as-proxy is disabled.
Join#isLazy relies on Property#isLazy for the properties included in the
Join.
If Join#isLazy is returning the wrong value,
then SingleTableEntityPersister#isSubclassTableLazy
and JoinedSubclassEntityPersister#isSubclassTableLazy will return the wrong
value.
Steve, WDYT?
Thanks,
Gail
[1]
https://github.com/hibernate/hibernate-orm/commit/cc01f2561dbca95bd58048f...
5 years, 2 months