}
std::for_each(msgs.begin(), msgs.begin()+num_msgs, [this, &bl](const MessageRef& msg) {
+ ceph_assert(!msg->get_seq() && "message already has seq");
msg->set_seq(++conn.out_seq);
auto& header = msg->get_header();
header.src = messenger.get_myname();
msg->encode(conn.features, 0);
+ ceph_assert(!msg->get_seq() && "message already has seq");
msg->set_seq(++conn.out_seq);
uint64_t ack_seq = conn.in_seq;
// ack_left = 0;
: public ceph::net::Dispatcher,
public seastar::peering_sharded_service<Server> {
ceph::net::Messenger *msgr = nullptr;
- MessageRef msg_pong{new MPing(), false};
ceph::auth::DummyAuthClientServer dummy_auth;
Dispatcher* get_local_shard() override {
logger().info("server got {}", *m);
}
// reply with a pong
- return c->send(msg_pong);
+ return c->send(make_message<MPing>());
}
seastar::future<> init(const entity_name_t& name,
ceph::net::Messenger *msgr = nullptr;
std::map<ceph::net::Connection*, seastar::promise<>> pending_conns;
std::map<ceph::net::Connection*, PingSessionRef> sessions;
- MessageRef msg_ping{new MPing(), false};
ceph::auth::DummyAuthClientServer dummy_auth;
Client(unsigned rounds, double keepalive_ratio)
seastar::stop_iteration::no);
});
} else {
- return conn->send(msg_ping)
+ return conn->send(make_message<MPing>())
.then([&count_ping] {
count_ping += 1;
return seastar::make_ready_future<seastar::stop_iteration>(