ylq5126 opened a new issue, #29695: URL: https://github.com/apache/superset/issues/29695
### Bug description use redis to store session, server not start current ### How to reproduce the bug from docker file 4.0.2-dev config use SESSION_SERVER_SIDE = True SESSION_TYPE = "redis" SESSION_REDIS = Redis(host=REDIS_HOST, port=REDIS_PORT, db=REDIS_SESSION_DB, password=REDIS_PASS, charset="utf-8") in docker flask-session is 0.5.0  ### Screenshots/recordings superset-prod-01 | Exception on / [GET] superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2529, in wsgi_app superset-prod-01 | response = self.full_dispatch_request() superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1826, in full_dispatch_request superset-prod-01 | return self.finalize_request(rv) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | 2024-07-17 12:20:45,421:ERROR:superset.app:Exception on / [GET] superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2529, in wsgi_app superset-prod-01 | response = self.full_dispatch_request() superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1826, in full_dispatch_request superset-prod-01 | return self.finalize_request(rv) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | Request finalizing failed with an error while handling an error superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2529, in wsgi_app superset-prod-01 | response = self.full_dispatch_request() superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1826, in full_dispatch_request superset-prod-01 | return self.finalize_request(rv) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | superset-prod-01 | During handling of the above exception, another exception occurred: superset-prod-01 | superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | 2024-07-17 12:20:45,423:ERROR:superset.app:Request finalizing failed with an error while handling an error superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2529, in wsgi_app superset-prod-01 | response = self.full_dispatch_request() superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1826, in full_dispatch_request superset-prod-01 | return self.finalize_request(rv) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | superset-prod-01 | During handling of the above exception, another exception occurred: superset-prod-01 | superset-prod-01 | Traceback (most recent call last): superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 1847, in finalize_request superset-prod-01 | response = self.process_response(response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask/app.py", line 2344, in process_response superset-prod-01 | self.session_interface.save_session(self, ctx.session, response) superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/flask_session/sessions.py", line 164, in save_session superset-prod-01 | response.set_cookie(app.config["SESSION_COOKIE_NAME"], session_id, superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/sansio/response.py", line 224, in set_cookie superset-prod-01 | dump_cookie( superset-prod-01 | File "/usr/local/lib/python3.9/site-packages/werkzeug/http.py", line 1303, in dump_cookie superset-prod-01 | if not _cookie_no_quote_re.fullmatch(value): superset-prod-01 | TypeError: cannot use a string pattern on a bytes-like object superset-prod-01 | 10.100.138.2 - - [17/Jul/2024:12:20:45 +0000] "GET / HTTP/1.1" 500 332 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36" ### Superset version 4.0.2 ### Python version 3.9 ### Node version 16 ### Browser Chrome ### Additional context from werkzeug issue https://github.com/pallets/werkzeug/issues/2795 from flask-session Changes https://flask-session.readthedocs.io/en/latest/changes.html#id1 flask-session not supported werkzeug 3.0 when version less than 0.6.0 ### Checklist - [ ] I have searched Superset docs and Slack and didn't find a solution to my problem. - [ ] I have searched the GitHub issue tracker and didn't find a similar bug report. - [ ] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
