79 Commits

Author SHA1 Message Date
A. Abram White
62bc6c997c Change default MaxFetchDepth to -1 (unlimited). Also move the use of multiple
configuration prefixes to ProductDerivations for simple static access.  Modify
some cases of looking for "openjpa." prefixes to properties to properly look 
for all configured prefixes instead.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@450114 13f79535-47bb-0310-9956-ffa450edef68
2006-09-26 16:54:30 +00:00
Marc Prud'hommeaux
d3956a7d98 Override "ON DELETE SET NULL" foreign keys if the foreign column is "NOT NULL".
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@449532 13f79535-47bb-0310-9956-ffa450edef68
2006-09-25 00:19:36 +00:00
Marc Prud'hommeaux
a8c1fad16c Fixed varbinaryTypeName and longVarbinaryTypeName to be "BLOB" (they were defaulting to "VARBINARY", which is not recognized under DB2 or Derby).
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@449526 13f79535-47bb-0310-9956-ffa450edef68
2006-09-24 23:58:00 +00:00
Patrick Linskey
ce937180b4 wrap types before deciding whether or not a cast is needed.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@449322 13f79535-47bb-0310-9956-ffa450edef68
2006-09-23 22:48:14 +00:00
Marc Prud'hommeaux
5dea14f301 Use the escape character to escape out wildcard characters from the source string.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@449130 13f79535-47bb-0310-9956-ffa450edef68
2006-09-23 00:04:51 +00:00
A. Abram White
b7f2721aff When selecting a relation field as a projection, outer join across the relation
even if forceOuter on the original path is false.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@449105 13f79535-47bb-0310-9956-ffa450edef68
2006-09-22 22:06:06 +00:00
A. Abram White
7a74bedd70 fix JDBC Abs query function's return type.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448757 13f79535-47bb-0310-9956-ffa450edef68
2006-09-22 00:52:08 +00:00
A. Abram White
d090d717f4 Fix sequence bug I introduced with last sequence synchronization refactoring.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448708 13f79535-47bb-0310-9956-ffa450edef68
2006-09-21 22:01:57 +00:00
Patrick Linskey
d85ea93d3a oops, fixed bum compilation failure.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448430 13f79535-47bb-0310-9956-ffa450edef68
2006-09-21 02:06:05 +00:00
Patrick Linskey
4efc384cbd added some extension points for sql pluggability
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448405 13f79535-47bb-0310-9956-ffa450edef68
2006-09-20 23:42:41 +00:00
A. Abram White
480a42df4a Perform JDBC sequence ops outside of synchronization blocks in case of JDBC
hangs.  Also should improve concurrency.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448298 13f79535-47bb-0310-9956-ffa450edef68
2006-09-20 18:40:28 +00:00
A. Abram White
cdcfea47d4 Review/cleanup of product derivation work.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@448025 13f79535-47bb-0310-9956-ffa450edef68
2006-09-20 01:29:55 +00:00
Pinaki Poddar
2c31d9c6df 1. Refactoring ConfigurationProvider/ProductDerivation subsystem.
2. Extensibility of OpenJPA via ProductDerivation

Primary modifications are
a) The configuration information resources are located/parsed/loaded via dynamically discovered ProductDerivation services
(instead of ConfigurationProviders). ConfigurationProvider is not enlisted as a service any more.
b) Tools are modified to use ProductDerivations instead of Configurations 
c) ProductDerivation has moved to lib from kernel.
d) ProductDerivation types that are STORE specific are no more defined in lib version.
OpenJPAProductDerivation in kernel package defines them. The type constants have holes. 
e) One test is modified
f) pom.xml is modified as ProductDerivation has moved to lib from kernel 

