Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 3D35D200BE7 for ; Tue, 20 Dec 2016 10:20:00 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 3BDC7160B29; Tue, 20 Dec 2016 09:20:00 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 841D3160B1B for ; Tue, 20 Dec 2016 10:19:59 +0100 (CET) Received: (qmail 2292 invoked by uid 500); 20 Dec 2016 09:19:58 -0000 Mailing-List: contact oak-issues-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: oak-dev@jackrabbit.apache.org Delivered-To: mailing list oak-issues@jackrabbit.apache.org Received: (qmail 2277 invoked by uid 99); 20 Dec 2016 09:19:58 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 20 Dec 2016 09:19:58 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 7D8CB2C1F5A for ; Tue, 20 Dec 2016 09:19:58 +0000 (UTC) Date: Tue, 20 Dec 2016 09:19:58 +0000 (UTC) From: "Thomas Mueller (JIRA)" To: oak-issues@jackrabbit.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (OAK-5260) Incorrect handling of subpaths with leading left curly bracket MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Tue, 20 Dec 2016 09:20:00 -0000 [ https://issues.apache.org/jira/browse/OAK-5260?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15763728#comment-15763728 ] Thomas Mueller commented on OAK-5260: ------------------------------------- > forbid silly names Yes, I would prefer that, instead of what we have right now, and instead of adding more complex rules such as "find matching }" or check for ":" and so on. What we have right now is "kind of" broken because it results in very strange behavior. For example: {noformat} session.getRootNode().addNode("{" + UUID.randomUUID()); > javax.jcr.ItemExistsException: {98dc892a-e9b4-4cc7-b692-936db4cea61e {noformat} Of course the error message is wrong, because how can it be possible that _that_ node exists. The reason for this exception is that "\{" and everything behind that is currently ignored, so that this is equivalent to: {noformat} session.getRootNode().addNode("."); > javax.jcr.ItemExistsException: . {noformat} > Incorrect handling of subpaths with leading left curly bracket > -------------------------------------------------------------- > > Key: OAK-5260 > URL: https://issues.apache.org/jira/browse/OAK-5260 > Project: Jackrabbit Oak > Issue Type: Bug > Components: jcr > Reporter: Bertrand Delacretaz > Assignee: Julian Sedding > Fix For: 1.6 > > Attachments: OAK-5260-jsedding.patch, OAK-5260.patch > > > As per SLING-6383 it looks like the Oak name mapping causes for example getItem("/libs/{sub") (with a left curly bracket in the path) to return the /libs node if that exists but the supplied path does not. > I'll attach a patch with a test that demonstrates this. > [~fmeschbe] mentions in that Sling issue that the parsing of the CR 2 section 3.2.5.1 Expanded Form could be involved, treating the left curly bracket in a special way that's not appropriate here. -- This message was sent by Atlassian JIRA (v6.3.4#6332)