Bug Fixes
-
Log spam from missing
/proc/net/tcp6when IPv6 disabled.get_socket_states_countfailed entirely if any of the three /proc files was absent, logging errors every 15 seconds and losing tcp/unix metrics that were available. Missing files are now skipped — counters stay at zero. Other I/O errors (permission denied) still propagate. -
Protocol violation when streaming large DataRow with cached prepared statements.
handle_large_data_rowwrote accumulated protocol messages (BindComplete, RowDescription) directly to the client socket, bypassingreorder_parse_complete_responses. When Parse was skipped (prepared statement cache hit), the client received BindComplete without the synthetic ParseComplete — causingReceived backend message BindComplete while expecting ParseCompleteMessagein Npgsql and similar drivers. Triggered whenmessage_size_to_be_stream≤ 64KB. Fixed by returning accumulated messages fromrecv()before entering the streaming path, so response reordering runs first. Same fix applied tohandle_large_copy_data.