You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Javier Bermejo <jb...@germinus.com> on 2005/10/26 17:06:09 UTC

Will orm-persistence be upgraded to use Hibernate 3?

Hi all!

I wanted to know if orm-persistence will use Hibernate 3. Additionally I 
want to say that it's working with hibernate 2.1.7c and with persistence 
to a postgreSQL database (I attach the sql creation db script for that db).

In a future when Jackrabbit support clustering it would be nice to test 
hibernate 3 + oscache + clustering via JavaGroups.

Best regards,
  Javier

Re: Will orm-persistence be upgraded to use Hibernate 3?

Posted by Serge Huber <sh...@jahia.com>.
Hi Javier,

Well I haven't had the time to work on it in a long time, so ideally yes 
it would be best. But at the same time given all the recent developments 
with BerkeleyDB and the JDBC connectors there are other possibilities.

One thing that the current implementation needs is simplification. I'm 
sure with the simplification of the data model that has occured a while 
ago (originally Jackrabbit could for example have multiple parents for 
one node), the ORM code could be simplified, as it still retains notions 
of this.

As I said, I have no time right now to work on this, but if anybody's 
interested, feel free to get involved.

One last thing : I'm currently involved in testing Hibernate in 
clustering environments so I'm getting some experience in this kind of 
setup. OSCache is not really appropriate for clustering environments as 
Hibernate requires either transaction or locking support, of which 
OSCache offers neither. I'm currently testing with JBossCache but the 
transaction setup is a bit tricky to do.

Regards,
  Serge Huber.

Javier Bermejo wrote:

> Hi all!
>
> I wanted to know if orm-persistence will use Hibernate 3. Additionally 
> I want to say that it's working with hibernate 2.1.7c and with 
> persistence to a postgreSQL database (I attach the sql creation db 
> script for that db).
>
> In a future when Jackrabbit support clustering it would be nice to 
> test hibernate 3 + oscache + clustering via JavaGroups.
>
> Best regards,
>  Javier
>
>------------------------------------------------------------------------
>
>alter table JCR_CHILD_NODE drop constraint FKDD9C692B113839BA;
>alter table JCR_NODE_MIXIN_TYPE drop constraint FK4AF75CAFF0792B62;
>alter table JCR_NODE_PARENT drop constraint FKA741DC81F0792B62;
>alter table JCR_NODE_PROPERTY drop constraint FK5CFF13EC113839BA;
>drop table JCR_BLOB;
>drop table JCR_CHILD_NODE;
>drop table JCR_NODE;
>drop table JCR_NODE_MIXIN_TYPE;
>drop table JCR_NODE_PARENT;
>drop table JCR_NODE_PROPERTY;
>drop table JCR_NODE_REF;
>drop table JCR_PROPERTY;
>drop sequence hibernate_sequence;
>create table JCR_BLOB (BLOB_ID int4 not null, PARENT_UUID varchar(255), PROP_NAME varchar(255), VALUE_INDEX int4, BLOB_SIZE int8, BLOB_VALUE bytea, primary key (BLOB_ID));
>create table JCR_CHILD_NODE (PARENT_UUID varchar(255) not null, UUID varchar(255), NAME varchar(255), SAMENAME_INDEX int4, CHILDREN_INDEX int4 not null, primary key (PARENT_UUID, CHILDREN_INDEX));
>create table JCR_NODE (UUID varchar(36) not null, PARENT_UUID varchar(255), NODE_TYPE varchar(255), DEFINITION_ID varchar(255), primary key (UUID));
>create table JCR_NODE_MIXIN_TYPE (NODE_UUID varchar(255) not null, MIXIN_TYPE varchar(255));
>create table JCR_NODE_PARENT (NODE_UUID varchar(255) not null, PARENT_UUID varchar(255));
>create table JCR_NODE_PROPERTY (PARENT_UUID varchar(255) not null, NAME varchar(255));
>create table JCR_NODE_REF (TARGET_UUID varchar(255) not null, PROP_UUID varchar(255) not null, PROP_NAME varchar(255) not null, primary key (TARGET_UUID, PROP_UUID, PROP_NAME));
>create table JCR_PROPERTY (ITEM_ID varchar not null, NAME varchar(255), PARENT_UUID varchar(255), VALUE varchar(255), PROP_TYPE int4, DEFINITION_ID varchar(255), MULTI_VALUED char(1), primary key (ITEM_ID));
>alter table JCR_CHILD_NODE add constraint FKDD9C692B113839BA foreign key (PARENT_UUID) references JCR_NODE;
>alter table JCR_NODE_MIXIN_TYPE add constraint FK4AF75CAFF0792B62 foreign key (NODE_UUID) references JCR_NODE;
>alter table JCR_NODE_PARENT add constraint FKA741DC81F0792B62 foreign key (NODE_UUID) references JCR_NODE;
>alter table JCR_NODE_PROPERTY add constraint FK5CFF13EC113839BA foreign key (PARENT_UUID) references JCR_NODE;
>create sequence hibernate_sequence;
>
>CREATE INDEX JCR_NODE_PROPERTY_INDEX1 ON JCR_NODE_PROPERTY(PARENT_UUID, NAME);
>CREATE INDEX JCR_NODE_PROPERTY_INDEX2 ON JCR_NODE_PROPERTY(PARENT_UUID);
>
>CREATE INDEX JCR_CHILD_NODE_INDEX1 ON JCR_CHILD_NODE (PARENT_UUID, UUID, NAME, SAMENAME_INDEX);
>CREATE INDEX JCR_CHILD_NODE_INDEX2 ON JCR_CHILD_NODE (PARENT_UUID, CHILDREN_INDEX);
>
>CREATE INDEX JCR_NODE_MIXIN_TYPE_INDEX1 ON JCR_NODE_MIXIN_TYPE (NODE_UUID, MIXIN_TYPE);
>CREATE INDEX JCR_NODE_MIXIN_TYPE_INDEX2 ON JCR_NODE_MIXIN_TYPE (NODE_UUID);
>
>CREATE INDEX JCR_NODE_PARENT_INDEX1 ON JCR_NODE_PARENT (NODE_UUID, PARENT_UUID);
>CREATE INDEX JCR_NODE_PARENT_INDEX2 ON JCR_NODE_PARENT (NODE_UUID);
>
>CREATE INDEX JCR_NODE_REF_INDEX1 ON JCR_NODE_REF(TARGET_UUID, PROP_UUID, PROP_NAME);
>CREATE INDEX JCR_NODE_REF_INDEX2 ON JCR_NODE_REF(TARGET_UUID);
>
>CREATE INDEX JCR_BLOB_INDEX1 ON JCR_BLOB(PARENT_UUID, PROP_NAME, VALUE_INDEX);
>  
>