You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "chad davis (JIRA)" <ji...@apache.org> on 2011/07/20 00:28:57 UTC

[jira] [Created] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

davex remoting has  a performance bottleneck due limit of 2 http connections
----------------------------------------------------------------------------

                 Key: JCR-3026
                 URL: https://issues.apache.org/jira/browse/JCR-3026
             Project: Jackrabbit Content Repository
          Issue Type: Improvement
          Components: jackrabbit-spi2dav
    Affects Versions: 2.2.5
            Reporter: chad davis
             Fix For: 2.3.0


The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  

It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Attachment: JCR-3026_Spi2davexRepositoryServiceFactory.java.patch

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Assigned] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela reassigned JCR-3026:
---------------------------

    Assignee: angela

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>            Assignee: angela
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071205#comment-13071205 ] 

chad davis commented on JCR-3026:
---------------------------------

@Angela

I will do better next time.  Can you point me to some coding style standards?  I'll very happy to use them.  

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>            Assignee: angela
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Attachment: JCR-3026_Spi2davRepositoryServiceFactory.java.patch

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Description: 
The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  

It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x

USAGE: 
Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.

NOTE: 
See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
 

  was:
The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  

It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x

See also the server side fixes: JCR-3027
 


> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "angela (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071119#comment-13071119 ] 

angela commented on JCR-3026:
-----------------------------

applied patch with quite some modification. specially the comments did not match the code which made it a bit cumbersome.
in addition it would be nice if the formatting would match the overall coding style used in jackrabbit.

thanks anyway for your effort.


> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>            Assignee: angela
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Attachment: JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Description: 
The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  

It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x

See also the server side fixes: JCR-3027
 

  was:
The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  

It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x 


> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> See also the server side fixes: JCR-3027
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "angela (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13069422#comment-13069422 ] 

angela commented on JCR-3026:
-----------------------------

thanks a lot for the patches. i will take a look and apply them as soon as possible.

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13068022#comment-13068022 ] 

chad davis commented on JCR-3026:
---------------------------------

I've already been testing my fixes on the 2.2.5 release.  I'm going to port them to the trunk, and run my tests there before attaching the patch.

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Attachment: JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "angela (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071602#comment-13071602 ] 

angela commented on JCR-3026:
-----------------------------

as far as i remember we mostly follow the java coding convention (see http://www.oracle.com/technetwork/java/codeconv-138413.html).

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>            Assignee: angela
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-3026:
------------------------

    Resolution: Fixed
        Status: Resolved  (was: Patch Available)

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>            Assignee: angela
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>         Attachments: JCR-3026_Spi2davRepositoryServiceFactory.java.patch, JCR-3026_Spi2davexRepositoryServiceFactory.java.patch, JCR-3026_org.apache.jackrabbit.spi2dav.RepositoryServiceImpl.java.patch, JCR-3026_org.apache.jackrabbit.spi2davex.RepositoryServiceImpl.java.patch
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3026) davex remoting has a performance bottleneck due limit of 2 http connections

Posted by "chad davis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3026?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

chad davis updated JCR-3026:
----------------------------

    Status: Patch Available  (was: Open)

Here are patches against the trunk.  Note, I've been running these against 2.2.5 and they work great there too.

> davex remoting has  a performance bottleneck due limit of 2 http connections
> ----------------------------------------------------------------------------
>
>                 Key: JCR-3026
>                 URL: https://issues.apache.org/jira/browse/JCR-3026
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-spi2dav
>    Affects Versions: 2.2.5
>            Reporter: chad davis
>              Labels: dav, davex, performance, remoting
>             Fix For: 2.3.0
>
>
> The spi2dav service implementation use of HttpClient did not support configuration of the maximum amount of http connections to the server.  The default value, in the HttpClient code, is two. This was a performance bottleneck.  This work makes the number of connections configurable via a parameter to the map passed to the repository factory.  
> It also fixes a concurrency issue which was exposed by the increased concurrency effected by this work.  This fix is a replacement of a HashMap cache of client connections with a ConcurrentHashMap, thanks to the java 1.5 available in Jackrabbit 2.x
> USAGE: 
> Set the number of connections (Spi2davRepositoryServiceFactory.PARAM_MAX_HTTP_CONNECTIONS) when creating a factory via the dav or davex rep factories.  Default is 20.
> NOTE: 
> See also the server side fixes: JCR-3027  The patch on that ticket allows configuration of the concurrency level on the server, which should be tuned in conjunction with the client side connection levels.  
>  

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira