You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by as...@apache.org on 2019/07/19 19:30:26 UTC

[qpid-proton] branch master updated (a7ced83 -> 97b62d2)

This is an automated email from the ASF dual-hosted git repository.

astitcher pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-proton.git.


    from a7ced83  PROTON-2074: [C++] Improve list of url encoded characters - '%' characters in user/passwords would behave badly!
     new 2df4dc0  PROTON-2056: [Python] Ensure that sender auto settlement doesn't happen early - Only auto settle messages after receiving settlement from receiver
     new 1500219  PROTON-2061: [C++] Sender auto settlement should only happen after receiver settlement
     new f0ead48  PROTON-2062: [Ruby] Sender auto settlement should only happen after receiver settlement
     new 97b62d2  PROTON-2063: [go] Sender auto settlement should only happen after receiver settlement

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 cpp/src/messaging_adapter.cpp             | 21 +++++++++++----------
 go/src/qpid.apache.org/proton/handlers.go |  6 +++---
 python/proton/_handlers.py                |  4 ++--
 ruby/lib/handler/messaging_adapter.rb     |  6 ++++--
 4 files changed, 20 insertions(+), 17 deletions(-)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[qpid-proton] 02/04: PROTON-2061: [C++] Sender auto settlement should only happen after receiver settlement

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

astitcher pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-proton.git

commit 1500219ff197563def5bb60d196a10b9ffaaef6f
Author: Andrew Stitcher <as...@apache.org>
AuthorDate: Fri Jul 19 14:07:51 2019 -0400

    PROTON-2061: [C++] Sender auto settlement should only happen after receiver settlement
---
 cpp/src/messaging_adapter.cpp | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/cpp/src/messaging_adapter.cpp b/cpp/src/messaging_adapter.cpp
index a495f58..3cda8cd 100644
--- a/cpp/src/messaging_adapter.cpp
+++ b/cpp/src/messaging_adapter.cpp
@@ -154,25 +154,26 @@ void on_delivery(messaging_handler& handler, pn_event_t* event) {
         }
         credit_topup(lnk);
     } else {
-        tracker t(make_wrapper<tracker>(dlv));
         // sender
         if (pn_delivery_updated(dlv)) {
-            uint64_t rstate = pn_delivery_remote_state(dlv);
-            if (rstate == PN_ACCEPTED) {
+            tracker t(make_wrapper<tracker>(dlv));
+            switch(pn_delivery_remote_state(dlv)) {
+            case PN_ACCEPTED:
                 handler.on_tracker_accept(t);
-            }
-            else if (rstate == PN_REJECTED) {
+                break;
+            case PN_REJECTED:
                 handler.on_tracker_reject(t);
-            }
-            else if (rstate == PN_RELEASED || rstate == PN_MODIFIED) {
+                break;
+            case PN_RELEASED:
+            case PN_MODIFIED:
                 handler.on_tracker_release(t);
+                break;
             }
-
             if (t.settled()) {
                 handler.on_tracker_settle(t);
+                if (lctx.auto_settle)
+                    t.settle();
             }
-            if (lctx.auto_settle)
-                t.settle();
         }
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[qpid-proton] 01/04: PROTON-2056: [Python] Ensure that sender auto settlement doesn't happen early - Only auto settle messages after receiving settlement from receiver

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

astitcher pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-proton.git

commit 2df4dc0a58c235558c92a421e3e99b8629940179
Author: Andrew Stitcher <as...@apache.org>
AuthorDate: Fri Jul 19 13:59:46 2019 -0400

    PROTON-2056: [Python] Ensure that sender auto settlement doesn't happen early
    - Only auto settle messages after receiving settlement from receiver
---
 python/proton/_handlers.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/python/proton/_handlers.py b/python/proton/_handlers.py
index 8de0823..62b3dea 100644
--- a/python/proton/_handlers.py
+++ b/python/proton/_handlers.py
@@ -66,8 +66,8 @@ class OutgoingMessageHandler(Handler):
                 self.on_released(event)
             if dlv.settled:
                 self.on_settled(event)
-            if self.auto_settle:
-                dlv.settle()
+                if self.auto_settle:
+                    dlv.settle()
 
     def on_sendable(self, event):
         """


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[qpid-proton] 03/04: PROTON-2062: [Ruby] Sender auto settlement should only happen after receiver settlement

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

astitcher pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-proton.git

commit f0ead4862afd5bfb29bf1dbe914acd17de81287a
Author: Andrew Stitcher <as...@apache.org>
AuthorDate: Fri Jul 19 14:25:03 2019 -0400

    PROTON-2062: [Ruby] Sender auto settlement should only happen after receiver settlement
---
 ruby/lib/handler/messaging_adapter.rb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/ruby/lib/handler/messaging_adapter.rb b/ruby/lib/handler/messaging_adapter.rb
index ab7234b..acc25c0 100644
--- a/ruby/lib/handler/messaging_adapter.rb
+++ b/ruby/lib/handler/messaging_adapter.rb
@@ -124,8 +124,10 @@ module Qpid::Proton
           when Delivery::RELEASED then delegate(:on_tracker_release, t)
           when Delivery::MODIFIED then delegate(:on_tracker_modify, t)
           end
-          delegate(:on_tracker_settle, t) if t.settled?
-          t.settle if t.sender.auto_settle
+          if t.settled?
+            delegate(:on_tracker_settle, t)
+            t.settle if t.sender.auto_settle
+          end
         end
       end
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org


[qpid-proton] 04/04: PROTON-2063: [go] Sender auto settlement should only happen after receiver settlement

Posted by as...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

astitcher pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-proton.git

commit 97b62d2b7ce22c84e7d8db1ace8aa0355ea5fbe7
Author: Andrew Stitcher <as...@apache.org>
AuthorDate: Fri Jul 19 14:46:00 2019 -0400

    PROTON-2063: [go] Sender auto settlement should only happen after receiver settlement
---
 go/src/qpid.apache.org/proton/handlers.go | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/go/src/qpid.apache.org/proton/handlers.go b/go/src/qpid.apache.org/proton/handlers.go
index bbb5014..8549919 100644
--- a/go/src/qpid.apache.org/proton/handlers.go
+++ b/go/src/qpid.apache.org/proton/handlers.go
@@ -389,9 +389,9 @@ func (d *MessagingAdapter) outgoing(e Event) {
 		if delivery.Settled() {
 			// The delivery was settled remotely, inform the local end.
 			d.mhandler.HandleMessagingEvent(MSettled, e)
-		}
-		if d.AutoSettle {
-			delivery.Settle() // Local settle, don't mhandler MSettled till the remote end settles.
+			if d.AutoSettle {
+				delivery.Settle()
+			}
 		}
 	}
 	return


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org