|Jeff Yu||Mar 3, 2010 10:01 pm|
|Jeff Yu||Mar 3, 2010 10:21 pm|
|Aaron Anderson||Mar 4, 2010 12:37 pm|
|Jeff Yu||Mar 4, 2010 9:26 pm|
|Aaron Anderson||Mar 7, 2010 11:27 pm|
|Jeff Yu||Mar 8, 2010 7:35 am|
|Jeff Yu||Mar 8, 2010 11:05 pm|
|Jeff Yu||Mar 9, 2010 12:40 am|
|Aaron Anderson||Mar 9, 2010 6:22 pm|
|Jeff Yu||Mar 9, 2010 9:02 pm|
|Aaron Anderson||Mar 12, 2010 10:36 am|
|Jeff Yu||Mar 12, 2010 8:14 pm|
|Aaron Anderson||Mar 14, 2010 7:25 pm|
|Jeff Yu||Mar 15, 2010 7:53 am|
|Aaron Anderson||Mar 15, 2010 10:06 am|
|Aaron Anderson||Mar 16, 2010 7:13 am|
|Jeff Yu||Mar 16, 2010 8:29 pm|
|Aaron Anderson||Mar 25, 2010 1:49 pm|
|Jeff Yu||Mar 25, 2010 10:17 pm|
|Aaron Anderson||Mar 26, 2010 6:27 am|
|Rafal Rusin||Mar 26, 2010 10:23 am|
|Aaron Anderson||Mar 28, 2010 3:31 pm|
|Jeff Yu||Mar 29, 2010 2:40 am|
|Rafal Rusin||Mar 29, 2010 2:52 am|
|Jeff Yu||Mar 29, 2010 7:58 am|
|Aaron Anderson||Mar 29, 2010 8:31 am|
|Jeff Yu||Mar 29, 2010 10:18 pm|
|Aaron Anderson||Apr 2, 2010 5:33 pm|
|Jeff Yu||Apr 5, 2010 11:12 pm|
|Aaron Anderson||Apr 6, 2010 6:24 pm|
|Jeff Yu||Apr 8, 2010 3:47 am|
|Aaron Anderson||Apr 12, 2010 8:03 am|
|Jeff Yu||Apr 12, 2010 8:15 pm|
|Aaron Anderson||Apr 23, 2010 7:25 am|
|Jeff Yu||Apr 26, 2010 7:44 am|
|Aaron Anderson||Apr 29, 2010 7:25 am|
|Jeff Yu||Apr 30, 2010 5:56 am|
|Jeff Yu||May 2, 2010 10:12 am|
|Subject:||Re: JPA DAO refactoring.|
|From:||Rafal Rusin (rafa...@gmail.com)|
|Date:||Mar 26, 2010 10:23:34 am|
Wow guys, you are doing great job. This cleanup was badly needed and the code is great. As for ODE-1.X I think people using hibernate won't like schema changes. So I would put it only in trunk.
On 26 March 2010 14:27, Aaron Anderson <nick...@yahoo.com> wrote:
I am glad you liked the refactoring!
1. You are right, the axis2-war module test code has out of date references.
This is because in the maven pom the tests are configured to be skipped. I will
comment back in the integration tests and make sure they work.
2. I am not a Ruby developer but I am always open to new challenges :) I didn't
do any new maven trickery beyond running some of the unit tests multiple times
per DAO provider implementation and generating two different JPA jar
distributions, one OpenJPA enhanced and the other as is. I'll see what I can do.
As far as moving the changes to the 1.X branch I think that should be possible.
I think that the DAO implementations were already isolated well in the project
source code and the DAO storage code was probably pretty static compared to the
other process related modules were most of the fixes go into. I wouldn't imagine
there would be too many changes between the 1.X and 2.0 DAO code.
Also I would like to mention that so far I have only tested these changes using
the as-is pre-defined test cases and I have not tested the distribution as a
whole in any real world tests. I should probably manually test both the JBI and
axis2-war distributions before the code get's promoted. I'll do that soon and
let you know my results.
The code is great. IMHO, below are the things that we need to be done for getting this big patch applied.
1. axis2-war module test case code is out-of-update, it still refers to the old dao package, like 'org.apache.ode.bpel.dao.", It seems to me that we didn't compile and run test case for this module, do we? 2. use the buildr build to check if we can get it build with this. I know this might be the hard part here, unless you are familiar with buildr. We may ask other devs here to see if they are interested picking up this task. But I will try to build with that firstly to see how many problems we have right now.
BTW, this refactoring work is so great that I am thinking that migrate it into Apache ODE 1.x branch, how much effort do you think it would cost for this move? We are trying to add the clustering support for 1.x code base, one first thing here would be to implement the JPA based DAO impl for scheduler module.
On Fri, Mar 26, 2010 at 7:49 AM, Aaron Anderson <aaro...@acm.org>wrote:
I completed the new JPA based SimpleScheduler DAO implementation. Now there is JDBC based implementation (refactored original delegate implementation), a JPA OpenJPA implementation (default now), and a JPA Hibernate implementation. I did not create a new non-JPA Hibernate implementation since to my knowledge JPA will be the persistence implementation of choice for ODE.
One last think that needs to be done is to update the JPA DDL module to include additional indexes in case the SQL generator does not index everything that needs them.
Also as part of my refactoring I added transactional operations to the DAOConnection interface so that it can hide the underlying transactional mechanism in case JTA is not used. To me it makes the DAO usage more concise. Perhaps in the future the engine and runtime code can be modified to utilize the DAO transactional operations instead of directly manipulating the JTA transaction manager.
Please take a look and let me know what more needs to be done for the JPA refactoring effort.
-- Cheers, Jeff Yu
---------------- blog: http://jeff.familyyu.net