AndreMiras / EtherollApp

Provably fair dice game running on the Ethereum blockchain
MIT License
57 stars 22 forks source link

Mainnet node down #111

Closed AndreMiras closed 6 years ago

AndreMiras commented 6 years ago

Cannot place bets on the Mainnet since the api.myetherapi.com we're using is down. See trace:

 Exception in thread Thread-5:
 Traceback (most recent call last):
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connection.py", line 171, in _new_conn
     (self._dns_host, self.port), self.timeout, **extra_kw)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/util/connection.py", line 56, in create_connection
     for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
   File "/usr/lib/python3.6/socket.py", line 745, in getaddrinfo
     for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
 socket.gaierror: [Errno -2] Name or service not known

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 600, in urlopen
     chunked=chunked)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 343, in _make_request
     self._validate_conn(conn)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 849, in _validate_conn
     conn.connect()
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connection.py", line 314, in connect
     conn = self._new_conn()
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connection.py", line 180, in _new_conn
     self, "Failed to establish a new connection: %s" % e)
 urllib3.exceptions.NewConnectionError: <urllib3.connection.VerifiedHTTPSConnection object at 0x7ff7e7d8ee48>: Failed to establish a new connection: [Errno -2] Name or service not known

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/requests/adapters.py", line 445, in send
     timeout=timeout
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/connectionpool.py", line 638, in urlopen
     _stacktrace=sys.exc_info()[2])
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/urllib3/util/retry.py", line 398, in increment
     raise MaxRetryError(_pool, url, error or ResponseError(cause))
 urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='api.myetherapi.com', port=443): Max retries exceeded with url: /eth (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7ff7e7d8ee48>: Failed to establish a new connection: [Errno -2] Name or service not known',))

 During handling of the above exception, another exception occurred:

 Traceback (most recent call last):
   File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
     self.run()
   File "/usr/lib/python3.6/threading.py", line 864, in run
     self._target(*self._args, **self._kwargs)
   File "/home/andre/workspace/EtherollApp/src/etheroll/controller.py", line 332, in player_roll_dice
     bet_size, chances, wallet_path, password, gas_price)
   File "/home/andre/workspace/EtherollApp/src/pyetheroll/etheroll.py", line 161, in player_roll_dice
     nonce = self.web3.eth.getTransactionCount(from_address_normalized)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/eth.py", line 203, in getTransactionCount
     block_identifier,
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/manager.py", line 101, in request_blocking
     response = self._make_request(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/manager.py", line 84, in _make_request
     return request_func(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/gas_price_strategy.py", line 18, in middleware
     return make_request(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/formatting.py", line 21, in middleware
     response = make_request(method, formatted_params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/attrdict.py", line 18, in middleware
     response = make_request(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/formatting.py", line 21, in middleware
     response = make_request(method, formatted_params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/validation.py", line 46, in middleware
     return make_request(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/formatting.py", line 21, in middleware
     response = make_request(method, formatted_params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/middleware/exception_retry_request.py", line 80, in middleware
     return make_request(method, params)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/providers/rpc.py", line 67, in make_request
     **self.get_request_kwargs()
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/web3/utils/request.py", line 21, in make_post_request
     response = session.post(endpoint_uri, data=data, *args, **kwargs)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/requests/sessions.py", line 559, in post
     return self.request('POST', url, data=data, json=json, **kwargs)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/requests/sessions.py", line 512, in request
     resp = self.send(prep, **send_kwargs)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/requests/sessions.py", line 622, in send
     r = adapter.send(request, **kwargs)
   File "/home/andre/workspace/EtherollApp/venv/lib/python3.6/site-packages/requests/adapters.py", line 513, in send
     raise ConnectionError(e, request=request)
 requests.exceptions.ConnectionError: HTTPSConnectionPool(host='api.myetherapi.com', port=443): Max retries exceeded with url: /eth (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7ff7e7d8ee48>: Failed to establish a new connection: [Errno -2] Name or service not known',))

[INFO   ] [Base        ] Leaving application in progress...

So not only it's down, but also it seems to fail silently in the thread. This exception should be caught somehow and returned to the UI.