Discussion:
[jira] Created: (AMQNET-137) Add support for redelivery policy
Mark Keenan (JIRA)
2009-01-29 13:42:59 UTC
Permalink
Add support for redelivery policy
---------------------------------

Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ Client
Reporter: Mark Keenan
Assignee: Jim Gomes
Priority: Minor


It would be nice if we could set redelivery policy (similar to the Java client). See this ActiveMQ mailing list thread for details:

http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Jim Gomes (JIRA)
2009-01-29 16:54:59 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jim Gomes updated AMQNET-137:
-----------------------------

Affects Version/s: 1.1
Fix Version/s: 1.2
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ Client
Affects Versions: 1.1
Reporter: Mark Keenan
Assignee: Jim Gomes
Priority: Minor
Fix For: 1.2
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Allan Schrum (JIRA)
2009-02-05 20:21:59 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=49154#action_49154 ]

Allan Schrum commented on AMQNET-137:
-------------------------------------

Much of the supporting classes were added in support of the failover transport that would be needed to support this. State tracking, transacations, etc, so adding support for redelivery should be relatively easy. Failover uses these mechanisms to silently replay messages in the event of a transport failure. A similar process would be used to redeliver stuff to the client upon demand or rollback.

Before starting on this process, a clean review of the State (directory) code is in order.
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ Client
Affects Versions: 1.1
Reporter: Mark Keenan
Assignee: Jim Gomes
Priority: Minor
Fix For: 1.2
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Mark Gellings (JIRA)
2009-08-03 15:17:35 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mark Gellings updated AMQNET-137:
---------------------------------

Attachment: RedeliveryPolicyTest.cs
RedeliveryPolicy.cs

Attached is a RedeliveryPolicy class and tests that we are using for redelivery policy logic. The RedeliveryDelay method is a bit different than the java implementation as it takes in a redelivered counter.

We have integration tests as well. They are not attached as they use a framework that sits on top of ActiveMQ NMS. We can sort through them and code them so they are directly using ActiveMQ NMS if needed.
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ Client
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Jim Gomes
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Mark Gellings (JIRA)
2009-10-21 15:45:52 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=54878#action_54878 ]

Mark Gellings commented on AMQNET-137:
--------------------------------------

Regarding redelivery policy, currently client acknowledgement mode will not redeliver a message. There is no support of redeliveries. Would it be stretching NMS too far to allow to configure for a mode that "does" redeliver messages when the session is in client acknowledgement mode? If I understand correctly the redelivery logic is on the provider side and not the broker so perhaps this is possible. Straying too far from the java implementation wouldn't be a good thing though so would like everyone's opinion...

Here is a discussion in the forum regarding the situation.

http://www.nabble.com/Transactions-and-redelivery-td25915300.html

We have coded a solution to redelivery optimistically or pessimistically with client acknowledgement mode. Optimistic will redeliver immediately before processing additional messages in the queue (like transactional acknowledgement mode). The message will not get ack'd until it exhausts all possible redeliveries. Pessimistic will simply clone the message, placing it at the end of the queue, and ack the current message. It will embed some metadata into the message and only redeliver (clone the message) up to the max redelivery count on the redelivery policy.

Thoughts?
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Jim Gomes
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Timothy Bish (JIRA)
2009-10-28 12:49:52 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Timothy Bish reassigned AMQNET-137:
-----------------------------------

Assignee: Timothy Bish (was: Jim Gomes)
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Timothy Bish
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Timothy Bish (JIRA)
2009-10-29 22:34:53 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=55089#action_55089 ]

Timothy Bish commented on AMQNET-137:
-------------------------------------

I've committed my changes to add the Redelivery Policy to NMS and use it in NMS.ActiveMQ everything appears to be working am planning on more testing tomorrow.
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Timothy Bish
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Timothy Bish (JIRA)
2009-11-01 00:00:53 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Timothy Bish resolved AMQNET-137.
---------------------------------

Resolution: Fixed

Resolved in trunk.
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Timothy Bish
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Timothy Bish (JIRA)
2009-11-05 21:48:52 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=55182#action_55182 ]

Timothy Bish commented on AMQNET-137:
-------------------------------------

Mark

I've reviewed the discussion on the ClientAcknowledge redelivery and I don't really think we put something like this directly into NMS. The only logic for redelivery in NMS.ActiveMQ that happens on the client side is for Transacted sessions. Putting something like this Client Ack redelivery in something that seems better suited for a higher level. This seems more like something that would belong in a Camel.NET project than it does here as it sounds as if it could apply to all the NMS providers.
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Timothy Bish
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Mark Gellings (JIRA)
2009-11-05 22:58:53 UTC
Permalink
[ https://issues.apache.org/activemq/browse/AMQNET-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=55183#action_55183 ]

Mark Gellings commented on AMQNET-137:
--------------------------------------

That is fine Tim. For now we have it in our own framework resting on top of NMS ActiveMQ. Thanks for reviewing. :)
Post by Mark Keenan (JIRA)
Add support for redelivery policy
---------------------------------
Key: AMQNET-137
URL: https://issues.apache.org/activemq/browse/AMQNET-137
Project: ActiveMQ .Net
Issue Type: New Feature
Components: ActiveMQ
Affects Versions: 1.1.0
Reporter: Mark Keenan
Assignee: Timothy Bish
Priority: Minor
Fix For: 1.2.0
Attachments: RedeliveryPolicy.cs, RedeliveryPolicyTest.cs
http://www.nabble.com/configuring-redelivery-with-NMS-td21714808.html#a21717670
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
Loading...