git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@447664 13f79535-47bb-0310-9956-ffa450edef68
2006-09-19 00:50:57 +00:00
Marc Prud'hommeaux
d47e1d1f18 Added "INDEX" to the reserved word set.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@447569 13f79535-47bb-0310-9956-ffa450edef68
2006-09-18 21:25:44 +00:00
Marc Prud'hommeaux
b7aa94749e Fixed default type for binaryTypeName, varbinaryTypeName, and longVarbinaryTypeName to be "BLOB" (rather than "VARBINARY", which does not exist as a type for Oracle).
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@447558 13f79535-47bb-0310-9956-ffa450edef68
2006-09-18 21:08:21 +00:00
Marc Prud'hommeaux
944f8ad22c Non-optimistic transactions will no longer perform a version check when committing dirty objects, unless the NonOptimisticVersionCheck compatibility property is set to true. This allows dirty instances enlisted in a non-optimistic transaction to be allowed to overwrite conflicting versions in the database.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@446799 13f79535-47bb-0310-9956-ffa450edef68
2006-09-16 00:44:55 +00:00
Marc Prud'hommeaux
65e0a48a81 Workaround for HSQL bug in treating Long.MAX_VALUE as a double.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@446720 13f79535-47bb-0310-9956-ffa450edef68
2006-09-15 20:35:20 +00:00
A. Abram White
47edcb8edc Don't use a subselect for non-distinct projections of DISTINCT_AUTO queries
with to-many joins in their filter if the projections are all for variable 
paths.  (As opposed to candidate path projections, where the subselect is 
necessary to filter out duplicates caused by relational joins).



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443519 13f79535-47bb-0310-9956-ffa450edef68
2006-09-14 23:41:30 +00:00
A. Abram White
7846adbf3f Unused.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443496 13f79535-47bb-0310-9956-ffa450edef68
2006-09-14 22:10:45 +00:00
A. Abram White
a5d552f940 Allow null discriminator values when adding class conditions on outer joins.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443447 13f79535-47bb-0310-9956-ffa450edef68
2006-09-14 19:36:09 +00:00
A. Abram White
72f7b6b963 Query fixes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443170 13f79535-47bb-0310-9956-ffa450edef68
2006-09-14 00:05:16 +00:00
Kevin W. Sutter
9650a1a20b Minor updates to comments and doc... While doing the removal of the LockGroup stuff, I came across an entry for
contacting support@solarmetric.com for some customization feature.  While cleaning that up, I also cleaned up any 
other references to @solarmetric.com and @bea.com.

git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443123 13f79535-47bb-0310-9956-ffa450edef68
2006-09-13 21:05:42 +00:00
Kevin W. Sutter
7bff3b4373 Removed references to LockGroups from the messages, documents, and code since these are not provided as
part of the OpenJPA code drop.

git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443113 13f79535-47bb-0310-9956-ffa450edef68
2006-09-13 20:35:08 +00:00
A. Abram White
a9eaf4683b Formatting.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443073 13f79535-47bb-0310-9956-ffa450edef68
2006-09-13 18:57:13 +00:00
Kevin W. Sutter
912c1262d6 Removed unused message concerning the number of pooled connections allowed.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@443019 13f79535-47bb-0310-9956-ffa450edef68
2006-09-13 16:39:45 +00:00
A. Abram White
6ac482c68f Fix erroneous change I made yesterday.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@442691 13f79535-47bb-0310-9956-ffa450edef68
2006-09-12 20:06:29 +00:00
A. Abram White
d1e7a817d2 Fix failure to close some empty result sets.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@442643 13f79535-47bb-0310-9956-ffa450edef68
2006-09-12 16:41:09 +00:00
A. Abram White
1e95734015 OPENJPA-39 test case. Also query fixes and fix to possible data corruption
issue (yikes!).



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@442388 13f79535-47bb-0310-9956-ffa450edef68
2006-09-11 23:54:01 +00:00
Marc Prud'hommeaux
f56a7555a7 Don't bother using a subselect in bulk UPDATE or DELETE clauses if there is no where condition, since it does the exact same think as an unqulaified bulk operation.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@442385 13f79535-47bb-0310-9956-ffa450edef68
2006-09-11 23:17:27 +00:00
Stephen Kim
1defd23037 Supports for interface query alias metadata
as well as refactoring persistence-aware metadata into non-persistent metadata
to support non-managed interfaces


