You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org> on 2009/02/03 17:43:59 UTC

[jira] Created: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Move reference counting from AMQMessage and Queue classes to TransactionLog
---------------------------------------------------------------------------

                 Key: QPID-1632
                 URL: https://issues.apache.org/jira/browse/QPID-1632
             Project: Qpid
          Issue Type: Sub-task
            Reporter: Martin Ritchie




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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie updated QPID-1632:
---------------------------------

    Status: Ready To Review  (was: In Progress)

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie reassigned QPID-1632:
------------------------------------

    Assignee: Rob Godfrey  (was: Martin Ritchie)

Hi Rob can you take a look at the changes for the reference counting. Cheers

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Rob Godfrey
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Commented: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
    [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12674598#action_12674598 ] 

Martin Ritchie commented on QPID-1632:
--------------------------------------

I've been adding reference counting testing against the BDBMessageStore module. 

Everything looks ok except the NoAck messaging case. The data is not removed from the store:

The questions I have are:
Why is the NoAck case not purging the reference.
Why is there no logging from the QEI.dispose methods

I added logging to the QueueEntryImpl to log when the dispose is called which occurs when the reference count hits zero and the data should be deleted. I got no logging and the data remains.

Whilst this is an interesting from a testing of the existing code base PoV removing the reference counting and making the new TransactionLog responsible for the management of its own data will resolve this issue.

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie reassigned QPID-1632:
------------------------------------

    Assignee: Martin Ritchie

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Aidan Skinner (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aidan Skinner updated QPID-1632:
--------------------------------

    Assignee: Martin Ritchie  (was: Aidan Skinner)
      Status: Open  (was: Ready To Review)

TxAck.undoPrepare is now a no-op. Why not remove it entirely?

Why change discard to dequeueAndDelete? The former seems clearer in intent to me...

DerbyMessageStore has a commented out line and a todo checked in... at least raise a seperate Jira for this if it isn't going to be fixed.

MockQueueEntry is no longer a mock, it should be renamed to something else. 



> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Assigned: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie reassigned QPID-1632:
------------------------------------

    Assignee: Aidan Skinner  (was: Martin Ritchie)

Hi Aidan, can you take a look at this change to reference counting please.

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Aidan Skinner
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie updated QPID-1632:
---------------------------------

           Component/s: Java Broker
         Fix Version/s: M5
           Description: 
Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 

The reference counting updates are spread throughout the code base so there will be a bit of clean up required.
     Affects Version/s: M4
    Remaining Estimate: 24h
     Original Estimate: 24h

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


[jira] Updated: (QPID-1632) Move reference counting from AMQMessage and Queue classes to TransactionLog

Posted by "Martin Ritchie (JIRA)" <qp...@incubator.apache.org>.
     [ https://issues.apache.org/jira/browse/QPID-1632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Ritchie updated QPID-1632:
---------------------------------

    Status: Ready To Review  (was: In Progress)

> Move reference counting from AMQMessage and Queue classes to TransactionLog
> ---------------------------------------------------------------------------
>
>                 Key: QPID-1632
>                 URL: https://issues.apache.org/jira/browse/QPID-1632
>             Project: Qpid
>          Issue Type: Sub-task
>          Components: Java Broker
>    Affects Versions: M4
>            Reporter: Martin Ritchie
>            Assignee: Martin Ritchie
>             Fix For: M5
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference counting in the Java broker has caused a number of problems. By consolidating it in the TransactionLog we can unit test it to validate its behaviour. 
> The reference counting updates are spread throughout the code base so there will be a bit of clean up required.

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


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org