Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[APP SUBMITTED]: dbm.error: db type could not be determined #6804

Closed
Grahamvs opened this issue Jun 9, 2019 · 21 comments
Closed

[APP SUBMITTED]: dbm.error: db type could not be determined #6804

Grahamvs opened this issue Jun 9, 2019 · 21 comments
Labels
triage Untriaged issue

Comments

@Grahamvs
Copy link

Grahamvs commented Jun 9, 2019

INFO

Python Version: 3.7.1 (default, Oct 22 2018, 11:21:55) [GCC 8.2.0]
Operating System: Linux-4.14.120-160-armv7l-with-Ubuntu-18.04-bionic
Locale: UTF-8
Branch: master
Database: 44.14
Commit: 6a21a60
Link to Log: https://gist.github.com/8166b921b6df0d9554c1a3a515bf05d2

ERROR

2019-06-09 02:49:46 ERROR    TORNADO :: [6a21a60] Uncaught exception in APIv2: error('db type could not be determined')
Request: GET /medusa/api/v2/series/tvdb114801?detailed=false&fetch=true (127.0.0.1)
Traceback (most recent call last):
  File "/opt/medusa/ext/tornado/web.py", line 1592, in _execute
    result = yield result
  File "/opt/medusa/ext/tornado/gen.py", line 1133, in run
    value = future.result()
  File "/opt/medusa/ext/tornado/gen.py", line 1141, in run
    yielded = self.gen.throw(*exc_info)
  File "/opt/medusa/medusa/server/api/v2/base.py", line 64, in async_call
    content = yield IOLoop.current().run_in_executor(executor, prepared)
  File "/opt/medusa/ext/tornado/gen.py", line 1133, in run
    value = future.result()
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/medusa/medusa/server/api/v2/series.py", line 69, in get
    data = series.to_json(detailed=detailed, fetch=fetch)
  File "/opt/medusa/medusa/tv/series.py", line 2141, in to_json
    data['config']['release']['allgroups'] = get_release_groups_for_anime(self.name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1272, in get_or_create_for_user_func
    should_cache_fn, (arg, kw))
  File "/opt/medusa/ext/dogpile/cache/region.py", line 879, in get_or_create
    async_creator) as value:
  File "/opt/medusa/ext/dogpile/lock.py", line 186, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 86, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 826, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 220, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 215, in _dbm_file
    "w" if write else "r")
  File "/usr/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@triage-new-issues triage-new-issues bot added the triage Untriaged issue label Jun 9, 2019
@p0psicles
Copy link
Contributor

You switched from py2 to py3. Remove .dbm files in cache.

@Grahamvs
Copy link
Author

Grahamvs commented Jun 9, 2019

That worked, thank you :)

@SunMar
Copy link

SunMar commented Jul 17, 2019

INFO

Python Version: 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)]
Operating System: Windows-10-10.0.18362-SP0
Locale: cp1252
Branch: master
Database: 44.14
Commit: 74c3f12
Link to Log: https://gist.github.com/f5690a064e61a51fe56acaed4a7487dd

ERROR

2019-07-17 10:07:21 ERROR    TORNADO :: [74c3f12] Uncaught exception in APIv2: error('db type could not be determined')
Request: GET /api/v2/series/tvdb321285?detailed=false&fetch=true (192.168.23.50)
Traceback (most recent call last):
  File "D:\Programs\Medusa\Medusa\ext\tornado\web.py", line 1592, in _execute
    result = yield result
  File "D:\Programs\Medusa\Medusa\ext\tornado\gen.py", line 1133, in run
    value = future.result()
  File "D:\Programs\Medusa\Medusa\ext\tornado\gen.py", line 1141, in run
    yielded = self.gen.throw(*exc_info)
  File "D:\Programs\Medusa\Medusa\medusa\server\api\v2\base.py", line 64, in async_call
    content = yield IOLoop.current().run_in_executor(executor, prepared)
  File "D:\Programs\Medusa\Medusa\ext\tornado\gen.py", line 1133, in run
    value = future.result()
  File "C:\Program Files\Python37\lib\concurrent\futures\thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "D:\Programs\Medusa\Medusa\medusa\server\api\v2\series.py", line 69, in get
    data = series.to_json(detailed=detailed, fetch=fetch)
  File "D:\Programs\Medusa\Medusa\medusa\tv\series.py", line 2141, in to_json
    data['config']['release']['allgroups'] = get_release_groups_for_anime(self.name)
  File "", line 2, in get_release_groups_for_anime
  File "D:\Programs\Medusa\Medusa\ext\dogpile\cache\region.py", line 1272, in get_or_create_for_user_func
    should_cache_fn, (arg, kw))
  File "D:\Programs\Medusa\Medusa\ext\dogpile\cache\region.py", line 879, in get_or_create
    async_creator) as value:
  File "D:\Programs\Medusa\Medusa\ext\dogpile\lock.py", line 186, in __enter__
    return self._enter()
  File "D:\Programs\Medusa\Medusa\ext\dogpile\lock.py", line 86, in _enter
    value = value_fn()
  File "D:\Programs\Medusa\Medusa\ext\dogpile\cache\region.py", line 826, in get_value
    value = self.backend.get(key)
  File "D:\Programs\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 220, in get
    with self._dbm_file(False) as dbm:
  File "C:\Program Files\Python37\lib\contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "D:\Programs\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 215, in _dbm_file
    "w" if write else "r")
  File "C:\Program Files\Python37\lib\dbm\__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@SunMar
