You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Cyrille Le Clerc (JIRA)" <ji...@apache.org> on 2010/02/15 22:28:27 UTC

[jira] Created: (CXF-2676) JMX InstanceAlreadyExistsException under high load initialization

JMX InstanceAlreadyExistsException under high load initialization
-----------------------------------------------------------------

                 Key: CXF-2676
                 URL: https://issues.apache.org/jira/browse/CXF-2676
             Project: CXF
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.2.6
            Reporter: Cyrille Le Clerc
            Assignee: Cyrille Le Clerc


Under high load / burst startups with ResponseTimeFeature enabled , CXF clients and endpoints can cause {{InstanceAlreadyExistsException}}.

{noformat:title=Sample of InstanceAlreadyExistsException}
2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - 
   Can't register counter with object name org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP". 
   javax.management.InstanceAlreadyExistsException: org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP"
{noformat}

Before CXF-2675 , the message was 
{noformat}
2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - Can't register counter with object name {0}. {1}
{noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (CXF-2676) JMX InstanceAlreadyExistsException under high load initialization

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

Cyrille Le Clerc resolved CXF-2676.
-----------------------------------

       Resolution: Fixed
    Fix Version/s: 2.3
                   2.2.7

Patch applied. I opened a question on the dev mailing list to get feedbacks if someone finds the scope of the counter-creation-lock is too pessimistic.

> JMX InstanceAlreadyExistsException under high load initialization
> -----------------------------------------------------------------
>
>                 Key: CXF-2676
>                 URL: https://issues.apache.org/jira/browse/CXF-2676
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.2.6
>            Reporter: Cyrille Le Clerc
>            Assignee: Cyrille Le Clerc
>             Fix For: 2.2.7, 2.3
>
>         Attachments: CXF-2676.patch
>
>
> Under high load / burst startups with ResponseTimeFeature enabled , CXF clients and endpoints can cause {{InstanceAlreadyExistsException}}.
> {noformat:title=Sample of InstanceAlreadyExistsException}
> 2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - 
>    Can't register counter with object name org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP". 
>    javax.management.InstanceAlreadyExistsException: org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP"
> {noformat}
> Before CXF-2675 , the message was 
> {noformat}
> 2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - Can't register counter with object name {0}. {1}
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CXF-2676) JMX InstanceAlreadyExistsException under high load initialization

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

Cyrille Le Clerc updated CXF-2676:
----------------------------------

    Attachment: CXF-2676.patch

Patch proposal : use an instance scope {{counterCreationLock}} ({{java.util.concurrent.locks.ReentrantLock}}).

Pros : simple code
Cons : slightly pessimistic. Simultaneous initialization of many clients and/or endpoints is not very efficient, 

Other solutions : 
* use a {{synchronized}} block on {{ObjectName.toString().intern()}} : 
** understanding {{intern()}} is tricky :-(
* register counters at startup : 
** requires a lot of changes in the code :-(
** does not deal with hot activation of the {{ResponsetimeFeature}} :-(

> JMX InstanceAlreadyExistsException under high load initialization
> -----------------------------------------------------------------
>
>                 Key: CXF-2676
>                 URL: https://issues.apache.org/jira/browse/CXF-2676
>             Project: CXF
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 2.2.6
>            Reporter: Cyrille Le Clerc
>            Assignee: Cyrille Le Clerc
>         Attachments: CXF-2676.patch
>
>
> Under high load / burst startups with ResponseTimeFeature enabled , CXF clients and endpoints can cause {{InstanceAlreadyExistsException}}.
> {noformat:title=Sample of InstanceAlreadyExistsException}
> 2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - 
>    Can't register counter with object name org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP". 
>    javax.management.InstanceAlreadyExistsException: org.apache.cxf:bus.id=my-bus,type=Performance.Counter.Server,service="{http://ws.example.com/}myService",port="myServiceSOAP"
> {noformat}
> Before CXF-2675 , the message was 
> {noformat}
> 2010/02/15 22:12:08,632  WARN [http-8080-20] org.apache.cxf.management.counters.CounterRepository - Can't register counter with object name {0}. {1}
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.