rsmp 0.51.1 → 0.51.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/rsmp/node/supervisor/modules/connection.rb +10 -0
- data/lib/rsmp/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 883735d537c281828ffe79225cf667fef84b88e2055e39820cc4213168f715ec
|
|
4
|
+
data.tar.gz: 7c577e4ee8998cf1dbcb7308aa486122ba430d967375e4827030dd89c075f408
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ae9f566fd7a1f2bc9c16f59507abfd1becacb0326489fa5308363daaee89122cb32863cbabf187f033fa34d18dfb6648a6e9f1150678e1c32d60aaa2f898be55
|
|
7
|
+
data.tar.gz: 6c2348ed50374b5d9f1b1b99313420d3190c588ac70bb562815c0b418e46ebd697fcdf8f8809915392ad8f42f70f5637b7154eb33df40d9d6695ce52b25c131a
|
data/Gemfile.lock
CHANGED
|
@@ -147,12 +147,22 @@ module RSMP
|
|
|
147
147
|
end
|
|
148
148
|
|
|
149
149
|
def close(socket, info)
|
|
150
|
+
shutdown_socket(socket)
|
|
151
|
+
|
|
150
152
|
if info
|
|
151
153
|
log "Connection to #{format_ip_and_port(info)} closed", ip: info[:ip], level: :info, timestamp: Clock.now
|
|
152
154
|
else
|
|
153
155
|
log 'Connection closed', level: :info, timestamp: Clock.now
|
|
154
156
|
end
|
|
157
|
+
end
|
|
155
158
|
|
|
159
|
+
def shutdown_socket(socket)
|
|
160
|
+
# A reader may still be waiting on this socket during task cancellation.
|
|
161
|
+
# Explicitly shut down TCP before close so the peer sees EOF immediately.
|
|
162
|
+
socket.shutdown(Socket::SHUT_RDWR) unless socket.closed?
|
|
163
|
+
rescue Errno::ENOTCONN, Errno::ECONNRESET
|
|
164
|
+
# The peer has already disconnected; still release the local descriptor.
|
|
165
|
+
ensure
|
|
156
166
|
socket.close
|
|
157
167
|
end
|
|
158
168
|
end
|
data/lib/rsmp/version.rb
CHANGED