You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Caroline Maynard (JIRA)" <tu...@ws.apache.org> on 2007/04/04 18:00:32 UTC

[jira] Created: (TUSCANY-1202) AccessViolation in DataObjectImpl::logDeletion()

AccessViolation in DataObjectImpl::logDeletion()
------------------------------------------------

                 Key: TUSCANY-1202
                 URL: https://issues.apache.org/jira/browse/TUSCANY-1202
             Project: Tuscany
          Issue Type: Bug
          Components: C++ SDO
    Affects Versions: Cpp-current
         Environment: PHP
            Reporter: Caroline Maynard


Like Tuscany 1147, this problem is seen running the SDOAPITest PHPUNIT testcase. The scenario is the same, but this time ChangeLogging type objects exist in the tree (note that Logging does not need to be turned on to see the problem). As with 1147, the problem is seen when the code using Tuscany holds references to objects at different levels in the tree, such that they are held after the root object no longer exists.

It's the standard company->departments->employees setup. When the company is dropped, the Tuscany code does reset the container and the applicable change summary for the department. But it doesn't drill down and do the same for the employee. The consequence is that the employee still has a changesummary pointer to the company's changesummary. When that gets referenced, in this testcase when unsetting the employee from the department, the changesummary value is tested and an AccessViolation occurs. 

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


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1202) AccessViolation in DataObjectImpl::logDeletion()

Posted by "Caroline Maynard (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Caroline Maynard updated TUSCANY-1202:
--------------------------------------

    Attachment: Tuscany-1202.patch

I'm not convinced that it's worth the trouble of caching the changesummaryobject, given the problems it causes. This patch eliminates the cache, calculating the changesummaryobject by walking up the containment tree when necessary instead.

> AccessViolation in DataObjectImpl::logDeletion()
> ------------------------------------------------
>
>                 Key: TUSCANY-1202
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1202
>             Project: Tuscany
>          Issue Type: Bug
>          Components: C++ SDO
>    Affects Versions: Cpp-current
>         Environment: PHP
>            Reporter: Caroline Maynard
>         Attachments: Tuscany-1202.patch
>
>
> Like Tuscany 1147, this problem is seen running the SDOAPITest PHPUNIT testcase. The scenario is the same, but this time ChangeLogging type objects exist in the tree (note that Logging does not need to be turned on to see the problem). As with 1147, the problem is seen when the code using Tuscany holds references to objects at different levels in the tree, such that they are held after the root object no longer exists.
> It's the standard company->departments->employees setup. When the company is dropped, the Tuscany code does reset the container and the applicable change summary for the department. But it doesn't drill down and do the same for the employee. The consequence is that the employee still has a changesummary pointer to the company's changesummary. When that gets referenced, in this testcase when unsetting the employee from the department, the changesummary value is tested and an AccessViolation occurs. 

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


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Updated: (TUSCANY-1202) AccessViolation in DataObjectImpl::logDeletion()

Posted by "Caroline Maynard (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Caroline Maynard updated TUSCANY-1202:
--------------------------------------

    Patch Info: [Patch Available]

I'vve added to 1147 a combined patch for 1147, 1202 and 1203, which should be simpler to apply.

> AccessViolation in DataObjectImpl::logDeletion()
> ------------------------------------------------
>
>                 Key: TUSCANY-1202
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1202
>             Project: Tuscany
>          Issue Type: Bug
>          Components: C++ SDO
>    Affects Versions: Cpp-current
>         Environment: PHP
>            Reporter: Caroline Maynard
>         Attachments: Tuscany-1202.patch
>
>
> Like Tuscany 1147, this problem is seen running the SDOAPITest PHPUNIT testcase. The scenario is the same, but this time ChangeLogging type objects exist in the tree (note that Logging does not need to be turned on to see the problem). As with 1147, the problem is seen when the code using Tuscany holds references to objects at different levels in the tree, such that they are held after the root object no longer exists.
> It's the standard company->departments->employees setup. When the company is dropped, the Tuscany code does reset the container and the applicable change summary for the department. But it doesn't drill down and do the same for the employee. The consequence is that the employee still has a changesummary pointer to the company's changesummary. When that gets referenced, in this testcase when unsetting the employee from the department, the changesummary value is tested and an AccessViolation occurs. 

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


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org


[jira] Closed: (TUSCANY-1202) AccessViolation in DataObjectImpl::logDeletion()

Posted by "Caroline Maynard (JIRA)" <tu...@ws.apache.org>.
     [ https://issues.apache.org/jira/browse/TUSCANY-1202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Caroline Maynard closed TUSCANY-1202.
-------------------------------------

       Resolution: Fixed
    Fix Version/s: Cpp-current

Combined patch committed

> AccessViolation in DataObjectImpl::logDeletion()
> ------------------------------------------------
>
>                 Key: TUSCANY-1202
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-1202
>             Project: Tuscany
>          Issue Type: Bug
>          Components: C++ SDO
>    Affects Versions: Cpp-current
>         Environment: PHP
>            Reporter: Caroline Maynard
>             Fix For: Cpp-current
>
>         Attachments: Tuscany-1202.patch
>
>
> Like Tuscany 1147, this problem is seen running the SDOAPITest PHPUNIT testcase. The scenario is the same, but this time ChangeLogging type objects exist in the tree (note that Logging does not need to be turned on to see the problem). As with 1147, the problem is seen when the code using Tuscany holds references to objects at different levels in the tree, such that they are held after the root object no longer exists.
> It's the standard company->departments->employees setup. When the company is dropped, the Tuscany code does reset the container and the applicable change summary for the department. But it doesn't drill down and do the same for the employee. The consequence is that the employee still has a changesummary pointer to the company's changesummary. When that gets referenced, in this testcase when unsetting the employee from the department, the changesummary value is tested and an AccessViolation occurs. 

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


---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-dev-help@ws.apache.org