Copy link

SunMar commented Jul 17, 2019

Yup, same for me. Switching to Python 3 and removing the .dbm files resolved the issue.

@jordanfelle
Copy link

INFO

Python Version: 3.6.8 (default, Jan 14 2019, 11:02:34) [GCC 8.0.1 20180414 (experimental) [trunk revision 259383]]
Operating System: Linux-4.15.0-58-generic-x86_64-with-Ubuntu-18.04-bionic
Locale: UTF-8
Branch: master
Database: 44.14
Commit: 74c3f12
Link to Log: https://gist.github.com/65741cdf4aab54b837b3c4af09c82378

ERROR

2019-08-19 19:33:57 ERROR    TORNADO :: [74c3f12] Uncaught exception in APIv2: error('db type could not be determined',)
Request: GET /sickrage/api/v2/series/tvdb84576?detailed=false&fetch=true (127.0.0.1)
Traceback (most recent call last):
  File "/opt/medusa/ext/tornado/web.py", line 1592, in _execute
    result = yield result
  File "/opt/medusa/ext/tornado/gen.py", line 1133, in run
    value = future.result()
  File "/opt/medusa/ext/tornado/gen.py", line 1141, in run
    yielded = self.gen.throw(*exc_info)
  File "/opt/medusa/medusa/server/api/v2/base.py", line 64, in async_call
    content = yield IOLoop.current().run_in_executor(executor, prepared)
  File "/opt/medusa/ext/tornado/gen.py", line 1133, in run
    value = future.result()
  File "/usr/lib/python3.6/concurrent/futures/thread.py", line 56, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/medusa/medusa/server/api/v2/series.py", line 69, in get
    data = series.to_json(detailed=detailed, fetch=fetch)
  File "/opt/medusa/medusa/tv/series.py", line 2141, in to_json
    data['config']['release']['allgroups'] = get_release_groups_for_anime(self.name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1272, in get_or_create_for_user_func
    should_cache_fn, (arg, kw))
  File "/opt/medusa/ext/dogpile/cache/region.py", line 879, in get_or_create
    async_creator) as value:
  File "/opt/medusa/ext/dogpile/lock.py", line 186, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 86, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 826, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 220, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.6/contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 215, in _dbm_file
    "w" if write else "r")
  File "/usr/lib/python3.6/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@FilipFrancis
Copy link

INFO

Python Version: 3.5.3 (default, Sep 27 2018, 17:25:39) [GCC 6.3.0 20170516]
Operating System: Linux-4.4-x86_64-with-debian-9.11
Locale: UTF-8
Branch: master
Database: 44.14
Commit: 8b7f433
Link to Log: https://gist.github.com/c45c431c80dee22f72d982b0e73df1e2

ERROR

2019-12-10 17:55:28 ERROR    Thread-104 :: [8b7f433] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/Medusa/medusa/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/opt/Medusa/medusa/server/web/home/handler.py", line 1971, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/Medusa/ext/dogpile/cache/region.py", line 1272, in get_or_create_for_user_func
    should_cache_fn, (arg, kw))
  File "/opt/Medusa/ext/dogpile/cache/region.py", line 879, in get_or_create
    async_creator) as value:
  File "/opt/Medusa/ext/dogpile/lock.py", line 186, in __enter__
    return self._enter()
  File "/opt/Medusa/ext/dogpile/lock.py", line 86, in _enter
    value = value_fn()
  File "/opt/Medusa/ext/dogpile/cache/region.py", line 826, in get_value
    value = self.backend.get(key)
  File "/opt/Medusa/ext/dogpile/cache/backends/file.py", line 220, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.5/contextlib.py", line 59, in __enter__
    return next(self.gen)
  File "/opt/Medusa/ext/dogpile/cache/backends/file.py", line 215, in _dbm_file
    "w" if write else "r")
  File "/usr/lib/python3.5/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@zorrax2b
