mirror of https://github.com/apache/openjpa.git
274 lines
16 KiB
Plaintext
274 lines
16 KiB
Plaintext
Apache OpenJPA 2.3.0
|
|
Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
|
|
--------------------------------------------------------------------------------
|
|
|
|
Content
|
|
-------
|
|
* Overview
|
|
* License
|
|
* Notices
|
|
* Prerequisites
|
|
* Documentation
|
|
* Getting Involved
|
|
* Included Changes
|
|
* Sub-tasks
|
|
* Bugs
|
|
* Improvements
|
|
* New Features
|
|
* Test
|
|
|
|
|
|
Overview
|
|
--------
|
|
The Apache OpenJPA community is proud to release a SNAPSHOT distribution of
|
|
OpenJPA 2.3.0. This distribution is based on the final JSR 317 Java
|
|
Persistence API, Version 2.0 specification and passes the JPA 2.0 TCK,
|
|
while remaining backwards compatible with prior releases based on the
|
|
Java Persistence API (JPA 1.0) part of Java Community Process JSR-220
|
|
(Enterprise JavaBeans 3.0).
|
|
|
|
Additional information on the OpenJPA project may be found at the project
|
|
web site:
|
|
http://openjpa.apache.org
|
|
|
|
|
|
License
|
|
-------
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with this
|
|
work for additional information regarding copyright ownership. The ASF
|
|
licenses this file to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance with the
|
|
License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
License for the specific language governing permissions and limitations
|
|
under the License.
|
|
|
|
The license may also be found in LICENSE.txt included in each assembly.
|
|
|
|
|
|
Notices
|
|
-------
|
|
Copyright 2006,2013 The Apache Software Foundation.
|
|
Apache, the Apache feather logo and OpenJPA are trademarks of
|
|
The Apache Software Foundation.
|
|
|
|
This product includes software developed at
|
|
The Apache Software Foundation (http://www.apache.org/).
|
|
|
|
OpenJPA includes the persistence and orm schemas from the JPA specifications.
|
|
Copyright 2005-2009 Sun Microsystems, Inc. All rights reserved.
|
|
OpenJPA elects to include this software in this distribution under the
|
|
CDDL license. You can obtain a copy of the License at:
|
|
https://glassfish.dev.java.net/public/CDDL+GPL.html
|
|
The source code is available at:
|
|
http://java.net/projects/glassfish
|
|
|
|
The complete list of notices can be found in NOTICE.txt included in each
|
|
assembly.
|
|
|
|
|
|
Prerequisites
|
|
-------------
|
|
OpenJPA requires Java SE 6 or higher and a relational
|
|
database of some sort.
|
|
|
|
|
|
Documentation
|
|
-------------
|
|
If you have questions about OpenJPA, a good source of information is the
|
|
online product manual. You can find the manual for the current release as
|
|
well as older releases of OpenJPA at
|
|
http://openjpa.apache.org/documentation.html
|
|
|
|
If you can't find what you are looking for in the manual or would like more
|
|
clarification, please post to the OpenJPA development mailing list.
|
|
Information on all of the OpenJPA mailing lists may be found here:
|
|
http://openjpa.apache.org/mailing-lists.html
|
|
|
|
|
|
Getting Involved
|
|
----------------
|
|
The Apache OpenJPA project is being built by the open source community for
|
|
the open source community - we welcome your input and contributions!
|
|
|
|
What we are looking for
|
|
* Source code and fixes contributions
|
|
* Documentation assistance
|
|
* Product and feature suggestions
|
|
* Detailed and constructive feedback
|
|
* Articles and whitepapers
|
|
|
|
How do I contribute?
|
|
* To discuss Apache OpenJPA topics check out the mailing lists.
|
|
* Informal discussion also occurs on the #openjpa IRC channel on
|
|
freenode.net.
|
|
* Bugs and other issues can be posted on the issue tracker at
|
|
https://issues.apache.org/jira/browse/OPENJPA
|
|
|
|
|
|
Included Changes in OpenJPA 2.3.0
|
|
---------------------------------
|
|
|
|
Sub-task
|
|
|
|
[OPENJPA-2168] - Do not go through LifeCycleEventManager overhead if the Entity has declared to be excluded
|
|
|
|
Bug
|
|
|
|
[OPENJPA-696] - Cache TransactionSynchronizationRegistry per EMF (vs JVM)
|
|
[OPENJPA-1794] - Result of aggregate function MAX is 0 on empty table (instead of NULL).
|
|
[OPENJPA-1819] - ORDER BY will append additional column to the SELECT clause which may potentialy cause ORA-00979 error
|
|
[OPENJPA-1901] - QueryCacheStoreQuery$CachedObjectId that is not Serializable
|
|
[OPENJPA-1979] - Regression for non-standard joins with constant column values
|
|
[OPENJPA-1993] - Deadlock Potential with ORM XML Processing
|
|
[OPENJPA-2018] - Cannot bind String[] to ParameterExpression for path.in(parameter)
|
|
[OPENJPA-2067] - A 'length' of '-1' passed to PreparedStatement.setBinaryStream can cause an exception on some, but not all, JDBC drivers.
|
|
[OPENJPA-2072] - InvalidStateException deleting an instance with a timestamp in its primary key
|
|
[OPENJPA-2095] - Unhandled exception thrown from within an Externalizer method causes incorrect/incomplete SQL to be generated/executed.
|
|
[OPENJPA-2102] - URLs which contains spaces are not properly handled by OpenJPA.
|
|
[OPENJPA-2110] - Abstract entity causes standard openjpa collection proxies to be injected even if custom collections are used.
|
|
[OPENJPA-2118] - Prepared SQL query does not handle collection-valued parameter where collection is empty
|
|
[OPENJPA-2123] - Minor performance improvements for Connection and ResultSet processing
|
|
[OPENJPA-2131] - Missing IN or OUT parameter exception with OracleDictionary
|
|
[OPENJPA-2132] - Traversal of a OneToMany relationship returns an empty list when InheritanceType.JOINED or SINGLE_TABLE is used.
|
|
[OPENJPA-2133] - OpenJPA doesn't find custom mappings with an applicable class loader
|
|
[OPENJPA-2136] - NPE when using LiteAutoDetach
|
|
[OPENJPA-2140] - Locking tests issue many warnings about the use of a duplicate pu name
|
|
[OPENJPA-2142] - Merge of a new object does not handle Entity Id field
|
|
[OPENJPA-2145] - Missing ASM depending jar in binary zip
|
|
[OPENJPA-2146] - StateManager for Embeddable may throw Exception while initializing
|
|
[OPENJPA-2149] - Criteria.function adds wrong casts to parameters making it unsuable
|
|
[OPENJPA-2153] - NoSuchMethodException of DBCPDriverDataSource.newInstance()
|
|
[OPENJPA-2154] - test-dynamic-enhancer profile failed for module more than one level deep
|
|
[OPENJPA-2156] - Fix bug in org.apache.openjpa.persistence.util.SourceCode to correctly generate imports.
|
|
[OPENJPA-2158] - LiteAutoDetach + DetachProxyFields=false can lead to Broker concurrency exceptions
|
|
[OPENJPA-2161] - Make some members of StateManagerImpl protected to allow for greater extensability
|
|
[OPENJPA-2163] - Lifecycle event callback occurs more often than expect
|
|
[OPENJPA-2170] - Multiple INSERT of the same row in batch update manager
|
|
[OPENJPA-2172] - openjpa-all jar is missing slf4j runtime dependency
|
|
[OPENJPA-2174] - Result set mapping was not looked up when retrieving column data from a NamedNativeQuery
|
|
[OPENJPA-2178] - PostgresDictionary
|
|
[OPENJPA-2180] - OpenJPA build broken in java7 / jdk-1.7
|
|
[OPENJPA-2187] - metamodel generation with default package creates invalid class
|
|
[OPENJPA-2191] - QueryCache don't allow for misconfigurations
|
|
[OPENJPA-2196] - Create Sequence Postgres 9.1
|
|
[OPENJPA-2197] - MethodComparator in AnnotationPersistenceMetaDataParser should also compare parameters
|
|
[OPENJPA-2199] - Constraint violation exception when removing relationship using (orphanRemoval = true)
|
|
[OPENJPA-2204] - NPE in JDBCStoreManager with Trace turned on
|
|
[OPENJPA-2221] - Use of AbstractValueHandler map() causes exception on find()
|
|
[OPENJPA-2227] - OpenJPA doesn't find custom SequenceGenerators
|
|
[OPENJPA-2228] - QuerySQLCache broken for Entities with @EmbeddedId
|
|
[OPENJPA-2229] - Persistence entities not recognized when deploying on JBoss AS 7.1
|
|
[OPENJPA-2230] - Event Listener detection didn't work with MappedSuperClasses or Entity heirarchies
|
|
[OPENJPA-2234] - EntityManager instance creation needs TX activity
|
|
[OPENJPA-2235] - "READ_UNCOMMITTED" setting for the fetch plan isolation level is ignored in DB2Dictionary
|
|
[OPENJPA-2236] - Trace of connection info can cause class transform/enhancement to fail
|
|
[OPENJPA-2238] - IllegalAccessError when trying to proxy a default scoped Class
|
|
[OPENJPA-2240] - JVMVRFY012 when using openjpa together with hyperjaxb3
|
|
[OPENJPA-2244] - Nested classpath ignored in mapping tool ant task
|
|
[OPENJPA-2245] - NotSerializableException when using a remote QueryCache and the Criteria API
|
|
[OPENJPA-2247] - JoinColumn annotation is ignored when mapping a unidirectional owned OneToOne that is in a SecondaryTable
|
|
[OPENJPA-2253] - Memory leak in Audit feature
|
|
[OPENJPA-2255] - Couldn't load the referencedColumn definition when create the JoinTable
|
|
[OPENJPA-2257] - Concurreny in org.apache.openjpa.persistence.EntityManagerImpl.getProperties leads to NullPointer and ConcurrentModificationException
|
|
[OPENJPA-2260] - Parenthesis-augmented parameters are improperly processed at EM level
|
|
[OPENJPA-2261] - Query SQL Cache issue with NULL parameters
|
|
[OPENJPA-2267] - native query select with null result causes NullPointerException
|
|
[OPENJPA-2269] - Duplicate key exception in sequence table on multithreaded initialization
|
|
[OPENJPA-2271] - Old <ciManagement/> info on root POM
|
|
[OPENJPA-2282] - ESCAPE '\' is appended to the like clause unexpectedly
|
|
[OPENJPA-2284] - NPE occurs when <cascade-persist/> is added to a <persistence-unit-defaults> in an orm.
|
|
[OPENJPA-2288] - MetaDataRepository should be able to filter classes from other app ClassLoaders in JEE Env
|
|
[OPENJPA-2289] - Additional SQL alias generated for query with subquery causes incorrect # of rows returned - Oracle only
|
|
[OPENJPA-2298] - VerifyError/Stack underflow due to extra 'return' statements generated by PCEnhancer.
|
|
[OPENJPA-2304] - Thread deadlock in CriteriaBuilder
|
|
[OPENJPA-2305] - Canonical MetaModel class generation should not use inhertence
|
|
[OPENJPA-2318] - Left outer join is not generated when specifien using Criteria API
|
|
[OPENJPA-2320] - CriteriaBuilder predicate construction deadlocks in multi-core VM due to static initializer
|
|
[OPENJPA-2321] - Synchronizing logging output stream causes deadlock when used some JDK LogManger derivative
|
|
[OPENJPA-2325] - MappedSuperClass without an @Id causes wrong identity type for the inherited types
|
|
[OPENJPA-2326] - Updates in TCK execution configuration
|
|
[OPENJPA-2328] - NPE caused by one too many calls on the iterator inside the library.
|
|
[OPENJPA-2330] - Stackoverflow due to endless recursive calls
|
|
[OPENJPA-2334] - OpenJPA must support processing puRoot & jar-file URLs as jar-formatted InputStreams
|
|
[OPENJPA-2335] - Constrained foreign key column value setting needs to be flexible
|
|
[OPENJPA-2336] - Relax Join column name comparison based on database dictionary schema case setting
|
|
[OPENJPA-2343] - Version field returns null when explicity projected from a JOIN in SELECT clause
|
|
[OPENJPA-2355] - CONCAT() function must support more than two arguments
|
|
[OPENJPA-2357] - @..ToMany(optional=false) throws InvalidStateException: [...] the metadata for this field specifies that nulls are illegal.
|
|
[OPENJPA-2377] - Metamodel.managedType returns wrong result for Embeddable
|
|
[OPENJPA-2378] - TestHandlerStrategy.testIssue_OPENJPA2328 failed with Oracle
|
|
[OPENJPA-2384] - Rendering criteria query to JPQL-like string ignores multiple GROUP BY clauses
|
|
[OPENJPA-2390] - HSQLDB SELECT NEXT VALUE FOR Sequence will skip 1 sequence value if allocation size is 1
|
|
[OPENJPA-2391] - HSQLDB v2.2.9
|
|
[OPENJPA-2400] - Support MariaDB
|
|
[OPENJPA-2405] - EntityManager.merge does not work for entity that is managed by another EntityManager
|
|
[OPENJPA-2409] - allow the openjpa-maven-plugin to use a persistence.xml from resources and not only from files
|
|
[OPENJPA-2414] - FinderCache does not consider active Fetch Groups/FetchPlan added Fields
|
|
[OPENJPA-2418] - Cannot build 2.2.x due to NullPointerException in maven-checkstyle-plugin
|
|
[OPENJPA-2421] - Slices: Can't setting up FinderTargetPolicy
|
|
[OPENJPA-2425] - SELECT fields with @ExternalValues defined returns datastore values instead of unmapped fields
|
|
[OPENJPA-2432] - MySQL dictionary can't be found from a valid connection
|
|
[OPENJPA-2435] - Version field in a projection always returned as an Integer.
|
|
[OPENJPA-2437] - transactional listeners added too late to observe begin event
|
|
[OPENJPA-2440] - foreign key drop leaks jdbc connections
|
|
[OPENJPA-2443] - InvalidStateException while merging a new Entity with a GeneratedValue id
|
|
[OPENJPA-2444] - ReverseMappingTool creates orm.xml files in the current working directory
|
|
|
|
Improvement
|
|
|
|
[OPENJPA-2120] - Add new option to eliminate reflection calls from enhancer generated IdClass PC copy operations
|
|
[OPENJPA-2134] - Do not close Connections when ConnectionRetainMode is set to "always"
|
|
[OPENJPA-2137] - Make some members of StateManagerImpl protected to allow for greater extensibility
|
|
[OPENJPA-2143] - Reduce lock contention on LifecycleEventManager
|
|
[OPENJPA-2151] - Improve the performance of StateManagerImpl.initialize
|
|
[OPENJPA-2152] - Don't process query hints when LockModeType == NONE
|
|
[OPENJPA-2159] - Add support for no rounding of Date
|
|
[OPENJPA-2162] - Avoid delimited identifier processing if it's not required by application
|
|
[OPENJPA-2164] - Don't setPCState if field requested is already loaded
|
|
[OPENJPA-2167] - Misc changes to improve flush() path performance
|
|
[OPENJPA-2171] - asm should be optional
|
|
[OPENJPA-2189] - Update OpenBooks example to build, install, and execute in the WAS Liberty Profile
|
|
[OPENJPA-2208] - Add additional Java 2 Security doPriv function
|
|
[OPENJPA-2209] - MetaDataRepository preload configuration should be more inclusive
|
|
[OPENJPA-2220] - Persistent field fetching statistic tool
|
|
[OPENJPA-2231] - jest TokenReplacedStream use Reader instead of Inputstream
|
|
[OPENJPA-2264] - Upcast PreparedStatementManagerImpl.logSQLWarnings to take a Statement rather than a PreparedStatement
|
|
[OPENJPA-2275] - Extending SchemaTool
|
|
[OPENJPA-2292] - Reduce object allocations
|
|
[OPENJPA-2293] - Reduce LifecycleEventManager
|
|
[OPENJPA-2324] - Option to express literal in query string directly into generate SQL
|
|
[OPENJPA-2332] - Update message when unable to resolve datasource configuration
|
|
[OPENJPA-2342] - Consider modifying PCEnhancer.run to use serp.bytecode.BCClass.getDeclaredInterfaceNames instead of getDeclaredInterfaceTypes.
|
|
[OPENJPA-2346] - Optimize MetaDataRepository.getMetaDataInternal
|
|
[OPENJPA-2347] - Make StateManagerImpl more extensible
|
|
[OPENJPA-2348] - Cache calculated hashCode in OpenJPAId
|
|
[OPENJPA-2353] - Reduce object allocations
|
|
[OPENJPA-2354] - Removed synchronized from enhancer added pcReplaceStateManager method
|
|
[OPENJPA-2368] - Move www.apache.org/openjpa/ns/orm to openjpa.apache.org/ns/orm
|
|
[OPENJPA-2410] - Build time detection of System.out/err.print(ln) in source files
|
|
|
|
New Feature
|
|
|
|
[OPENJPA-2283] - Upgrade to ASM 4 dependency
|
|
[OPENJPA-2295] - speed up query metadata lookup
|
|
[OPENJPA-2366] - provide option to exclude schema name from generated @Table annotation for generated entities
|
|
|
|
Question
|
|
|
|
[OPENJPA-1532] - Should the <shared-cache-mode> element in a persistence unit definition automatically turn on the data cache?
|
|
|
|
Task
|
|
|
|
[OPENJPA-2388] - support new xbean asm4 shade
|
|
|
|
Test
|
|
|
|
[OPENJPA-2169] - TestOracleXmlColumn test failed using Oracle 11.2 driver
|