You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@directory.apache.org by "Stefan Seelmann (JIRA)" <ji...@apache.org> on 2010/11/27 03:03:13 UTC

[jira] Created: (DIRSERVER-1585) Requests with value controls are not thread safe

Requests with value controls are not thread safe
------------------------------------------------

                 Key: DIRSERVER-1585
                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
             Project: Directory ApacheDS
          Issue Type: Bug
            Reporter: Stefan Seelmann


In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.

Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.


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


[jira] Commented: (DIRSERVER-1585) Requests with value controls are not thread safe

Posted by "Kiran Ayyagari (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DIRSERVER-1585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964336#action_12964336 ] 

Kiran Ayyagari commented on DIRSERVER-1585:
-------------------------------------------

+1, this should be changed, we should treat this as a blocker.

> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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


[jira] Commented: (DIRSERVER-1585) Requests with value controls are not thread safe

Posted by "Stefan Seelmann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/DIRSERVER-1585?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964335#action_12964335 ] 

Stefan Seelmann commented on DIRSERVER-1585:
--------------------------------------------

I think the ControlEnum event doesn't  make sense for controls without value because the criticality is also changeable.

I'd propose to replace the ControlEnum with a ControlFactory instead, which always creates a new instance of the control.


> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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


[jira] Updated: (DIRSERVER-1585) Requests with value controls are not thread safe

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

Stefan Seelmann updated DIRSERVER-1585:
---------------------------------------

         Priority: Blocker  (was: Major)
    Fix Version/s: 2.0.0-RC1

> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>            Priority: Blocker
>             Fix For: 2.0.0-RC1
>
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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


[jira] Resolved: (DIRSERVER-1585) Requests with value controls are not thread safe

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

Stefan Seelmann resolved DIRSERVER-1585.
----------------------------------------

    Resolution: Fixed

Fixed in trunk: 
  http://svn.apache.org/viewvc?rev=1039676&view=rev


> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>            Assignee: Stefan Seelmann
>            Priority: Blocker
>             Fix For: 2.0.0-RC1
>
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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


[jira] Assigned: (DIRSERVER-1585) Requests with value controls are not thread safe

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

Stefan Seelmann reassigned DIRSERVER-1585:
------------------------------------------

    Assignee: Stefan Seelmann

> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>            Assignee: Stefan Seelmann
>            Priority: Blocker
>             Fix For: 2.0.0-RC1
>
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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


[jira] Closed: (DIRSERVER-1585) Requests with value controls are not thread safe

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

Stefan Seelmann closed DIRSERVER-1585.
--------------------------------------


> Requests with value controls are not thread safe
> ------------------------------------------------
>
>                 Key: DIRSERVER-1585
>                 URL: https://issues.apache.org/jira/browse/DIRSERVER-1585
>             Project: Directory ApacheDS
>          Issue Type: Bug
>            Reporter: Stefan Seelmann
>            Assignee: Stefan Seelmann
>            Priority: Blocker
>             Fix For: 2.0.0-RC1
>
>
> In LdapMessageGrammar the ControlEnum is used to get an Control instance for an OID. The ControlEnum always returns the same Control instance. This works well for controls w/o value. But for controls with an value this is fatal because the single instance is used for each request and values may be overwritten from a parallel request.
> Background: I tried to run the PagedSearchIT using multiple threads, but they always failed.

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