@@ -433,8 +433,7 @@ defmodule Postgrex.Protocol do
433433 handle_execute_copy ( query , params , opts , s )
434434
435435 false ->
436- result = handle_execute_result ( query , params , opts , s )
437- handle_disconnect_retry ( result )
436+ handle_execute_result ( query , params , opts , s )
438437 end
439438 end
440439
@@ -2126,8 +2125,8 @@ defmodule Postgrex.Protocol do
21262125 msg_sync ( )
21272126 ]
21282127
2129- with :ok <- msg_send ( % { s | buffer: nil } , msgs , buffer ) ,
2130- { :ok , s , buffer } <- recv_bind ( s , status , buffer ) ,
2128+ with :ok <- msg_send ( % { s | buffer: nil } , msgs , buffer ) |> handle_disconnect_retry ( ) ,
2129+ { :ok , s , buffer } <- recv_bind ( s , status , buffer ) |> handle_disconnect_retry ( ) ,
21312130 { :ok , result , s , buffer } <- recv_execute ( s , status , query , buffer ) ,
21322131 { :ok , s , buffer } <- recv_close ( s , status , buffer ) ,
21332132 { :ok , s } <- recv_ready ( s , status , buffer ) do
@@ -2137,7 +2136,7 @@ defmodule Postgrex.Protocol do
21372136 error_ready ( s , status , err , buffer )
21382137 |> maybe_disconnect ( )
21392138
2140- { :disconnect , _err , _s } = disconnect ->
2139+ { _disconnect_or_retry , _err , _s } = disconnect ->
21412140 disconnect
21422141 end
21432142 end
@@ -2163,8 +2162,8 @@ defmodule Postgrex.Protocol do
21632162 msg_sync ( )
21642163 ]
21652164
2166- with :ok <- msg_send ( % { s | buffer: nil } , msgs , buffer ) ,
2167- { :ok , s , buffer } <- recv_bind ( s , status , buffer ) ,
2165+ with :ok <- msg_send ( % { s | buffer: nil } , msgs , buffer ) |> handle_disconnect_retry ( ) ,
2166+ { :ok , s , buffer } <- recv_bind ( s , status , buffer ) |> handle_disconnect_retry ( ) ,
21682167 { :ok , result , s , buffer } <- recv_execute ( s , status , query , buffer ) ,
21692168 { :ok , s } <- recv_ready ( s , status , buffer ) do
21702169 { :ok , query , result , s }
@@ -2175,7 +2174,7 @@ defmodule Postgrex.Protocol do
21752174 error_ready ( s , status , err , buffer )
21762175 |> maybe_disconnect ( )
21772176
2178- { :disconnect , _err , _s } = disconnect ->
2177+ { _disconnect_or_retry , _err , _s } = disconnect ->
21792178 disconnect
21802179 end
21812180 end
@@ -2317,9 +2316,7 @@ defmodule Postgrex.Protocol do
23172316 recv_execute ( s , status , query , rows , buffer )
23182317
23192318 { :disconnect , _ , _ } = dis ->
2320- with { _ , % { reason: :closed } = err , s } <- dis do
2321- { :disconnect , % { err | reason: :execute_closed } , s }
2322- end
2319+ dis
23232320 end
23242321 end
23252322
0 commit comments