bazarr
bazarr copied to clipboard
Error 500 when saving a language profile
Describe the bug I am getting an error 500 when adding a language profile
To Reproduce Steps to reproduce the behavior:
- Go to 'settings > languages'
- Add language englisth languages filter
- click on 'add new profile'
- click on 'add language'
- select english, enable HI
- click on the save button save
- scroll to the top and click on the save button
- See error
Exception on /api/system/settings [POST]:
Traceback (most recent call last):
File "/opt/bazarr/bazarr/../libs/flask/app.py", line 1516, in full_dispatch_request
rv = self.dispatch_request()
File "/opt/bazarr/bazarr/../libs/flask/app.py", line 1502, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/opt/bazarr/bazarr/../libs/flask_restful/__init__.py", line 467, in wrapper
resp = resource(*args, **kwargs)
File "/opt/bazarr/bazarr/../libs/flask/views.py", line 84, in view
return current_app.ensure_sync(self.dispatch_request)(*args, **kwargs)
File "/opt/bazarr/bazarr/../libs/flask_restful/__init__.py", line 582, in dispatch_request
resp = meth(*args, **kwargs)
File "/opt/bazarr/bazarr/api/utils.py", line 30, in wrapper
return actual_method(*args, **kwargs)
File "/opt/bazarr/bazarr/api/system/settings.py", line 55, in post
for item in json.loads(languages_profiles):
File "/usr/lib/python3.9/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.9/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.9/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
Software (please complete the following information):
- Bazarr: v1.1.0
- OS: Debian GNU/Linux 11 (bullseye)
Try to disable your ads blocker.
I had the same issue, using private window (which disable ads blocker) solve it for me.
No news, good news.
worked like a charm, ty
Thank you guys! This worked for me too.
FYI. The same issue appears in yesterday's version (1.1.2). I need to downgrade to 1.1.1 and problem disappear. Log from docker:
bazarr | 2022-10-16 14:24:23,205 - app.app (7f1503454b38) : ERROR (app:1457) -
Exception on /api/system/settings [POST]
FYI. The same issue appears in yesterday's version (1.1.2).
Can you share the full exception trace?
Also, what browser (and version) do you use?
Chrome, FF. Also in private mode. Debug:
bazarr | 2022-10-16 18:02:01,886 - peewee (7f0171827b38) : DEBUG (peewee:3148) - ('SELECT "t1"."profileId" FROM
"table_languages_profiles" AS "t1"', [])
bazarr | 2022-10-16 18:02:01,898 - app.app (7f0171827b38) : ERROR (app:1457) - Exception on /api/system/settings
[POST]
bazarr | Traceback (most recent call last):
bazarr | File "/app/bin/bazarr/../libs/flask/app.py", line 1516, in full_dispatch_request
bazarr | rv = self.dispatch_request()
bazarr | File "/app/bin/bazarr/../libs/flask/app.py", line 1502, in dispatch_request
bazarr | return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
bazarr | File "/app/bin/bazarr/../libs/flask_restx/api.py", line 403, in wrapper
bazarr | resp = resource(*args, **kwargs)
bazarr | File "/app/bin/bazarr/../libs/flask/views.py", line 84, in view
bazarr | return current_app.ensure_sync(self.dispatch_request)(*args, **kwargs)
bazarr | File "/app/bin/bazarr/../libs/flask_restx/resource.py", line 49, in dispatch_request
bazarr | resp = meth(*args, **kwargs)
bazarr | File "/app/bin/bazarr/api/utils.py", line 30, in wrapper
bazarr | return actual_method(*args, **kwargs)
bazarr | File "/app/bin/bazarr/api/system/settings.py", line 59, in post
bazarr | for item in json.loads(languages_profiles):
bazarr | File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
bazarr | return _default_decoder.decode(s)
bazarr | File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
bazarr | obj, end = self.raw_decode(s, idx=_w(s, 0).end())
bazarr | File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
bazarr | raise JSONDecodeError("Expecting value", s, err.value) from None
bazarr | json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
@GetoXs are you accessing Bazarr through a reverse proxy?
No, directly http://127.0.0.1:6767/
@GetoXs can you provide the paylod from the request returning a 500 http error?
Multipart:
------WebKitFormBoundary6jr4BAhBqbpuslwQ
Content-Disposition: form-data; name="settings-general-serie_default_enabled"
true
------WebKitFormBoundary6jr4BAhBqbpuslwQ
Content-Disposition: form-data; name="languages-profiles"
[object Object]
------WebKitFormBoundary6jr4BAhBqbpuslwQ
Content-Disposition: form-data; name="languages-profiles"
[object Object]
------WebKitFormBoundary6jr4BAhBqbpuslwQ--
FUll request
curl 'http://127.0.0.1:6767/api/system/settings' \
-H 'Accept: application/json, text/plain, */*' \
-H 'Accept-Language: pl-PL,pl;q=0.9,en-GB;q=0.8,en;q=0.7,en-US;q=0.6' \
-H 'Cache-Control: no-cache' \
-H 'Connection: keep-alive' \
-H 'Content-Type: multipart/form-data; boundary=----WebKitFormBoundary6jr4BAhBqbpuslwQ' \
-H 'DNT: 1' \
-H 'Origin: http://127.0.0.1:6767' \
-H 'Pragma: no-cache' \
-H 'Referer: http://127.0.0.1:6767/settings/languages' \
-H 'Sec-Fetch-Dest: empty' \
-H 'Sec-Fetch-Mode: cors' \
-H 'Sec-Fetch-Site: same-origin' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36' \
-H 'X-API-KEY: XXXXXXX' \
-H 'sec-ch-ua: "Chromium";v="106", "Google Chrome";v="106", "Not;A=Brand";v="99"' \
-H 'sec-ch-ua-mobile: ?0' \
-H 'sec-ch-ua-platform: "Windows"' \
--data-raw $'------WebKitFormBoundary6jr4BAhBqbpuslwQ\r\nContent-Disposition: form-data; name="settings-general-serie_default_enabled"\r\n\r\ntrue\r\n------WebKitFormBoundary6jr4BAhBqbpuslwQ\r\nContent-Disposition: form-data; name="languages-profiles"\r\n\r\n[object Object]\r\n------WebKitFormBoundary6jr4BAhBqbpuslwQ\r\nContent-Disposition: form-data; name="languages-profiles"\r\n\r\n[object Object]\r\n------WebKitFormBoundary6jr4BAhBqbpuslwQ--\r\n' \
--compressed
The view I'm trying to save
@LASER-Yi any idea why the frontend try to send to backend JavaScript object instead of serialized JSON?
Some users have reported that it works on mobile browser where all desktop browser failed.
Some users have reported that it works on mobile browser where all desktop browser failed.
Just tried it on a mobile browser, per your suggestion, and can confirm it allowed me to create language profiles.
Some users have reported that it works on mobile browser where all desktop browser failed.
Can confirm this works on Firefox android 106.1.0, but not in Firefox windows 10 106.0.1
I submitted a fix which should fix this issue. Can you guys help me verify on your side? The fix should be available in the next upcoming beta version
I can confirm it works.
I am unfortunately still getting the error. I tested version v1.1.3-beta.6 on Debian 11 natively and Firefox 106.0.1. I disabled all the add-ons and tried a private window but without much luck.
Here's the debug log. Is there more information that you can use?
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,586 - peewee.sqliteq (7f21aba13700) : DEBUG (sqliteq:176) - received query UPDATE "table_settings_languages" SET "enabled" = ?
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,587 - peewee (7f21aba13700) : DEBUG (peewee:3148) - ('UPDATE "table_settings_languages" SET "enabled" = ?', [0])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,649 - peewee.sqliteq (7f21aba13700) : DEBUG (sqliteq:176) - received query UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,650 - peewee (7f21aba13700) : DEBUG (peewee:3148) - ('UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)', [1, 'bs'])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,738 - peewee.sqliteq (7f21aba13700) : DEBUG (sqliteq:176) - received query UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,739 - peewee (7f21aba13700) : DEBUG (peewee:3148) - ('UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)', [1, 'hr'])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,794 - peewee.sqliteq (7f21aba13700) : DEBUG (sqliteq:176) - received query UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,795 - peewee (7f21aba13700) : DEBUG (peewee:3148) - ('UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)', [1, 'sr'])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,849 - peewee.sqliteq (7f21aba13700) : DEBUG (sqliteq:176) - received query UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,850 - peewee (7f21aba13700) : DEBUG (peewee:3148) - ('UPDATE "table_settings_languages" SET "enabled" = ? WHERE ("table_settings_languages"."code2" = ?)', [1, 'en'])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,904 - socketio.server (7f2118ff9700) : INFO (server:310) - emitting event "data" to all [/]
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,905 - engineio.server (7f2118ff9700) : INFO (socket:89) - WAd3vekBNxdAEP7vAAAA: Sending packet MESSAGE data 2["data",{"type":"languages","action":"update","payload":null}]
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,908 - peewee (7f2118ff9700) : DEBUG (peewee:3148) - ('SELECT "t1"."profileId" FROM "table_languages_profiles" AS "t1"', [])
Oct 25 17:01:12 masina-s bazarr[24159]: 2022-10-25 17:01:12,913 - app.app (7f2118ff9700) : ERROR (app:1457) - Exception on /bazarr/api/system/settings [POST]
Oct 25 17:01:12 masina-s bazarr[24159]: Traceback (most recent call last):
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/../libs/flask/app.py", line 1516, in full_dispatch_request
Oct 25 17:01:12 masina-s bazarr[24159]: rv = self.dispatch_request()
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/../libs/flask/app.py", line 1502, in dispatch_request
Oct 25 17:01:12 masina-s bazarr[24159]: return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/../libs/flask_restx/api.py", line 403, in wrapper
Oct 25 17:01:12 masina-s bazarr[24159]: resp = resource(*args, **kwargs)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/../libs/flask/views.py", line 84, in view
Oct 25 17:01:12 masina-s bazarr[24159]: return current_app.ensure_sync(self.dispatch_request)(*args, **kwargs)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/../libs/flask_restx/resource.py", line 49, in dispatch_request
Oct 25 17:01:12 masina-s bazarr[24159]: resp = meth(*args, **kwargs)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/api/utils.py", line 30, in wrapper
Oct 25 17:01:12 masina-s bazarr[24159]: return actual_method(*args, **kwargs)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/bazarr/bazarr/api/system/settings.py", line 59, in post
Oct 25 17:01:12 masina-s bazarr[24159]: for item in json.loads(languages_profiles):
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/python3.9/json/__init__.py", line 346, in loads
Oct 25 17:01:12 masina-s bazarr[24159]: return _default_decoder.decode(s)
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/python3.9/json/decoder.py", line 337, in decode
Oct 25 17:01:12 masina-s bazarr[24159]: obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Oct 25 17:01:12 masina-s bazarr[24159]: File "/usr/lib/python3.9/json/decoder.py", line 355, in raw_decode
Oct 25 17:01:12 masina-s bazarr[24159]: raise JSONDecodeError("Expecting value", s, err.value) from None
Oct 25 17:01:12 masina-s bazarr[24159]: json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
Oct 25 17:01:13 masina-s bazarr[24159]: 2022-10-25 17:01:13,123 - peewee (7f2117ff7700) : DEBUG (peewee:3148) - ('SELECT "t1"."name", "t1"."code2", "t1"."enabled" FROM "table_settings_languages" AS "t1" ORDER BY "t1"."name"', [])
Oct 25 17:01:19 masina-s bazarr[24159]: 2022-10-25 17:01:19,769 - engineio.server (7f20f6fb5700) : INFO (socket:89) - WAd3vekBNxdAEP7vAAAA: Sending packet PING data None
Oct 25 17:01:19 masina-s bazarr[24159]: 2022-10-25 17:01:19,831 - engineio.server (7f21177f6700) : INFO (socket:52) - WAd3vekBNxdAEP7vAAAA: Received packet PONG data
Please reverify on the next beta version
Still getting the same error it seems. Version v1.1.3-beta.7:
Oct 26 17:52:26 masina-s bazarr[30664]: 2022-10-26 17:52:26,442 - peewee (7f07c67fc700) : DEBUG (peewee:3148) - ('SELECT "t1"."profileId" FROM "table_languages_profiles" AS "t1"', [])
Oct 26 17:52:26 masina-s bazarr[30664]: 2022-10-26 17:52:26,447 - app.app (7f07c67fc700) : ERROR (app:1457) - Exception on /bazarr/api/system/settings [POST]
Oct 26 17:52:26 masina-s bazarr[30664]: Traceback (most recent call last):
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/../libs/flask/app.py", line 1516, in full_dispatch_request
Oct 26 17:52:26 masina-s bazarr[30664]: rv = self.dispatch_request()
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/../libs/flask/app.py", line 1502, in dispatch_request
Oct 26 17:52:26 masina-s bazarr[30664]: return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/../libs/flask_restx/api.py", line 403, in wrapper
Oct 26 17:52:26 masina-s bazarr[30664]: resp = resource(*args, **kwargs)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/../libs/flask/views.py", line 84, in view
Oct 26 17:52:26 masina-s bazarr[30664]: return current_app.ensure_sync(self.dispatch_request)(*args, **kwargs)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/../libs/flask_restx/resource.py", line 49, in dispatch_request
Oct 26 17:52:26 masina-s bazarr[30664]: resp = meth(*args, **kwargs)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/api/utils.py", line 30, in wrapper
Oct 26 17:52:26 masina-s bazarr[30664]: return actual_method(*args, **kwargs)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/bazarr/bazarr/api/system/settings.py", line 59, in post
Oct 26 17:52:26 masina-s bazarr[30664]: for item in json.loads(languages_profiles):
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/python3.9/json/__init__.py", line 346, in loads
Oct 26 17:52:26 masina-s bazarr[30664]: return _default_decoder.decode(s)
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/python3.9/json/decoder.py", line 337, in decode
Oct 26 17:52:26 masina-s bazarr[30664]: obj, end = self.raw_decode(s, idx=_w(s, 0).end())
Oct 26 17:52:26 masina-s bazarr[30664]: File "/usr/lib/python3.9/json/decoder.py", line 355, in raw_decode
Oct 26 17:52:26 masina-s bazarr[30664]: raise JSONDecodeError("Expecting value", s, err.value) from None
Oct 26 17:52:26 masina-s bazarr[30664]: json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
I just upgraded the upstream packages to latest, please check the upcoming beta version
Do you mean v1.1.3-beta.9 or will there be another one? Because I can't see any relevant commits for this in beta.9. But I tested it just in case and the error is still there (same error above).
Using development-version-v1.1.3-beta.11, the problem still exists.
The serialization of 'language-profiles' seems to be the culprit.
using development 1.1.3-beta.15 the problem still exists. Using incognito browsers Chrome, Edge and FireFox.
Traceback (most recent call last):
File "/app/bazarr/bin/bazarr/../libs/flask/app.py", line 1820, in full_dispatch_request
rv = self.dispatch_request()
File "/app/bazarr/bin/bazarr/../libs/flask/app.py", line 1796, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
File "/app/bazarr/bin/bazarr/../libs/flask_restx/api.py", line 405, in wrapper
resp = resource(*args, **kwargs)
File "/app/bazarr/bin/bazarr/../libs/flask/views.py", line 107, in view
return current_app.ensure_sync(self.dispatch_request)(**kwargs)
File "/app/bazarr/bin/bazarr/../libs/flask_restx/resource.py", line 46, in dispatch_request
resp = meth(*args, **kwargs)
File "/app/bazarr/bin/bazarr/api/utils.py", line 30, in wrapper
return actual_method(*args, **kwargs)
File "/app/bazarr/bin/bazarr/api/system/settings.py", line 59, in post
for item in json.loads(languages_profiles):
File "/usr/lib/python3.10/json/__init__.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.10/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.10/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 2 (char 1)
Can confirm that this is working when using a mobile device, not sure what the difference is but as a workaround, use your mobile devices.
Similar error in "Movies blacklist" and still not working on mobile device
Similar error in "Movies blacklist" and still not working on mobile device
That's a different issue already fixed in dev branch.
Confirmed - just spent an hour resetting this up on my desktop. Odd bug :) I see it's already fixed in devbranch .. thanks!