You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Yang ZHONG (JIRA)" <tu...@ws.apache.org> on 2006/10/16 20:00:35 UTC

[jira] Created: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

ChangeSummary#isCreated cache is not updated while changes are still going on
-----------------------------------------------------------------------------

                 Key: TUSCANY-859
                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
             Project: Tuscany
          Issue Type: Bug
          Components: Java SDO Implementation
    Affects Versions: Java-Mx
            Reporter: Yang ZHONG


This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
however it's a *generic* issue, not specific to simple.xsd.

    child = quote.createDataObject("quotes");
    assertTrue(changeSummary.isCreated(child));        
    child = quote.createDataObject("quotes");
    assertTrue(changeSummary.isCreated(child));        

The last assertion fails.

ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
caching which improves performance.
However, the cache should be updated while changes are still going on.

I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().

One of the possible solutions is to invalidate cache whevever there's a new change, such as

    public void SDOChangeRecorder#notifyChanged(Notification notification)
    {
        cachedObjectsToDetach = null;
        super.notifyChanged( notification);
    }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Updated: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

Posted by "Yang ZHONG (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-859?page=all ]

Yang ZHONG updated TUSCANY-859:
-------------------------------

    Attachment: T859.patch

Thanks to Frank.

The attachment has passed all build tests.

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-Mx
>            Reporter: Yang ZHONG
>         Attachments: 859.patch, T859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Resolved: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

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

Frank Budinsky resolved TUSCANY-859.
------------------------------------

    Resolution: Fixed

Committed revision 491909.

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-Mx
>            Reporter: Yang ZHONG
>         Attachments: 859.patch, ChangeSummaryImpl.859, NeverStaleChangeSummaryTestCase.java, T859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

Posted by "Kelvin Goodson (JIRA)" <tu...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/TUSCANY-859?page=comments#action_12455346 ] 
            
Kelvin Goodson commented on TUSCANY-859:
----------------------------------------

Capturing some info on this.

I think Yang's patch fixes the specific test case,  but there may be more to this,  and we should consider performance.  EMFhas a method "summarize" which calls consolidateChanges and this refreshes caches.  There are 2 other caches -- we need to check if these are similarly affected.  I think we need to be making judicious calls to summarize(), bearing performance in mind.

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-Mx
>            Reporter: Yang ZHONG
>         Attachments: 859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Updated: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

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

Kelvin Goodson updated TUSCANY-859:
-----------------------------------

    Fix Version/s: Java-SDO-M3

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-SCA-Mx
>            Reporter: Yang ZHONG
>             Fix For: Java-SDO-M3
>
>         Attachments: 859.patch, ChangeSummaryImpl.859, NeverStaleChangeSummaryTestCase.java, T859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
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-859) ChangeSummary#isCreated cache is not updated while changes are still going on

Posted by "Yang ZHONG (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-859?page=all ]

Yang ZHONG updated TUSCANY-859:
-------------------------------

    Attachment: 859.patch

Please review

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-Mx
>            Reporter: Yang ZHONG
>         Attachments: 859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Updated: (TUSCANY-859) ChangeSummary#isCreated cache is not updated while changes are still going on

Posted by "Yang ZHONG (JIRA)" <tu...@ws.apache.org>.
     [ http://issues.apache.org/jira/browse/TUSCANY-859?page=all ]

Yang ZHONG updated TUSCANY-859:
-------------------------------

    Attachment: ChangeSummaryImpl.859
                NeverStaleChangeSummaryTestCase.java

Forgot the new Test Case.

ChangeSummaryImpl.859 has passed all build tests including NeverStaleChangeSummaryTestCase.

> ChangeSummary#isCreated cache is not updated while changes are still going on
> -----------------------------------------------------------------------------
>
>                 Key: TUSCANY-859
>                 URL: http://issues.apache.org/jira/browse/TUSCANY-859
>             Project: Tuscany
>          Issue Type: Bug
>          Components: Java SDO Implementation
>    Affects Versions: Java-Mx
>            Reporter: Yang ZHONG
>         Attachments: 859.patch, ChangeSummaryImpl.859, NeverStaleChangeSummaryTestCase.java, T859.patch
>
>
> This Test Case uses simple.xsd from tuscany/java/sdo/impl/src/test/resources,
> however it's a *generic* issue, not specific to simple.xsd.
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
>     child = quote.createDataObject("quotes");
>     assertTrue(changeSummary.isCreated(child));        
> The last assertion fails.
> ChangeSummary#isCreated delegates to *derived* getObjectsToDetach()
> caching which improves performance.
> However, the cache should be updated while changes are still going on.
> I have browsed the spec 2.1draft and 2.01, they don't seem forbid users from querying ChangeSummary before endLogging().
> One of the possible solutions is to invalidate cache whevever there's a new change, such as
>     public void SDOChangeRecorder#notifyChanged(Notification notification)
>     {
>         cachedObjectsToDetach = null;
>         super.notifyChanged( notification);
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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