rage-iodine 2.2.0 → 2.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/iodine/fio.c +9 -3
- data/lib/iodine/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0c7dd77022028a6bdd65a929622793240c5c6d844ed91b46741a7964ef8b734b
|
4
|
+
data.tar.gz: a03c8b323b45d88304cb628201bce9a90d8eb31263b0bc7ebf303beb09c2ce25
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e5d438ae9a488b9d814b43bb915adb2035bf64f094740d8ead2ef4a402f3e095ac894e50608bba819e7bb5abc26c8aff1cfe902022cebb8deb165976ff1095f3
|
7
|
+
data.tar.gz: fc9ae3246f6226feafca77dc6c0d52d73629c107daea5fffaa95bb89cfe4775b522d8222f90336e8dcc4e30a794a678a0dab316ebcb564c28d932107d485ede5
|
data/ext/iodine/fio.c
CHANGED
@@ -2051,7 +2051,7 @@ static size_t fio_poll(void) {
|
|
2051
2051
|
epoll_wait(internal[j].data.fd, events, FIO_POLL_MAX_EVENTS, 0);
|
2052
2052
|
if (active_count > 0) {
|
2053
2053
|
for (int i = 0; i < active_count; i++) {
|
2054
|
-
if (events[i].events & (~(EPOLLIN | EPOLLOUT))) {
|
2054
|
+
if (events[i].events & (~(EPOLLIN | EPOLLOUT | EPOLLHUP | EPOLLRDHUP))) {
|
2055
2055
|
// errors are hendled as disconnections (on_close)
|
2056
2056
|
fio_force_close_in_poll(fd2uuid(events[i].data.fd));
|
2057
2057
|
} else {
|
@@ -2060,9 +2060,14 @@ static size_t fio_poll(void) {
|
|
2060
2060
|
fio_defer_push_urgent(deferred_on_ready,
|
2061
2061
|
(void *)fd2uuid(events[i].data.fd), NULL);
|
2062
2062
|
}
|
2063
|
-
if (events[i].events & EPOLLIN)
|
2063
|
+
if (events[i].events & EPOLLIN) {
|
2064
2064
|
fio_defer_push_task(deferred_on_data,
|
2065
2065
|
(void *)fd2uuid(events[i].data.fd), NULL);
|
2066
|
+
}
|
2067
|
+
if (events[i].events & (EPOLLHUP | EPOLLRDHUP)) {
|
2068
|
+
fio_defer_push_task(fio_force_close_in_poll,
|
2069
|
+
(void *)fd2uuid(events[i].data.fd), NULL);
|
2070
|
+
}
|
2066
2071
|
}
|
2067
2072
|
} // end for loop
|
2068
2073
|
total += active_count;
|
@@ -2197,7 +2202,8 @@ static size_t fio_poll(void) {
|
|
2197
2202
|
NULL);
|
2198
2203
|
}
|
2199
2204
|
if (events[i].flags & (EV_EOF | EV_ERROR)) {
|
2200
|
-
fio_force_close_in_poll
|
2205
|
+
fio_defer_push_task(fio_force_close_in_poll,
|
2206
|
+
(void *)fd2uuid(events[i].udata), NULL);
|
2201
2207
|
}
|
2202
2208
|
}
|
2203
2209
|
} else if (active_count < 0) {
|
data/lib/iodine/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rage-iodine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Boaz Segev
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11-
|
11
|
+
date: 2023-11-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|