although remote has closed the connection
Fixes: https://tracker.ceph.com/issues/46332
Signed-off-by: Mark Kogan <mkogan@redhat.com>
yield[ec]);
if (ec) {
ldout(cct, 4) << "write_data failed: " << ec.message() << dendl;
+ if (ec==boost::asio::error::broken_pipe) {
+ boost::system::error_code ec_ignored;
+ stream.lowest_layer().shutdown(tcp::socket::shutdown_both, ec_ignored);
+ }
throw rgw::io::Exception(ec.value(), std::system_category());
}
return bytes;