grs commented on a change in pull request #1129: URL: https://github.com/apache/qpid-dispatch/pull/1129#discussion_r615089829
########## File path: src/adaptors/tcp_adaptor.c ########## @@ -288,18 +338,87 @@ static int handle_incoming_impl(qdr_tcp_connection_t *conn, bool close_pending) qd_message_set_q2_unblocked_handler(msg, qdr_tcp_q2_unblocked_handler, conn_sp); conn->instream = qdr_link_deliver(conn->incoming, msg, 0, false, 0, 0, 0, 0); - qd_log(tcp_adaptor->log_source, QD_LOG_DEBUG, "[C%"PRIu64"][L%"PRIu64"] Initiating message with %i bytes", conn->conn_id, conn->incoming_id, count); + qd_log(log, QD_LOG_DEBUG, + "[C%"PRIu64"][L%"PRIu64"][D%"PRIu64"] Initiating ingress stream message with %u bytes", + conn->conn_id, conn->incoming_id, conn->instream->delivery_id, length); + conn->incoming_started = true; + + // Handle deferment of write side close. + sys_mutex_lock(conn->activation_lock); + if (conn->read_eos_seen && !conn->raw_closed_write) { + // to-raw-conn EOS was seen before the from-raw-conn instream delivery existed. Review comment: That sounds like the problem is that we handle CLOSED_WRITE by closing the whole connection, rather than simply relaying what the two endpoints themselves do. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org