summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-07-14 08:55:52 -0700
committerSage Weil <sage@inktank.com>2013-07-24 16:20:36 -0700
commit25f4786ac41869b3f135bd072000634765bb8919 (patch)
tree0814fb2f47c1971f484c13eaf41da7da92a71d6c
parent48105a32605aa59b6970eb89fce4ecc4201e8d04 (diff)
downloadceph-25f4786ac41869b3f135bd072000634765bb8919.tar.gz
msg/Pipe: be a bit more explicit about encoding outgoing messages
Signed-off-by: Sage Weil <sage@inktank.com> (cherry picked from commit 4282971d47b90484e681ff1a71ae29569dbd1d32)
-rw-r--r--src/msg/Pipe.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/msg/Pipe.cc b/src/msg/Pipe.cc
index 16b6de88502..3e2894bdf85 100644
--- a/src/msg/Pipe.cc
+++ b/src/msg/Pipe.cc
@@ -1517,10 +1517,16 @@ void Pipe::writer()
// associate message with Connection (for benefit of encode_payload)
m->set_connection(connection_state->get());
- ldout(msgr->cct,20) << "writer encoding " << m->get_seq() << " " << m << " " << *m << dendl;
+ uint64_t features = connection_state->get_features();
+ if (m->empty_payload())
+ ldout(msgr->cct,20) << "writer encoding " << m->get_seq() << " features " << features
+ << " " << m << " " << *m << dendl;
+ else
+ ldout(msgr->cct,20) << "writer half-reencoding " << m->get_seq() << " features " << features
+ << " " << m << " " << *m << dendl;
// encode and copy out of *m
- m->encode(connection_state->get_features(), !msgr->cct->_conf->ms_nocrc);
+ m->encode(features, !msgr->cct->_conf->ms_nocrc);
// prepare everything
ceph_msg_header& header = m->get_header();