Copy link

zorrax2b commented Jan 3, 2020

INFO

Python Version: 3.5.3 (default, Sep 27 2018, 17:25:39) [GCC 6.3.0 20170516]
Operating System: Linux-3.16.0-9-amd64-x86_64-with-Debian-8
Locale: UTF-8
Branch: master
Database: 44.14
Commit: d0c136d
Link to Log: https://gist.github.com/7d97f46bf5686460ba71b798ae350bac

ERROR

2020-01-03 17:06:40 ERROR    Thread-56 :: [d0c136d] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/var/www/medusa/medusa/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/var/www/medusa/medusa/server/web/home/handler.py", line 1971, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/var/www/medusa/ext/dogpile/cache/region.py", line 1272, in get_or_create_for_user_func
    should_cache_fn, (arg, kw))
  File "/var/www/medusa/ext/dogpile/cache/region.py", line 879, in get_or_create
    async_creator) as value:
  File "/var/www/medusa/ext/dogpile/lock.py", line 186, in __enter__
    return self._enter()
  File "/var/www/medusa/ext/dogpile/lock.py", line 86, in _enter
    value = value_fn()
  File "/var/www/medusa/ext/dogpile/cache/region.py", line 826, in get_value
    value = self.backend.get(key)
  File "/var/www/medusa/ext/dogpile/cache/backends/file.py", line 220, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.5/contextlib.py", line 59, in __enter__
    return next(self.gen)
  File "/var/www/medusa/ext/dogpile/cache/backends/file.py", line 215, in _dbm_file
    "w" if write else "r")
  File "/usr/lib/python3.5/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@p0psicles
Copy link
Contributor

Stop medusa
Remove .dbm files in cache folder
Start

@thesugarat
Copy link

INFO

Python Version: 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
Operating System: Windows-10-10.0.18362-SP0
Locale: cp1252
Branch: master
Database: 44.15
Commit: 8f6b666
Link to Log: No Log available

ERROR

2020-04-15 09:31:20 ERROR    Thread_32 :: [8f6b666] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "C:\Medusa\Medusa\medusa\server\web\core\base.py", line 251, in async_call
    result = function(**kwargs)
  File "C:\Medusa\Medusa\medusa\server\web\home\handler.py", line 1971, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 962, in get_or_create
    async_creator,
  File "C:\Medusa\Medusa\ext\dogpile\lock.py", line 187, in __enter__
    return self._enter()
  File "C:\Medusa\Medusa\ext\dogpile\lock.py", line 87, in _enter
    value = value_fn()
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 902, in get_value
    value = self.backend.get(key)
  File "C:\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "C:\Medusa\Python\lib\contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "C:\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "C:\Medusa\Python\lib\dbm\__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@thesugarat
Copy link

My fault. Just found the fix above...

@VexingHex
Copy link

INFO

Python Version: 3.6.9 (default, Apr 18 2020, 01:56:04) [GCC 8.4.0]
Operating System: Linux-4.15.0-99-generic-x86_64-with-Ubuntu-18.04-bionic
Locale: UTF-8
Branch: master
Database: 44.15
Commit: d9c31da
Link to Log: https://gist.github.com/fe719d9ca962cbaf1f8a2dac722e69d7

ERROR

2020-07-03 15:37:42 ERROR    Thread_18 :: [d9c31da] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/**********/**********/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/opt/**********/**********/server/web/home/handler.py", line 1971, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/**********/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/**********/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/**********/ext/dogpile/lock.py", line 187, in __enter__
    return self._enter()
  File "/opt/**********/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/**********/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/**********/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.6/contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "/opt/**********/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/lib/python3.6/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@kiwicacid
Copy link

INFO

Python Version: 3.7.3 (default, Jul 25 2020, 13:03:44) [GCC 8.3.0]
Operating System: Linux-4.19.0-10-amd64-x86_64-with-debian-10.5
Locale: UTF-8
Branch: master
Database: 44.16
Commit: b352bb6
Link to Log: https://gist.github.com/e835fd8c90de8288f07a4dd8681eb0b5

ERROR

2020-10-06 21:43:12 ERROR    Thread_8 :: [b352bb6] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/medusa/medusa/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/opt/medusa/medusa/server/web/home/handler.py", line 1807, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/medusa/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/medusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@Maltoh
Copy link

Maltoh commented Oct 7, 2020

INFO

Python Version: 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
Operating System: Windows-10-10.0.19041-SP0
Locale: cp65001
Branch:
Database: 44.16
Commit: b352bb6
Link to Log: No Log available

