Hi Pinaki,

It looks good --we've had to implement a similar functionality on top of OpenJPA for our applications by maintaining multiple EMFs, it'd be great to have this functionality built-in on OpenJPA. So in terms of feasibility I'd say a definite yes. As for the current state of the implementation, I'll try to refactor one of our apps to use Slice, test it out and hopefully provide some feedback --though that may take a while.

Couple of questions/comments:

1- Section 2.1.2 of the manual suggests that once a root object is persisted in a given slice, it's "bound" to that slice, i.e. further updates on that object will always go that slice without consulting the DistributionPolicy interface. However javadoc of that interface suggests that it's invoked both for inserts and updates --which is the case (or is my interpretation incorrect)? 2- Section 2.1.4 mentions "parallel execution" --I'm assuming not, but does that imply any kind of thread-parallelism? 3- Sections 2.1.2 & 2.2.2 suggest that all lookups go to all slices and results are merged. I assume this holds true for single-result lookups as well (i.e. em.find() & em.createQuery().getSingleResult()). For performance-conscious apps, it might be worthwhile to define a separate (and optional) interface for choosing a specific slice based on pc type and query parameters --obviously it's possible that a slice may not be determined by that information in certain cases, where default behaviour would be to hit all slices.

Regards,

Gokhan.

Pinaki Poddar wrote:
Hi,
  I would like to add an extension of OpenJPA that allows an application
to transact against a set of distributed, possibly hetereogenous,
horizontally-partitioned databases [2]. The project is named as Slice
and is similar in scope to Hibernate Shards.
  The development codebase so far been maintained in Apache Lab
repository and given its current state I propose to add the codebase to
a new openajpa-slice module.
  I request you to review current state of its implementaion [1] and
express your opinion/views on feasibility of my proposal.

  Regards --

Pinaki

[1] Slice website:
http://people.apache.org/~ppoddar/slice/site/index.html
[2] dev2dev blog:
http://dev2dev.bea.com/blog/pinaki.poddar/archive/2008/01/slice_openjpa_
f_1.html

Notice:  This email message, together with any attachments, may contain 
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated 
entities,  that may be confidential,  proprietary,  copyrighted  and/or legally 
privileged, and is intended solely for the use of the individual or entity 
named in this message. If you are not the intended recipient, and have received 
this message in error, please immediately return this by email and then delete 
it.

Reply via email to