ig3 commented on issue #3976: URL: https://github.com/apache/couchdb/issues/3976#issuecomment-1093065906
No, my server does not completely die. I am able to continue sending requests. I don't notice any unaccepted requests but there is no load on the server, just my testing. I am running a single node. There are four processes running: ``` couchdb 108694 1 3 Mar29 ? 09:07:04 /home/couchdb/couchdb/bin/../erts-11.1.8/bin/beam.smp -K true -A 16 -Bd -- -root /home/couchdb/couchdb/bin/.. -progname couchdb -- -home /home/couchdb -- -boot /home/couchdb/couchdb/bin/../releases/3.2.0/couchdb -name [email protected] -setcookie monster -kernel error_logger silent -sasl sasl_error_logger false -noshell -noinput -smp enable -ssl session_lifetime 300 -- -config /home/couchdb/couchdb/bin/../releases/3.2.0/sys.config -- couchdb 108724 108694 0 Mar29 ? 00:00:00 erl_child_setup 65536 couchdb 121212 108724 0 Mar29 ? 00:00:00 inet_gethost 4 couchdb 121213 121212 0 Mar29 ? 00:00:00 inet_gethost 4 couchdb 128655 108724 0 Mar30 ? 00:00:00 ./bin/couchjs ./share/server/main.js ``` After the 'CRASH', there is no change to the set of processes. Whatever is crashing, it is internal to CouchDB and not manifest at the operating system level as a process terminating and a new process being started. My clients do not see a reply. For example, the tests with curl produce: ``` * Trying ::1:5984... * connect to ::1 port 5984 failed: Connection refused * Trying 127.0.0.1:5984... * Connected to localhost (127.0.0.1) port 5984 (#0) > GET /test HTTP/1.1 > Host: localhost:5984 > User-Agent: curl/7.74.0 > Accept: application/json > Content-Type: application/json; charset=utf-8 > Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImZvbyJ9.eyJraWQiOiJmb28iLCJzdWIiOiJhZG1pbiIsIm5hbWUiOiJhZG1pbiIsInJvbGVzIjpbInRlc3QxIiwidGVzdDIiXX0=.xftH2byj7LV9/YqqacmyZfcxQt+/h0etsgtRj6aL4AE= > * Empty reply from server * Connection #0 to host localhost left intact curl: (52) Empty reply from server ``` At the network layer I see: ``` No. Time Source Destination Protocol Length Info 1 0.000000000 ::1 ::1 TCP 94 39212 → 5984 [SYN] Seq=0 Win=65476 Len=0 MSS=65476 SACK_PERM=1 TSval=3974581731 TSecr=0 WS=128 2 0.000004993 ::1 ::1 TCP 74 5984 → 39212 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0 3 0.000057414 127.0.0.1 127.0.0.1 TCP 74 58268 → 5984 [SYN] Seq=0 Win=65495 Len=0 MSS=65495 SACK_PERM=1 TSval=3683328382 TSecr=0 WS=128 4 0.000063329 127.0.0.1 127.0.0.1 TCP 74 5984 → 58268 [SYN, ACK] Seq=0 Ack=1 Win=65483 Len=0 MSS=65495 SACK_PERM=1 TSval=3683328382 TSecr=3683328382 WS=128 5 0.000068053 127.0.0.1 127.0.0.1 TCP 66 58268 → 5984 [ACK] Seq=1 Ack=1 Win=65536 Len=0 TSval=3683328382 TSecr=3683328382 6 0.000123111 127.0.0.1 127.0.0.1 HTTP 422 GET /test HTTP/1.1 7 0.000141033 127.0.0.1 127.0.0.1 TCP 66 5984 → 58268 [ACK] Seq=1 Ack=357 Win=65152 Len=0 TSval=3683328382 TSecr=3683328382 8 0.000641134 127.0.0.1 127.0.0.1 TCP 66 5984 → 58268 [FIN, ACK] Seq=1 Ack=357 Win=65536 Len=0 TSval=3683328383 TSecr=3683328382 9 0.000779854 127.0.0.1 127.0.0.1 TCP 66 58268 → 5984 [FIN, ACK] Seq=357 Ack=2 Win=65536 Len=0 TSval=3683328383 TSecr=3683328383 10 0.000785487 127.0.0.1 127.0.0.1 TCP 66 5984 → 58268 [ACK] Seq=2 Ack=358 Win=65536 Len=0 TSval=3683328383 TSecr=3683328383 ``` So the TCP connection is promptly reset by the server, without sending any response. But I am able to send another request immediately after: ``` $ bash testLocal.sh; bash testLocal.sh * Trying ::1:5984... * connect to ::1 port 5984 failed: Connection refused * Trying 127.0.0.1:5984... * Connected to localhost (127.0.0.1) port 5984 (#0) > GET /test HTTP/1.1 > Host: localhost:5984 > User-Agent: curl/7.74.0 > Accept: application/json > Content-Type: application/json; charset=utf-8 > Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImZvbyJ9.eyJraWQiOiJmb28iLCJzdWIiOiJhZG1pbiIsIm5hbWUiOiJhZG1pbiIsInJvbGVzIjpbInRlc3QxIiwidGVzdDIiXX0=.xftH2byj7LV9/YqqacmyZfcxQt+/h0etsgtRj6aL4AE= > * Empty reply from server * Connection #0 to host localhost left intact curl: (52) Empty reply from server * Trying ::1:5984... * connect to ::1 port 5984 failed: Connection refused * Trying 127.0.0.1:5984... * Connected to localhost (127.0.0.1) port 5984 (#0) > GET /test HTTP/1.1 > Host: localhost:5984 > User-Agent: curl/7.74.0 > Accept: application/json > Content-Type: application/json; charset=utf-8 > Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImZvbyJ9.eyJraWQiOiJmb28iLCJzdWIiOiJhZG1pbiIsIm5hbWUiOiJhZG1pbiIsInJvbGVzIjpbInRlc3QxIiwidGVzdDIiXX0=.xftH2byj7LV9/YqqacmyZfcxQt+/h0etsgtRj6aL4AE= > * Empty reply from server * Connection #0 to host localhost left intact curl: (52) Empty reply from server ``` That second request is not really immediately after, but as fast as my system can run a bash shell and instance of curl. The script has nothing in it but the curl command. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
