jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-201) NamespaceRegistry is very slow
Date Mon, 23 Jul 2012 11:41:38 GMT

    [ https://issues.apache.org/jira/browse/OAK-201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13420579#comment-13420579

Jukka Zitting commented on OAK-201:

Here's a quick draft of what I think the name mapper for the "no session-local namespace remappings"
case should look like:

private static final Map<String, String> STANDARD_NAMES =
        ImmutableMap.<String, String>builder()
        .put(NodeType.NT_BASE, "nt:base")
        .put(Property.JCR_PRIMARY_TYPE, "jcr:primaryType")

public String getOakName(String jcrName) {
    if (jcrName.charAt(0) != '{') {
        return jcrName;

    String oakName = STANDARD_NAMES.get(jcrName);
    if (oakName != null) {
        return oakName;
     // Fall back to normal parsing and mapping of the name
> NamespaceRegistry is very slow
> ------------------------------
>                 Key: OAK-201
>                 URL: https://issues.apache.org/jira/browse/OAK-201
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>            Reporter: Thomas Mueller
> The NamespaceRegistryImpl.getURI and getPrefix are called a lot, for example by NamePathMapperImpl.getOakName.

> The method doesn't do any caching, which is a problem because it has to read it each
time from the repository. Even if it would do caching, it wouldn't help because it the method
WorkspaceImpl.getNamespaceRegistry creates a new NamespaceRegistryImpl each time it is called.
To allow caching of known mappings, the instance needs to be cached as well.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message