Sanne Grinovero
9bfffd85d7
HHH-13565 Ensure all events from EventListenerGroup can be fired without allocations
2019-08-22 13:51:36 +01:00
Sanne Grinovero
646a8756a9
HHH-13565 Making SessionFactoryImpl#LockOptions lazily initialized as well
2019-08-22 13:51:36 +01:00
Sanne Grinovero
2de048fde5
HHH-13565 Prepare the most commonly needed SessionBuilder instances in advance
2019-08-22 13:51:36 +01:00
Sanne Grinovero
cc39f54717
HHH-13565 Micro cleanup of Trace level checks
2019-08-22 13:51:36 +01:00
Sanne Grinovero
91299aeb7f
HHH-13565 Remove some dead code from SessionImpl
2019-08-22 13:51:36 +01:00
Sanne Grinovero
b8f3fc3616
HHH-13565 Convert iteration of event listeners to be allocation free
2019-08-22 13:51:36 +01:00
Sanne Grinovero
269d5f8358
HHH-13565 Review allocations for default SessionEventListener instances
2019-08-22 13:51:36 +01:00
Sanne Grinovero
4b2f056a63
HHH-13565 Avoid allocating ArrayList of ConnectionObserver instances on each Session
2019-08-22 13:51:36 +01:00
Sanne Grinovero
4ef8030f51
HHH-13565 Move field SessionImpl#discardOnClose to FastSessionServices as well
2019-08-22 13:51:36 +01:00
Sanne Grinovero
e23e6a73e6
HHH-13565 Extract Session properties to avoid eager initialization of Map<String,Object> properties
2019-08-22 13:51:36 +01:00
Sanne Grinovero
457e9b61fa
HHH-13565 Formatting improvements
2019-08-22 13:51:36 +01:00
Sanne Grinovero
bc5b3c028f
HHH-13565 Remove some related dead code
2019-08-22 13:51:36 +01:00
Sanne Grinovero
be9fe27592
HHH-13565 Promote to FastSessionServices: isJtaTransactionAccessible
2019-08-22 13:51:36 +01:00
Sanne Grinovero
8931ef0962
HHH-13565 Promote JDBCServices as hot service to be retrieved from FastSessionService as well
2019-08-22 13:51:32 +01:00
Sanne Grinovero
185ef2edb7
HHH-13565 Extract some hot ServiceRegistry services as well
2019-08-22 09:26:16 +01:00
Sanne Grinovero
72ce71ef10
HHH-13565 Dialect is another constant
2019-08-22 09:26:16 +01:00
Sanne Grinovero
8a3c1ee504
HHH-13565 Promote field useStreamForLobBinding as cross-Session constant
2019-08-22 09:26:16 +01:00
Sanne Grinovero
a39acebde8
HHH-13565 Move field AbstractSharedSessionContract#disallowOutOfTransactionUpdateOperations to constants in FastSessionServices
2019-08-22 09:26:16 +01:00
Sanne Grinovero
5eaa1498df
HHH-13565 Session opening efficiency: introduce FastSessionServices and design for shared services among sessions
2019-08-22 09:26:16 +01:00
Sanne Grinovero
408275ddec
HHH-13594 ResourceRegistryStandardImpl#release could avoid allocating a capturing lambda
2019-08-20 19:12:21 +01:00
Sanne Grinovero
4661efa468
HHH-13591 Fixing formatting of previous patch
2019-08-20 08:44:51 +01:00
Carsten Hammer
19ac013eeb
HHH-13591 Replaces simple uses of array iteration with a corresponding for-each loop
2019-08-20 08:44:39 +01:00
Ladislav Kulhanek
e0f4047429
HHH-12993 Omit joining of superclass table when querying subclass only
2019-08-19 10:11:29 -05:00
Sanne Grinovero
da847f4b57
HHH-13587 Avoid using deprecated PersistenceContext#getCollectionEntries in tests
2019-08-19 14:18:28 +01:00
Sanne Grinovero
7531ed793a
HHH-13587 Make StatefulPersistenceContext#entitiesByUniqueKey lazily initialized as well
2019-08-19 14:18:28 +01:00
Sanne Grinovero
05b888e0c0
HHH-13587 Make StatefulPersistenceContext#arrayHolders lazily initialized as well
2019-08-19 14:18:28 +01:00
Sanne Grinovero
dbbc24c2e1
HHH-13587 Make StatefulPersistenceContext#nonlazyCollections a lazily initialized field
2019-08-19 14:18:28 +01:00
Sanne Grinovero
690a8d5520
HHH-13587 Make StatefulPersistenceContext#collectionEntries also lazily initialized
2019-08-19 14:18:28 +01:00
Sanne Grinovero
3b30c60ce3
HHH-13587 Introduce SPI method PersistenceContext#getCollectionEntriesSize()
2019-08-19 14:18:28 +01:00
Sanne Grinovero
0d10174c23
HHH-13587 Make StatefulPersistenceContext#parentsByChild a lazily initialized IdentityHashMap
2019-08-19 14:18:28 +01:00
Sanne Grinovero
1101727a4f
HHH-13587 StatefulPersistenceContext#unownedCollections was almost fully lazy already
2019-08-19 14:18:28 +01:00
Sanne Grinovero
a11359524b
HHH-13587 Lazily initialize ConcurrentReferenceHashMap proxiesByKey in StatefulPersistenceContext
2019-08-19 14:18:28 +01:00
Sanne Grinovero
0538b97d6a
HHH-13587 Allocate StatefulPersistenceContext#naturalIdXrefDelegate lazily
2019-08-19 14:18:28 +01:00
Sanne Grinovero
aae670b9b3
HHH-13587 Allocate StatefulPersistenceContext#nullAssociations lazily
2019-08-19 14:18:28 +01:00
Sanne Grinovero
5bbf417c52
HHH-13587 Allocate StatefulPersistenceContext#nullifiableEntityKeys lazily
2019-08-19 14:18:28 +01:00
Sanne Grinovero
eb675e1c7f
HHH-13587 Review formatting and logging style of StatefulPersistenceContext
2019-08-19 14:18:28 +01:00
Sanne Grinovero
d065888140
HHH-13589 Avoid HashMap.values() when forEach is an easy replacement
2019-08-19 10:35:39 +01:00
Sanne Grinovero
f49c97c0aa
HHH-13589 ActionQueue review: code formatting
2019-08-19 10:35:39 +01:00
Sergey Ponomarev
0a3f62abbf
HHH-13588 Add missed functions to MySQL Dialect: weight_string, to_base64, from_base64, regexp_replace, regexp_instr, regexp_substr
2019-08-19 09:54:22 +01:00
Sanne Grinovero
0a1213be1a
HHH-13585 Duplicate resource release in PessimisticReadSelectLockingStrategy
2019-08-16 15:11:12 +01:00
Sanne Grinovero
0b64cef2b3
HHH-13579 Optimise ResourceRegistryStandardImpl to avoid heavy allocation of iterators
2019-08-16 12:31:19 +01:00
Sanne Grinovero
927f4c2ffc
HHH-13584 Reduce ServiceRegistry lookups in LocalConnectionAccess in SessionFactory
2019-08-16 12:16:18 +01:00
Gail Badner
7c57047f4a
HHH-13569 : Shorten table name that's too long for Oracle
2019-08-15 01:28:23 -07:00
Andrea Boriero
210aff098c
HHH-13577 LockTest.testContendedPessimisticLock and StatementIsClosedAfterALockExceptionTest.testStatementIsClosed tests fail on Sybase
...
HHH-13577 : Re-enable LockTest for SybaseASE15Dialect
2019-08-14 18:43:09 -07:00
Andrea Boriero
cfd7db36c6
HHH-13574 SybaseASE does not support PARTITION BY
2019-08-14 18:11:02 -07:00
Sanne Grinovero
6b489474f5
HHH-13576 Similar debugf and tracef issues found via grepping
2019-08-14 11:40:39 +01:00
Sanne Grinovero
e110ab0030
HHH-13576 A couple more Logger mistakes in SessionImpl
2019-08-14 11:16:58 +01:00
Sanne Grinovero
7746227115
HHH-13576 Invoking tracef() or debugf() w/o an array of parameters actually allocates an empty Object[]
2019-08-14 11:16:58 +01:00
Legohuman
35037dac7b
HHH-13259 Fix StackOverflowError in StringHelper
...
Before fix method org.hibernate.internal.util.StringHelper#replace
matched placeholders illegally in case when ordinal parameters list was
expanded. Ex. placeholder ?1 was matched with ?11, ?12, ?13 etc. For
queries with 2 or more IN clauses with different collections there were
a situation when ?1 from the first clause matched with already expanded
placeholders from the second collection. Each match led to recursive
call of replace method. If collection in second clause was very long
then StackOverflowError occurred.
Fix adds check of partial placeholder match for wholeWords mode which
is used in expanding list parameters. Partial matches are skipped
during replace.
2019-08-14 10:11:26 +01:00
Gail Badner
fed93b0ae9
HHH-13573 : Test failure due to Sybase not supporting cascade delete on foreign key definitions
2019-08-14 00:25:49 -07:00