incubator-cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ewan Mellor <Ewan.Mel...@eu.citrix.com>
Subject RE: Hibernate
Date Tue, 17 Jul 2012 03:32:47 GMT
OK, good.  So it's a small job.  So is Rajesh doing that?

Ewan.

> -----Original Message-----
> From: Alex Huang [mailto:Alex.Huang@citrix.com]
> Sent: 16 July 2012 17:03
> To: cloudstack-dev@incubator.apache.org
> Subject: RE: Hibernate
> 
> My understanding is it's one table and is already wrapped by a DAO.
> The DAO object uses hibernate underneath.  Don't think it's a big job.
> 
> --Alex
> 
> > -----Original Message-----
> > From: Ewan Mellor [mailto:Ewan.Mellor@eu.citrix.com]
> > Sent: Monday, July 16, 2012 4:43 PM
> > To: cloudstack-dev@incubator.apache.org
> > Subject: RE: Hibernate
> >
> > If I read this infinitely long thread correctly, the conclusion is
> that
> > CloudStack/awsapi needs to be rewritten to use the CloudStack DAO
> instead
> > of Hibernate.  Is that correct?
> >
> > If so, who is doing this work, and when?  That sounds like a big job.
> >
> > Thanks,
> >
> > Ewan.
> >
> > > -----Original Message-----
> > > From: Alex Huang [mailto:Alex.Huang@citrix.com]
> > > Sent: Monday, July 02, 2012 11:31 PM
> > > To: cloudstack-dev@incubator.apache.org
> > > Subject: RE: Hibernate
> > >
> > > Rajesh,
> > >
> > > You should use the existing CloudStack DAO framework.  If
> cloudstack
> > > will move to another ORM framework, it will have to be done in such
> a
> > > fashion that everything above the DAO layer doesn't have to change
> and
> > > the majority of the current DAO code do not have to change as well.
> > > Which would mean your code should migrate over along with the rest
> of
> > > the changes.
> > >
> > > --Alex
> > >
> > > > -----Original Message-----
> > > > From: Rajesh Battala [mailto:rajesh.battala@citrix.com]
> > > > Sent: Monday, July 02, 2012 10:59 PM
> > > > To: cloudstack-dev@incubator.apache.org
> > > > Subject: RE: Hibernate
> > > >
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Kelven Yang [mailto:kelven.yang@citrix.com]
> > > > > Sent: Saturday, June 30, 2012 3:31 AM
> > > > > To: cloudstack-dev@incubator.apache.org
> > > > > Subject: RE: Hibernate
> > > > >
> > > > >
> > > > >
> > > > > > -----Original Message-----
> > > > > > From: David Nalley [mailto:david@gnsa.us]
> > > > > > Sent: Friday, June 29, 2012 10:37 AM
> > > > > > To: cloudstack-dev@incubator.apache.org
> > > > > > Subject: Re: Hibernate
> > > > > >
> > > > > > On Fri, Jun 29, 2012 at 12:13 PM, Rajesh Battala
> > > > > > <rajesh.battala@citrix.com> wrote:
> > > > > > >
> > > > > > >
> > > > > > >> -----Original Message-----
> > > > > > >> From: David Nalley [mailto:david@gnsa.us]
> > > > > > >> Sent: Friday, June 29, 2012 8:40 PM
> > > > > > >> To: cloudstack-dev@incubator.apache.org
> > > > > > >> Subject: Re: Hibernate
> > > > > > >>
> > > > > > >> On Fri, Jun 29, 2012 at 9:27 AM, Rajesh Battala
> > > > > > >> <rajesh.battala@citrix.com>
> > > > > > >> wrote:
> > > > > > >> >
> > > > > > >> > Shall I proceed to replace Hibernate Framework
with
> Spring
> > > JDBC.
> > > > > > >> >
> > > > > > >>
> > > > > > >> This is not a design decision to take lightly, or rush
-
> as
> > > we've
> > > > > > >> talked about replacing the custom ORM that CloudStack
uses
> as
> > > > > > >> well
> > > > > > >> - we'd want to make a decision on something that we
are
> > > > > > >> comfortable with
> > > > > > in that role as well.
> > > > > > >>
> > > > > > > [Rajesh Battala]
> > > > > > > So we are planning to implement some ORM framework for
> > > CloudStack
> > > > > also?
> > > > > > > If so, then we need to evaluate the available ORM
> frameworks
> > > for
> > > > > > > java
> > > > > > which are based on Apache License?
> > > > > > >
> > > > > >
> > > > > >
> > > > > > I don't want to speak for Alex, but I have heard him mention
> > > > > > such
> > > a
> > > > > > change number of times, and have seen it in his slides as
> well.
> > > > > >
> > > > > > But the larger sense is that if we are going to change
> something
> > > in
> > > > > > AWSAPI for communicating to the database, it should be
> something
> > > > > > that we are comfortable with adopting in the long term for
> the
> > > rest
> > > > > > of CloudStack, otherwise we'll end up with two different ways
> > > > > > for connecting to the database, which is fail.
> > > > >
> > > > > For Rajesh's concern in the short term (to get rid of
> Hibernate),
> > > we
> > > > > basically have following options,
> > > > > 1) Make the project depend on utils.jar in CloudStack and use
> > > existing
> > > > > CloudStack persistent layer.
> > > > > 2) Continue to make CloudBridge project independent
> > > > > 	a) use direct JDBC
> > > > > 	b) use Spring JDBC
> > > > > 	c) use ORM framework on Spring (i.e. OpenJPA etc)
> > > > >
> > > > > I vote on 2-b for a short term resolution. For a couple of
> > > > > reasons,
> > > > >
> > > > > The major reason is for adopting Spring, EC2/S3 API in the
> future
> > > may
> > > > > both need to support SOAP based web service API and REST API,
> > > Spring
> > > > > comes with support of both, in addition, it provides dependency
> > > > > injection, AOP and pluggable ORM framework, distributed
> > > > > transaction
> > > > management, etc.
> > > > >
> > > > > CloudBridge project has a very simple data model (it has only
> one
> > > > > table for EC2), original ORM (hibernate) usage is just for
> > > convenience
> > > > > (as Alex pointed that it tried to avoid direct SQL
> manipulation),
> > > on
> > > > > the other hand, giving the DAO abstraction, a limited amount of
> > > JDBC
> > > > > should not matter too much either. With Spring and already
> > > > > existing DAO abstraction, we can leave bigger ORM decision for
> the
> > future.
> > > > >
> > > > > In the long term, ORM choice to us seems to be secondary
> > > > > consideration, giving the fact that our current custom ORM
> > > > > implementation serves its purpose well enough in CloudStack.
> But I
> > > do
> > > > > see the needs of more flexible dependency injection or
> transaction
> > > > > management framework in order to incorporate better integration
> > > with
> > > > > external transactional systems like message queue servers. I
> also
> > > see
> > > > > the needs of standardizing AOP patterns used in current
> CloudStack
> > > > > code base, Spring provides some good answers for that. So there
> is
> > > a
> > > > > possibility that it will be good for CloudStack to adopt it
> like
> > > many
> > > > > other Java communities do, so that we can focus on our own
> > > > > business logic and leave these external concerns to people who
> are
> > > > > doing it
> > > for a
> > > > living.
> > > > >
> > > > > Kelven
> > > > >
> > > > >
> > > > > >
> > > > > > --David
> > > > [Rajesh Battala]
> > > >
> > > > Please let me know conclusion of the thread.
> > > > I didn't see any reply to Kelven suggestions.
> > > >
> > > > Thanks
> > > > Rajesh Battala


Mime
View raw message