git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@442363 13f79535-47bb-0310-9956-ffa450edef68
2006-09-11 21:56:55 +00:00
A. Abram White
37aa91d2af Simplify determination of identity type in metadata, also correcting problems
with determining the identity type of hierarchies involving @MappedSuperclasses.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@441679 13f79535-47bb-0310-9956-ffa450edef68
2006-09-08 22:45:39 +00:00
A. Abram White
1e5d09ce2f Forgot to add new classes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@441242 13f79535-47bb-0310-9956-ffa450edef68
2006-09-07 21:45:54 +00:00
A. Abram White
7e30623c7b Refactor JDBC query expression tree to allow greater concurrency and to handle
parameters in result clauses of projections.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@441158 13f79535-47bb-0310-9956-ffa450edef68
2006-09-07 17:51:05 +00:00
Patrick Linskey
01735b1234 changed @since tags to disambiguate the Kodo information with future releases of OpenJPA by adding a 0. to the beginning of each.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@438566 13f79535-47bb-0310-9956-ffa450edef68
2006-08-30 17:53:55 +00:00
A. Abram White
163cc2a22c Framework for allowing ranges in query strings to be specified as parameters
(not needed for JPQL, but for others).  Also consolidated some internal query
framework APIs.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@438338 13f79535-47bb-0310-9956-ffa450edef68
2006-08-30 03:43:16 +00:00
Marc Prud'hommeaux
de9352568f Expanded default doubleTypeName to be NUMERIC so it can properly fit a double.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@437982 13f79535-47bb-0310-9956-ffa450edef68
2006-08-29 06:23:13 +00:00
Marc Prud'hommeaux
5ff49b37b9 Removed check for Long.MIN_VALUE, since recent version of HSQL do not have the storage limitation.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@437981 13f79535-47bb-0310-9956-ffa450edef68
2006-08-29 06:14:59 +00:00
Marc Prud'hommeaux
dc1f0bf204 OPENJPA-30 Changed version to 0.9.0-incubating-SNAPSHOT in accordance with Apache incubator guidelines
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@437209 13f79535-47bb-0310-9956-ffa450edef68
2006-08-26 18:59:34 +00:00
Marc Prud'hommeaux
caffb77405 Prefixed pom names with 'OpenJPA' to make them more friendly when their public names are displayed
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@436911 13f79535-47bb-0310-9956-ffa450edef68
2006-08-25 19:16:23 +00:00
A. Abram White
746ebdfdc9 Slightly cleaner and in some cases more efficient exclusion of
persistence-aware types from mapping tool actions.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@434473 13f79535-47bb-0310-9956-ffa450edef68
2006-08-24 19:05:51 +00:00
Pinaki Poddar
d0f15b881a Modified to ignore p-aware classes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@434303 13f79535-47bb-0310-9956-ffa450edef68
2006-08-24 05:13:20 +00:00
Pinaki Poddar
6e262960ae MappingTool modified to ignore persistence-aware classes
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@434251 13f79535-47bb-0310-9956-ffa450edef68
2006-08-23 23:45:42 +00:00
Marc Prud'hommeaux
bad3cba9b6 Changed version to be a SNAPSHOT so we can use the snapshotRepository
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@434196 13f79535-47bb-0310-9956-ffa450edef68
2006-08-23 21:37:05 +00:00
Marc Prud'hommeaux
6f0a7f67da Added expression-level support for Map.get in queries
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@433460 13f79535-47bb-0310-9956-ffa450edef68
2006-08-22 01:50:43 +00:00
A. Abram White
d5bb522c34 No need for parser to populate separate QueryExpressions.aggregate member now
that we can visit the projection values to see if they're aggregates.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@433431 13f79535-47bb-0310-9956-ffa450edef68
2006-08-21 23:53:49 +00:00
A. Abram White
9de5395486 Add some query validations on compilation.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@433399 13f79535-47bb-0310-9956-ffa450edef68
2006-08-21 22:29:47 +00:00
A. Abram White
037a45d7e4 Add visitor pattern to query expression trees, and redo a couple of our existing
tree interrogation methods to use it.  This will allow us to add more 
validations at query compilation time (we're missing some that are required for
JDO 2, for example) without having to expand the API of every query 
expression/value implementation, in addition to just being more flexible 
overall.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432778 13f79535-47bb-0310-9956-ffa450edef68
2006-08-19 01:03:35 +00:00
A. Abram White
eb2b5e6551 Method visibility fix.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432447 13f79535-47bb-0310-9956-ffa450edef68
2006-08-18 00:21:04 +00:00
A. Abram White
69b83ac3ff When a query projects and groups on a relation field, make sure to group on
the same columns we select.  Added Select.groupBy(ClassMapping, ...) API.
Implemented by temporarily putting target Select into "group mode" -- in which 
all select() calls are instead routed to groupBy() calls -- and invoking the 
same JDBCStoreManager.select() logic we use for the 
Select.select(ClassMapping...) call.  Having the Select "fake out" its callers
by translating select() calls into groupBy() calls isn't necessarily pretty, 
but it allows us to re-use all our existing select logic (not just in 
JDBCStoreManager, but in all the class, field, discriminator, version, etc 
mapping strategies) rather than creating duplicate logic in parallel groupBy() 
methods in all these components.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432444 13f79535-47bb-0310-9956-ffa450edef68
2006-08-18 00:17:30 +00:00
A. Abram White
2ccc242679 When a relation mapping uses the expected class of the related type as part of
its join criteria (in addition to the standard foreign key join), make sure
discriminator conditions are appended to the WHERE SQL not only when loading
the relation, but also when traversing it in queries.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432067 13f79535-47bb-0310-9956-ffa450edef68
2006-08-16 23:27:04 +00:00