diff options
author | dormando <dormando@rydia.net> | 2022-02-02 23:53:02 -0800 |
---|---|---|
committer | dormando <dormando@rydia.net> | 2022-02-04 13:56:25 -0800 |
commit | 838fda3fdacfd16511c24c5638b8e2de49224c39 (patch) | |
tree | a4eef5a0b02e87def76656a7b1ad19743864240f /proto_proxy.h | |
parent | f352f0e062abb2ac957829352a429076d6e30d2d (diff) | |
download | memcached-838fda3fdacfd16511c24c5638b8e2de49224c39.tar.gz |
proxy: fix bug/crash for set commands
if a conn goes to sleep while reading set data from the network its
coroutine would be lost, and crash/corruption on next resume.
this now properly handles lifetime/cleanup of the coroutine.
Diffstat (limited to 'proto_proxy.h')
-rw-r--r-- | proto_proxy.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/proto_proxy.h b/proto_proxy.h index 64d5759..6d42e24 100644 --- a/proto_proxy.h +++ b/proto_proxy.h @@ -7,6 +7,7 @@ void process_proxy_stats(ADD_STAT add_stats, conn *c); /* proxy mode handlers */ int try_read_command_proxy(conn *c); void complete_nread_proxy(conn *c); +void proxy_cleanup_conn(conn *c); void proxy_thread_init(LIBEVENT_THREAD *thr); void proxy_init(bool proxy_uring); // TODO: need better names or a better interface for these. can be confusing |