portals-jetspeed-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Atul Dambalkar <adamb...@cisco.com>
Subject Re: XML Database schema for DatabasePsmlManager Implementation
Date Wed, 05 Sep 2001 22:28:57 GMT
At 03:11 PM 9/5/01 -0700, you wrote:

>----- Original Message -----
>From: "Atul Dambalkar" <adambalk@cisco.com>
>To: <jetspeed-dev@jakarta.apache.org>
>Sent: Wednesday, September 05, 2001 2:51 PM
>Subject: RE: XML Database schema for DatabasePsmlManager Implementation
>
>
> > At 12:19 PM 9/5/01 -0700, you wrote:
> > >At 09:25 PM 9/4/01 -0700, you wrote:
> > >>Hi Atul,
> > >>
> > >>At first, I thought there was a problem with "USER_ID" being the primary
> > >>key.
> > >>But it appears to be a ID field, which is misleading, since it had me
> > >>thinking that it was the foreign key between the TURBINE_USER table and
>this
> > >>table. I'd recommend a dependent relationship between TURBINE_USER and
> > >>JETSPEED_USER_PROFILE (cascading deletes), which means adding another
>column
> > >>for the foreign key - at that point you will have a column name conflict
>(i
> > >>don't like naming common columns differently across tables), so maybe
>all of
> > >>your primary keys could be called PSML_ID, which is also less confusing.
> > >>Likewise for TURBINE_GROUP AND JETSPEED_GROUP_PROFILE, and TURBINE_ROLE
>and
> > >>JETSPEED_ROLE_PROFILE.
> > >>Questions I have are:
> > >>- does Torque support cascading deletes?
> > >>- all databases don't support cascading deletes. Will Torque compensate?
> >
> > David,
> >
> > As far as cascading deletes in database are concerned, the same case may
> > exist about deleting the PSML files on the File System when someone is
> > using CastorPsmlManager. So, when a user gets deleted from the Turbine
>user
> > table, the PSML files also should get deleted from the file system. How is
> > that happening now? I am sure, it must be happening. So, one option to
>
>Yes, you are right. Whenever you use the JetspeedSecurity interface to
>delete a user/group/role, the corresponding PSML is also deleted.
>
> > cascading deletes would be, when the user gets deleted from the Jetspeed
> > Admin interface, the Jetspeed itself can invoke
> > "removeDocument(ProfileLocator)" or "removeUserDocuments(User)" method
>from
> > the PsmlManagerService, and then we won't have worry about any data
> > integrity conflicts, and hence don't have to use TURBINE tables as foreign
> > key tables in Jetspeed PSML. Only thing that, the code which does that in
> > Jetspeed, would have to put in a transaction.
>
>We will need to look at the JetspeedSecurity code to ensure that it handles
>this transactionally


I looked at your code 
org.apache.jetspeed.services.security.JetspeedDBSecurityService.
Basically, we have to handle the exceptions. It looks that, it is done 
correct while adding user/group/role. We just have to follow the same 
exception handling while removing the documents. I can do that, if that's 
okay, and you can later review it.

-Atul


> >
> > -Atul
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org
> >
> >
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jetspeed-dev-help@jakarta.apache.org


Mime
View raw message