softcite / software_mentions_client

A Python client for the Softcite software mention recognizer server
Apache License 2.0
6 stars 3 forks source link

client outputs text saying processing is occurring, even when server crashes #5

Open jameshowison opened 1 year ago

jameshowison commented 1 year ago

In setup for screenit the client (both commandline and via Python calls) continues to output text as though processing is occurring, even when the server crashes.

From client (where the 1454 number continues to rise, even after server crashes)

root ➜ /workspaces (main) $ python3 -m software_mentions_client.client --repo-in data/ --config config/config-client.json --reprocess
logs are written in client.log
total reprocess: 1454 - accumulated runtime: 23.893 s - 60.85 files/s  

---
total entries: 2975
---
total successfully processed: 46
---
total failed: 2929
---

From Server:

screenit-softcite-server_software_mentions-1  | 172.19.0.2 - - [28/Jul/2023:16:29:11 +0000] "GET /service/isalive HTTP/1.1" 200 4 "-" "python-requests/2.31.0" 427
screenit-softcite-server_software_mentions-1  | INFO  [2023-07-28 16:29:13,215] org.grobid.core.jni.DeLFTModel: Loading DeLFT model for software with architecture BERT...
screenit-softcite-server_software_mentions-1  | INFO  [2023-07-28 16:29:13,225] org.grobid.core.jni.JEPThreadPool: Creating JEP instance for thread 34
screenit-softcite-server_software_mentions-1  | The TensorFlow library was compiled to use AVX instructions, but these aren't available on your machine.
screenit-softcite-server_software_mentions-1  | 
screenit-softcite-server_software_mentions-1  | 
screenit-softcite-server_software_mentions-1  | qemu: uncaught target signal 6 (Aborted) - core dumped
screenit-softcite-server_software_mentions-1  | Aborted
screenit-softcite-server_software_mentions-1 exited with code 134

Client is definitely talking to that server. I think once a disconnect failure occurs, some number of re-tries should occur, then it should quit (or at least ask if the server is still live?).

Client.log is very long, but starts with

INFO:root:blacklist size: 533
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): server_software_mentions:8060
DEBUG:urllib3.connectionpool:http://server_software_mentions:8060 "GET /service/isalive HTTP/1.1" 200 4
INFO:root:Softcite software mention server is up and running
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): server_software_mentions:8060
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): server_software_mentions:8060
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): server_software_mentions:8060
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): server_software_mentions:8060
ERROR:root:The request failed
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 714, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 466, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 461, in _make_request
    httplib_response = conn.getresponse()
  File "/usr/local/lib/python3.10/http/client.py", line 1375, in getresponse
    response.begin()
  File "/usr/local/lib/python3.10/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.10/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 798, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/local/lib/python3.10/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 714, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 466, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 461, in _make_request
    httplib_response = conn.getresponse()
  File "/usr/local/lib/python3.10/http/client.py", line 1375, in getresponse
    response.begin()
  File "/usr/local/lib/python3.10/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.10/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/software_mentions_client/client.py", line 498, in annotate
    response = requests.post(url, files=the_file, data = {'disambiguate': 1}, timeout=self.config["timeout"])
  File "/usr/local/lib/python3.10/site-packages/requests/api.py", line 115, in post
    return request("post", url, data=data, json=json, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
ERROR:root:The request failed
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 714, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 466, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 461, in _make_request
    httplib_response = conn.getresponse()
  File "/usr/local/lib/python3.10/http/client.py", line 1375, in getresponse
    response.begin()
  File "/usr/local/lib/python3.10/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.10/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
http.client.RemoteDisconnected: Remote end closed connection without response

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 798, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/retry.py", line 550, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/local/lib/python3.10/site-packages/urllib3/packages/six.py", line 769, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 714, in urlopen
   httplib_response = self._make_request(
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 466, in _make_request
    six.raise_from(e, None)
  File "<string>", line 3, in raise_from
  File "/usr/local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 461, in _make_request
    httplib_response = conn.getresponse()
  File "/usr/local/lib/python3.10/http/client.py", line 1375, in getresponse
    response.begin()
  File "/usr/local/lib/python3.10/http/client.py", line 318, in begin
    version, status, reason = self._read_status()
  File "/usr/local/lib/python3.10/http/client.py", line 287, in _read_status
    raise RemoteDisconnected("Remote end closed connection without"
urllib3.exceptions.ProtocolError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/software_mentions_client/client.py", line 498, in annotate
    response = requests.post(url, files=the_file, data = {'disambiguate': 1}, timeout=self.config["timeout"])
  File "/usr/local/lib/python3.10/site-packages/requests/api.py", line 115, in post
    return request("post", url, data=data, json=json, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/requests/adapters.py", line 501, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
ERROR:root:The request failed

And that repeats.