You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Jukka Zitting <ju...@gmail.com> on 2007/05/31 12:08:02 UTC

Raw mode

Hi,

Every now and then I see people running into issues with the current
limitations in modifying node types in Jackrabbit. The recent JCR-954
issue also highlighted a similar problem with referential integrity
checks. For various reasons the strict integrity checks in Jackrabbit
end up hurting valid use cases.

The proper solution to the problem would be to actually implement the
missing node type modification support and to optimize the use cases
in JCR-954, but it seems to me that we are at least a year if not more
away from such solutions.

Thus I would like to float the idea of a "raw mode" in Jackrabbit. The
"raw mode" would be a session-level attribute, enabled during login,
that would disable all node type and reference checks for that
session. The mode would only be available to administrator users,
perhaps even only when no other sessions are accessing the repository.

BR,

Jukka Zitting

Re: Raw mode

Posted by Alexandru Popescu ☀ <th...@gmail.com>.
On 5/31/07, Felix Meschberger <Fe...@day.com> wrote:
> Hi,
>

>
> [snip...]
>

>
> On the other hand, proper integrity is at the heart of every professional
> data repository and IMHO is one of the strongholds of the JCR. Another
> reason to not add such a "raw" mode.
>

I kinda disagree with the above statement. RDBMS are professional data
repositories, and we all know that DBAs are having the tools/means to
disable data integrity constraints so that they can perform special
ops. I am seeing Jukka's proposal as an equivalent mechanism.


bests,

./alex
--
.w( the_mindstorm )p.

> Regards
> Felix
>
> On 5/31/07, Jukka Zitting <ju...@gmail.com> wrote:
> >
> > Hi,
> >
> > Every now and then I see people running into issues with the current
> > limitations in modifying node types in Jackrabbit. The recent JCR-954
> > issue also highlighted a similar problem with referential integrity
> > checks. For various reasons the strict integrity checks in Jackrabbit
> > end up hurting valid use cases.
> >
> > The proper solution to the problem would be to actually implement the
> > missing node type modification support and to optimize the use cases
> > in JCR-954, but it seems to me that we are at least a year if not more
> > away from such solutions.
> >
> > Thus I would like to float the idea of a "raw mode" in Jackrabbit. The
> > "raw mode" would be a session-level attribute, enabled during login,
> > that would disable all node type and reference checks for that
> > session. The mode would only be available to administrator users,
> > perhaps even only when no other sessions are accessing the repository.
> >
> > BR,
> >
> > Jukka Zitting
> >
>

Re: Raw mode

Posted by Felix Meschberger <Fe...@day.com>.
Hi,

As Stefan and I noted in our comments to JCR-954, the real issues is not
integrity checking but transient item spaces held in-memory during the
transaction. This problem cannot be solved by just adding some raw mode of
whatever sort and restriction. Rather than resorting to such a hacky
workaround for a concrete use case, we should try to solve the general
problems underlying this specific use case.

Consider for example a subtree of - say - 10 Millions items you wish to
delete. You will run into the very same memory issues as noted in JCR-954.
But the "raw" mode will not help you out here...

On the other hand, proper integrity is at the heart of every professional
data repository and IMHO is one of the strongholds of the JCR. Another
reason to not add such a "raw" mode.

Regards
Felix

On 5/31/07, Jukka Zitting <ju...@gmail.com> wrote:
>
> Hi,
>
> Every now and then I see people running into issues with the current
> limitations in modifying node types in Jackrabbit. The recent JCR-954
> issue also highlighted a similar problem with referential integrity
> checks. For various reasons the strict integrity checks in Jackrabbit
> end up hurting valid use cases.
>
> The proper solution to the problem would be to actually implement the
> missing node type modification support and to optimize the use cases
> in JCR-954, but it seems to me that we are at least a year if not more
> away from such solutions.
>
> Thus I would like to float the idea of a "raw mode" in Jackrabbit. The
> "raw mode" would be a session-level attribute, enabled during login,
> that would disable all node type and reference checks for that
> session. The mode would only be available to administrator users,
> perhaps even only when no other sessions are accessing the repository.
>
> BR,
>
> Jukka Zitting
>

Re: Raw mode

Posted by Cédric Damioli <ce...@anyware-tech.com>.
Nice idea, from my POV.
This could also solve the problem of restoring a version history backup, 
or all "protected" values related problems.

But of course, it would go against the initial JSR-170 spec.

This point actually highlights the lack of administrative API in JR, 
doesn't it ?
It may be the right time to think to such an API ?
WDYT ?

Regards,

Cédric

Jukka Zitting a écrit :
> Hi,
>
> Every now and then I see people running into issues with the current
> limitations in modifying node types in Jackrabbit. The recent JCR-954
> issue also highlighted a similar problem with referential integrity
> checks. For various reasons the strict integrity checks in Jackrabbit
> end up hurting valid use cases.
>
> The proper solution to the problem would be to actually implement the
> missing node type modification support and to optimize the use cases
> in JCR-954, but it seems to me that we are at least a year if not more
> away from such solutions.
>
> Thus I would like to float the idea of a "raw mode" in Jackrabbit. The
> "raw mode" would be a session-level attribute, enabled during login,
> that would disable all node type and reference checks for that
> session. The mode would only be available to administrator users,
> perhaps even only when no other sessions are accessing the repository.
>
> BR,
>
> Jukka Zitting


-- 
Cédric Damioli
ANYWARE TECHNOLOGIES
Tel : +33 (0)5 61 00 73 47
Fax : +33 (0)5 61 00 51 46
http://www.anyware-tech.com