redis / redis-py

Redis Python client
MIT License
12.65k stars 2.52k forks source link

Getting error while doing handshake with redis- : OperationalError('Error 8 connecting to redis-host:port. EOF occurred in violation of protocol (_ssl.c:997).') #2396

Closed bhupendra069 closed 7 months ago

bhupendra069 commented 2 years ago

issue is with redis version 4.3.4. working fine with redis 4.1.4

python 3.10.6 on windows 10/PCF python buildpack 1.7.58 old buildpack 1.7.45

getting following error [ERR] [2022-09-19 11:15:55,281: CRITICAL/MainProcess] Unrecoverable error: OperationalError('Error 8 connecting to redis-server:10018. EOF occurred in violation of protocol (_ssl.c:997).') connection string:- CELERY_BROKER_URL = 'rediss://:password@Host:10018?ssl_cert_reqs=CERT_NONE'.

while trying same thing in local in window10 getting below error “kombu.exceptions.OperationalError: Error 2 connecting to redis-host:10018. No such file or directory”

We did try multiple workaround but nothing worked. unable to make cnnection to redis due to this issue

detail error: Internal Server Error: /APIOCModel/ Traceback (most recent call last): File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\utils\functional.py", line 30, in call return self.value AttributeError: 'ChannelPromise' object has no attribute 'value'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\transport\virtual\base.py", line 925, in create_channel return self._avail_channels.pop() IndexError: pop from empty list

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\connection.py", line 607, in connect sock = self.retry.call_with_retry( File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\retry.py", line 45, in call_with_retry return do() File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\connection.py", line 608, in lambda: self._connect(), lambda error: self.disconnect(error) File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\connection.py", line 991, in _connect sslsock = context.wrap_socket(sock, server_hostname=self.host) File "C:\Users\murard\AppData\Local\Programs\Python\Python310\lib\ssl.py", line 513, in wrap_socket return self.sslsocket_class._create( File "C:\Users\murard\AppData\Local\Programs\Python\Python310\lib\ssl.py", line 1071, in _create self.do_handshake() File "C:\Users\murard\AppData\Local\Programs\Python\Python310\lib\ssl.py", line 1342, in do_handshake self._sslobj.do_handshake() FileNotFoundError: [Errno 2] No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 446, in _reraise_as_library_errors yield File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 433, in _ensure_connection return retry_over_time( File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\utils\functional.py", line 312, in retry_over_time return fun(*args, kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 877, in _connection_factory self._connection = self._establish_connection() File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 812, in _establish_connection conn = self.transport.establish_connection() File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\transport\virtual\base.py", line 949, in establish_connection self._avail_channels.append(self.create_channel(self)) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\transport\virtual\base.py", line 927, in create_channel channel = self.Channel(connection) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\transport\redis.py", line 737, in init self.client.ping() File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\commands\core.py", line 954, in ping return self.execute_command("PING", kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\client.py", line 1173, in execute_command conn = self.connection or pool.get_connection(command_name, **options) File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\connection.py", line 1370, in get_connection connection.connect() File "C:\deepak\nexus\django\venv-django\lib\site-packages\redis\connection.py", line 613, in connect raise ConnectionError(self._error_message(e)) redis.exceptions.ConnectionError: Error 2 connecting to redis-10018.eredispaas05-prd.us.dell.com:10018. No such file or directory.

The above exception was the direct cause of the following exception:

code- _def create(self, request, *args, **kwargs):

    print("Data search API is called")

    print(request.data)

    handle_single_query.delay(request.data)

    return super().create(request, *args, **kwargs)

handle_single_query(decoded):

req_dict,email_dict =  parse_sqe(decoded)

query = full_query*****

report_id, email_dict = getOrderCodes(req_dict, email_dict,query)
print("Staring EmailSend")
sendAPISQEEmail(report_id, email_dict)_

Traceback (most recent call last): File "C:\deepak\nexus\django\venv-django\lib\site-packages\django\core\handlers\exception.py", line 55, in inner response = get_response(request) File "C:\deepak\nexus\django\venv-django\lib\site-packages\django\core\handlers\base.py", line 197, in _get_response response = wrapped_callback(request, *callback_args, callback_kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\django\views\decorators\csrf.py", line 54, in wrapped_view return view_func(*args, *kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\rest_framework\viewsets.py", line 125, in view return self.dispatch(request, args, kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\rest_framework\views.py", line 509, in dispatch response = self.handle_exception(exc) File "C:\deepak\nexus\django\venv-django\lib\site-packages\rest_framework\views.py", line 469, in handle_exception self.raise_uncaught_exception(exc) File "C:\deepak\nexus\django\venv-django\lib\site-packages\rest_framework\views.py", line 480, in raise_uncaught_exception raise exc File "C:\deepak\nexus\django\venv-django\lib\site-packages\rest_framework\views.py", line 506, in dispatch response = handler(request, args, kwargs) File "C:\deepak\nexus\django\goas_plus_poc\GoasScheduler\Scheduler\views.py", line 27, in create handle_oc_query.delay(request.data) File "C:\deepak\nexus\django\venv-django\lib\site-packages\celery\app\task.py", line 425, in delay return self.apply_async(args, kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\celery\app\task.py", line 575, in apply_async return app.send_task( File "C:\deepak\nexus\django\venv-django\lib\site-packages\celery\app\base.py", line 788, in send_task amqp.send_task_message(P, name, message, options) File "C:\deepak\nexus\django\venv-django\lib\site-packages\celery\app\amqp.py", line 510, in send_task_message ret = producer.publish( File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\messaging.py", line 177, in publish return _publish( File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 523, in _ensured return fun(args, kwargs) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\messaging.py", line 186, in _publish channel = self.channel File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\messaging.py", line 209, in _get_channel channel = self._channel = channel() File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\utils\functional.py", line 32, in call value = self.value = self.contract() File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\messaging.py", line 225, in channel = ChannelPromise(lambda: connection.default_channel) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 895, in default_channel self._ensure_connection(conn_opts) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 432, in _ensure_connection with ctx(): File "C:\Users\murard\AppData\Local\Programs\Python\Python310\lib\contextlib.py", line 153, in exit self.gen.throw(typ, value, traceback) File "C:\deepak\nexus\django\venv-django\lib\site-packages\kombu\connection.py", line 450, in _reraise_as_library_errors raise ConnectionError(str(exc)) from exc kombu.exceptions.OperationalError: Error 2 connecting to redis-host:10018. No such file or directory.

github-actions[bot] commented 8 months ago

This issue is marked stale. It will be closed in 30 days if it is not updated.