ERROR

2020-10-07 19:01:38 ERROR    Thread_3 :: [b352bb6] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "C:\Medusa\Medusa\medusa\server\web\core\base.py", line 251, in async_call
    result = function(**kwargs)
  File "C:\Medusa\Medusa\medusa\server\web\home\handler.py", line 1807, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 962, in get_or_create
    async_creator,
  File "C:\Medusa\Medusa\ext\dogpile\lock.py", line 185, in __enter__
    return self._enter()
  File "C:\Medusa\Medusa\ext\dogpile\lock.py", line 87, in _enter
    value = value_fn()
  File "C:\Medusa\Medusa\ext\dogpile\cache\region.py", line 902, in get_value
    value = self.backend.get(key)
  File "C:\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "C:\Medusa\Python\lib\contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "C:\Medusa\Medusa\ext\dogpile\cache\backends\file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "C:\Medusa\Python\lib\dbm\__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@kiwicacid
Copy link

INFO

Python Version: 3.7.3 (default, Jul 25 2020, 13:03:44) [GCC 8.3.0]
Operating System: Linux-4.19.0-10-amd64-x86_64-with-debian-10.5
Locale: UTF-8
Branch: master
Database: 44.16
Commit: b352bb6
Link to Log: https://gist.github.com/1e308283693209034c1185e408a738ce

ERROR

2020-10-09 18:53:26 ERROR    Thread_5 :: [b352bb6] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/medusa/medusa/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/opt/medusa/medusa/server/web/home/handler.py", line 1807, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/medusa/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/medusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@kiwicacid
Copy link

INFO

Python Version: 3.7.3 (default, Jul 25 2020, 13:03:44) [GCC 8.3.0]
Operating System: Linux-4.19.0-10-amd64-x86_64-with-debian-10.5
Locale: UTF-8
Branch: master
Database: 44.16
Commit: b352bb6
Link to Log: https://gist.github.com/9fefc11c8eee62d773da1ce78ff88f93

ERROR

2020-10-12 17:48:28 ERROR    Thread_12 :: [b352bb6] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/medusa/medusa/server/web/core/base.py", line 251, in async_call
    result = function(**kwargs)
  File "/opt/medusa/medusa/server/web/home/handler.py", line 1807, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/medusa/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/medusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@al31nosok
Copy link

INFO

Python Version: 3.6.9 (default, Oct 8 2020, 12:12:24) [GCC 8.4.0]
Operating System: Linux-4.15.0-117-generic-x86_64-with-Ubuntu-18.04-bionic
Locale: UTF-8
Branch: master
Database: 44.17
Commit: 552f119
Link to Log: https://gist.github.com/682fffe7d846b9a16852230d1ef194e3

ERROR

2020-11-08 18:59:08 ERROR    Thread_0 :: [552f119] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/home/hd29/**********/apps/medusa/medusa/server/web/core/base.py", line 252, in async_call
    result = function(**kwargs)
  File "/home/hd29/**********/apps/medusa/medusa/server/web/home/handler.py", line 1640, in manualSearchSubtitles
    found_subtitles = subtitles.list_subtitles(tv_episode=ep_obj, video_path=video_path)
  File "/home/hd29/**********/apps/medusa/medusa/subtitles.py", line 342, in list_subtitles
    cache.set(subtitle_key.format(id=subtitle.id).encode('utf-8'), subtitle)
  File "/home/hd29/**********/apps/medusa/ext/dogpile/cache/region.py", line 1112, in set
    self.backend.set(key, self._value(value))
  File "/home/hd29/**********/apps/medusa/ext/dogpile/cache/backends/file.py", line 240, in set
    with self._dbm_file(True) as dbm:
  File "/usr/lib/python3.6/contextlib.py", line 81, in __enter__
    return next(self.gen)
  File "/home/hd29/**********/apps/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/lib/python3.6/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@cilise
Copy link

cilise commented Dec 9, 2020

INFO

Python Version: 3.7.5 (default, May 27 2020, 17:34:04) [GCC 6.3.0 20170516]
Operating System: Linux-4.9.0-12-amd64-x86_64-with-debian-9.13
Locale: UTF-8
Branch: master
Database: 44.17
Commit: ce68da5
Link to Log: https://gist.github.com/95608a31d0863cc8171d562ec61fd4bf

ERROR

2020-12-09 03:19:28 ERROR    Thread_1 :: [ce68da5] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/medusa/medusa/server/web/core/base.py", line 252, in async_call
    result = function(**kwargs)
  File "/opt/medusa/medusa/server/web/home/handler.py", line 1792, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/medusa/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/medusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/local/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/local/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@cilise
Copy link

cilise commented Dec 15, 2020

INFO

Python Version: 3.7.5 (default, May 27 2020, 17:34:04) [GCC 6.3.0 20170516]
Operating System: Linux-4.9.0-12-amd64-x86_64-with-debian-9.13
Locale: UTF-8
Branch: master
Database: 44.17
Commit: ce68da5
Link to Log: https://gist.github.com/aa30b4d14e8079289365eff9a1a7daae

ERROR

2020-12-15 03:05:25 ERROR    Thread_0 :: [ce68da5] Exception generated: db type could not be determined
Traceback (most recent call last):
  File "/opt/medusa/medusa/server/web/core/base.py", line 252, in async_call
    result = function(**kwargs)
  File "/opt/medusa/medusa/server/web/home/handler.py", line 1792, in fetch_releasegroups
    groups = get_release_groups_for_anime(series_name)
  File "", line 2, in get_release_groups_for_anime
  File "/opt/medusa/ext/dogpile/cache/region.py", line 1360, in get_or_create_for_user_func
    key, user_func, timeout, should_cache_fn, (arg, kw)
  File "/opt/medusa/ext/dogpile/cache/region.py", line 962, in get_or_create
    async_creator,
  File "/opt/medusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/opt/medusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/opt/medusa/ext/dogpile/cache/region.py", line 902, in get_value
    value = self.backend.get(key)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 223, in get
    with self._dbm_file(False) as dbm:
  File "/usr/local/lib/python3.7/contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "/opt/medusa/ext/dogpile/cache/backends/file.py", line 218, in _dbm_file
    dbm = self.dbmmodule.open(self.filename, "w" if write else "r")
  File "/usr/local/lib/python3.7/dbm/__init__.py", line 88, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

STAFF NOTIFIED: @pymedusa/support @pymedusa/moderators

@p0psicles
Copy link
Contributor

#6804 (comment)

@bobpaul
Copy link

bobpaul commented Dec 28, 2021

So it makes sense to me that this would happen when switching from Python 2.7 to Python 3.x. And it's reasonable that, in that case, there's no automatic migration or anything to take care of this. Python 2 -> 3 is a big transition. But I've been on Python 3.x since the AUR package transitioned (v0.3.1?) and this issue just appeared after updating from 3.9.9 to 3.10.1.

Perhaps that exception should be caught and the dmb file deleted. Since this is a scheduled task it should be re-created when the backlog runs again, right?

2021-12-28 02:30:08 WARNING	GENERICQUEUESCHEDULER-UPDATE-RECOMMENDED-ANILIST :: [94fae84] Could not parse AniDB show, with exception: Traceback (most recent call last):
  File "/usr/lib/pymedusa/medusa/show/recommendations/anilist.py", line 95, in fetch_popular_shows
    recommended_show = self._create_recommended_show(show)
  File "</usr/lib/pymedusa/ext/decorator.py:decorator-gen-52>", line 2, in _create_recommended_show
  File "/usr/lib/pymedusa/ext/dogpile/cache/region.py", line 1577, in get_or_create_for_user_func
    return self.get_or_create(
  File "/usr/lib/pymedusa/ext/dogpile/cache/region.py", line 1042, in get_or_create
    with Lock(
  File "/usr/lib/pymedusa/ext/dogpile/lock.py", line 185, in __enter__
    return self._enter()
  File "/usr/lib/pymedusa/ext/dogpile/lock.py", line 87, in _enter
    value = value_fn()
  File "/usr/lib/pymedusa/ext/dogpile/cache/region.py", line 977, in get_value
    value = self._get_from_backend(key)
  File "/usr/lib/pymedusa/ext/dogpile/cache/region.py", line 1265, in _get_from_backend
    self.backend.get_serialized(key)
  File "/usr/lib/pymedusa/ext/dogpile/cache/backends/file.py", line 217, in get_serialized
    with self._dbm_file(False) as dbm_obj:
  File "/usr/lib/python3.10/contextlib.py", line 135, in __enter__
    return next(self.gen)
  File "/usr/lib/pymedusa/ext/dogpile/cache/backends/file.py", line 213, in _dbm_file
    with dbm.open(self.filename, "w" if write else "r") as dbm_obj:
  File "/usr/lib/python3.10/dbm/__init__.py", line 89, in open
    raise error[0]("db type could not be determined")
dbm.error: db type could not be determined

@AshleyYakeley
Copy link

Remove .dbm files in cache.

Shouldn't Medusa do this automatically? Medusa created those files, it's responsible for them, then all of a sudden it thinks they're broken?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage Untriaged issue
Projects
None yet
Development

No branches or pull requests