[jira] [Commented] (OAK-926) MongoMK: split documents when they are too large

2013-07-29 Thread Thomas Mueller (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-926?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13722267#comment-13722267
 ] 

Thomas Mueller commented on OAK-926:


Revision 1507970: Temporarily, truncate revisions that are older than 5 minutes 
if the document is larger than 512 KB

 MongoMK: split documents when they are too large
 

 Key: OAK-926
 URL: https://issues.apache.org/jira/browse/OAK-926
 Project: Jackrabbit Oak
  Issue Type: Bug
  Components: mongomk
Reporter: Thomas Mueller

 Currently, the MongoMK stores all revisions of a node in the same document. 
 Once there are many revisions, the document gets very large.
 The plan is to split the document when it gets big.
 It looks like this isn't just a nice to have, but also a problem for some 
 use cases. Example stack trace:
 {code}
 21.07.2013 12:35:47.554 *ERROR* ...
 Caused by: java.lang.IllegalArgumentException: 'ok' should never be null...
   at com.mongodb.CommandResult.ok(CommandResult.java:48)
   at com.mongodb.DBCollection.findAndModify(DBCollection.java:375)
   at 
 org.apache.jackrabbit.oak.plugins.mongomk.MongoDocumentStore.findAndModify(MongoDocumentStore.java:302)
   ... 32 more
 {code}
 at the same time in the MongoDB log:
 {code}
 Sun Jul 21 12:35:47.334 [conn7] warning: log line attempted (159k) over max 
 size(10k), 
 printing beginning and end ... 
 Assertion: 10334:BSONObj size: 16795219 (0x53460001) is invalid. 
 Size must be between 0 and 16793600(16MB) 
 First element: :childOrder: { r1400279f22d-0-1: [], ...
 {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Updated] (OAK-932) RootImpl to AbstractRoot

2013-07-29 Thread Antonio Sanso (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-932?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Antonio Sanso updated OAK-932:
--

Attachment: OAK-932a-patch.txt

thanks for your comment [~mduerig] . attaching new patch that try to address 
the comments

 RootImpl to AbstractRoot
 

 Key: OAK-932
 URL: https://issues.apache.org/jira/browse/OAK-932
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: core
Reporter: Antonio Sanso
 Attachments: OAK-932a-patch.txt, OAK-932a-patch.txt, OAK-932-patch.txt


 as discussed in [0] it would be nice to have a common Root ancestor for 
 mutable/immutable tree similar to what already exists for the Tree
 [0] http://oak.markmail.org/thread/fe5p4dhf2i5korqy

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Comment Edited] (OAK-910) Privilege Management: Document changes wrt Jackrabbit

2013-07-29 Thread angela (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13720871#comment-13720871
 ] 

angela edited comment on OAK-910 at 7/29/13 9:56 AM:
-

h4. 1. General Characteristics of the Privilege Management Implementation

As of OAK the built-in and custom privileges are stored in the repository 
underneath /jcr:system/rep:privileges. Similar to other repository level date 
(node types, namespaces and versions) this location is shared by all workspaces 
present in the repository. The nodes and properties storing the privilege 
definitions are protected by their node type definition.  In addition a 
specific privilege validator asserts the consistency of the privilege store.

h4. 2. Built-in Privilege Definitions

* All Privileges as defined by JSR 283
** jcr:read
** jcr:modifyProperties
** jcr:addChildNodes
** jcr:removeNode
** jcr:removeChildNodes
** jcr:readAccessControl
** jcr:modifyAccessControl
** jcr:lockManagement
** jcr:versionManagement
** jcr:nodeTypeManagement
** jcr:retentionManagement (NOTE: retention management not yet implemented)
** jcr:lifecycleManagement (NOTE: lifecycle management not yet implemented)
** jcr:write
** jcr:all
* All Privileges defined by JSR 333
** jcr:workspaceManagement (NOTE: wsp management not yet implemented)
** jcr:nodeTypeDefinitionManagement
** jcr:namespaceManagement
* All Privileges defined by Jackrabbit 2.x
** rep:write
** rep:privilegeManagement
* new privileges defined by OAK 1.0:
** rep:userManagement
** rep:readNodes
** rep:readProperties
** rep:addProperties
** rep:alterProperties
** rep:removeProperties

Note the following differences with respect to Jackrabbit 2.x definitions:
* jcr:read is now an aggregation of rep:readNodes and rep:readProperties
* jcr:modifyProperties is now an aggregation of rep:addProperties, 
rep:alterProperties and rep:removeProperties

h4. 3. Node Type Definitions

The following privilege related built-in node types have been added in OAK 1.0:

{code}
[rep:Privileges]
  + * (rep:Privilege) = rep:Privilege protected ABORT
  - rep:next (LONG) protected multiple mandatory

[rep:Privilege]
  - rep:isAbstract (BOOLEAN) protected
  - rep:aggregates (NAME) protected multiple
  - rep:bits (LONG) protected multiple mandatory
{code}

h4. 4. API Extensions

h4. 5. Configuration

h4. 6. References

  was (Author: anchela):
h4. 1. General Characteristics of the Privilege Management Implementation

h4. 2. Built-in Privilege Definitions

* All Privileges as defined by JSR 283
** jcr:read
** jcr:modifyProperties
** jcr:addChildNodes
** jcr:removeNode
** jcr:removeChildNodes
** jcr:readAccessControl
** jcr:modifyAccessControl
** jcr:lockManagement
** jcr:versionManagement
** jcr:nodeTypeManagement
** jcr:retentionManagement (NOTE: retention management not yet implemented)
** jcr:lifecycleManagement (NOTE: lifecycle management not yet implemented)
** jcr:write
** jcr:all
* All Privileges defined by JSR 333
** jcr:workspaceManagement (NOTE: wsp management not yet implemented)
** jcr:nodeTypeDefinitionManagement
** jcr:namespaceManagement
* All Privileges defined by Jackrabbit 2.x
** rep:write
** rep:privilegeManagement
* new privileges defined by OAK 1.0:
** rep:userManagement
** rep:readNodes
** rep:readProperties
** rep:addProperties
** rep:alterProperties
** rep:removeProperties

Note the following differences with respect to Jackrabbit 2.x definitions:
* jcr:read is now an aggregation of rep:readNodes and rep:readProperties
* jcr:modifyProperties is now an aggregation of rep:addProperties, 
rep:alterProperties and rep:removeProperties

h4. 3. Node Type Definitions

The following privilege related built-in node types have been added in OAK 1.0:

{code}
[rep:Privileges]
  + * (rep:Privilege) = rep:Privilege protected ABORT
  - rep:next (LONG) protected multiple mandatory

[rep:Privilege]
  - rep:isAbstract (BOOLEAN) protected
  - rep:aggregates (NAME) protected multiple
  - rep:bits (LONG) protected multiple mandatory
{code}

h4. 4. API Extensions

h4. 5. Configuration

h4. 6. References
  
 Privilege Management: Document changes wrt Jackrabbit
 -

 Key: OAK-910
 URL: https://issues.apache.org/jira/browse/OAK-910
 Project: Jackrabbit Oak
  Issue Type: Sub-task
  Components: core, jcr
Reporter: angela
Assignee: angela



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (OAK-803) Backwards compatibility of long-lived sessions

2013-07-29 Thread JIRA

[ 
https://issues.apache.org/jira/browse/OAK-803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13722452#comment-13722452
 ] 

Michael Dürig commented on OAK-803:
---

bq. provide a way for clients to choose the refresh behaviour on login,

[Discussion | http://markmail.org/message/lwhpglehee3jgpip] on the @dev list.

 Backwards compatibility of long-lived sessions
 --

 Key: OAK-803
 URL: https://issues.apache.org/jira/browse/OAK-803
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: jcr
Reporter: Jukka Zitting
Assignee: Michael Dürig

 The auto-refresh mode added in OAK-88 should perhaps be enabled by default, 
 with warning logs to let clients know that relying on such a default behavior 
 without explicit per-session configuration might not be supported in a future 
 release.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (OAK-932) RootImpl to AbstractRoot

2013-07-29 Thread JIRA

[ 
https://issues.apache.org/jira/browse/OAK-932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13722526#comment-13722526
 ] 

Michael Dürig commented on OAK-932:
---

At revision 1508095 I made {{RootImpl}} abstract and renamed it to 
{{AbstractRoot}}. 

 RootImpl to AbstractRoot
 

 Key: OAK-932
 URL: https://issues.apache.org/jira/browse/OAK-932
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: core
Reporter: Antonio Sanso
 Attachments: OAK-932a-patch.txt, OAK-932a-patch.txt, OAK-932-patch.txt


 as discussed in [0] it would be nice to have a common Root ancestor for 
 mutable/immutable tree similar to what already exists for the Tree
 [0] http://oak.markmail.org/thread/fe5p4dhf2i5korqy

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (OAK-803) Backwards compatibility of long-lived sessions

2013-07-29 Thread JIRA

[ 
https://issues.apache.org/jira/browse/OAK-803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13722860#comment-13722860
 ] 

Michael Dürig commented on OAK-803:
---

At revision 1508182 I committed evaluation of the {{refresh-interval}} on 
{{SimpleCredentials}} and {{TokenCredentials}} on {{Session.login()}}. The 
value of the attribute is the number of seconds after which as session will be 
automatically refreshed. 

 Backwards compatibility of long-lived sessions
 --

 Key: OAK-803
 URL: https://issues.apache.org/jira/browse/OAK-803
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: jcr
Reporter: Jukka Zitting
Assignee: Michael Dürig

 The auto-refresh mode added in OAK-88 should perhaps be enabled by default, 
 with warning logs to let clients know that relying on such a default behavior 
 without explicit per-session configuration might not be supported in a future 
 release.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira