Code:
--> -->
DBInvalidArgError Python 2.4.5: /opt/bin/python2.4
Tue Jan 6 00:59:27 2009
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.
/opt/share/www/ctrl/proxymin.py
91 # call appropriate page
92 if(action == ACTION_SHOW_MAIN):
93 gui_main.print_main_page(category, letter, group)
94 elif(action == ACTION_DISPLAY_HELP):
95 gui_help.print_help_page()
gui_main = <module 'gui_main' from '/opt/share/www/ctrl/gui_main.py'>, gui_main.print_main_page = <function print_main_page>, category = 'groups', letter = None, group = None
/opt/share/www/ctrl/gui_main.py in print_main_page(category='groups', letter=None, group=None)
30 """display administration main page"""
31 gui_misc.print_html_head()
32 print_title_bar()
33 print '<br><br>'
34 print_tabs(category)
global print_title_bar = <function print_title_bar>
/opt/share/www/ctrl/gui_main.py in print_title_bar()
51 def print_title_bar():
52 # count all user/host/group objects
53 iterator = objectiterator.ObjectIterator(CATEGORY_HOSTS)
54 number_of_hosts = iterator.get_object_count()
55 iterator.set_category(CATEGORY_USERS)
iterator undefined, global objectiterator = <module 'objectiterator' from '/opt/share/www/ctrl/objectiterator.py'>, objectiterator.ObjectIterator = <class objectiterator.ObjectIterator>, global CATEGORY_HOSTS = 'hosts'
/opt/share/www/ctrl/objectiterator.py in __init__(self=<objectiterator.ObjectIterator instance>, category='hosts')
25 """uniform interface to access different object types - simplifies GUI programming"""
26 def __init__(self, category):
27 self.dba = dbaccess.DBAccess()
28 self.set_category(category)
29
self = <objectiterator.ObjectIterator instance>, self.dba undefined, global dbaccess = <module 'dbaccess' from '/opt/share/www/ctrl/dbaccess.py'>, dbaccess.DBAccess = <class dbaccess.DBAccess>
/opt/share/www/ctrl/dbaccess.py in __init__(self=<dbaccess.DBAccess instance>)
39 """persistence framework"""
40 def __init__(self):
41 self.users = shelve.open(userdb)
42 self.hosts = shelve.open(hostdb)
43 self.groups = shelve.open(groupdb)
self = <dbaccess.DBAccess instance>, self.users undefined, global shelve = <module 'shelve' from '/opt/lib/python2.4/shelve.pyc'>, shelve.open = <function open>, global userdb = 'db//users'
/opt/lib/python2.4/shelve.py in open(filename='db//users', flag='c', protocol=None, writeback=False, binary=None)
230
231 See the module's __doc__ string for an overview of the interface.
232 """
233
234 return DbfilenameShelf(filename, flag, protocol, writeback, binary)
global DbfilenameShelf = <class shelve.DbfilenameShelf>, filename = 'db//users', flag = 'c', protocol = None, writeback = False, binary = None
/opt/lib/python2.4/shelve.py in __init__(self=<DbfilenameShelf instance>, filename='db//users', flag='c', protocol=None, writeback=False, binary=None)
213 def __init__(self, filename, flag='c', protocol=None, writeback=False, binary=None):
214 import anydbm
215 Shelf.__init__(self, anydbm.open(filename, flag), protocol, writeback, binary)
216
217
global Shelf = <class shelve.Shelf>, Shelf.__init__ = <unbound method Shelf.__init__>, self = <DbfilenameShelf instance>, anydbm = <module 'anydbm' from '/opt/lib/python2.4/anydbm.pyc'>, anydbm.open = <function open>, filename = 'db//users', flag = 'c', protocol = None, writeback = False, binary = None
/opt/lib/python2.4/anydbm.py in open(file='db//users', flag='c', mode=438)
79 # db type cannot be determined
80 raise error, "db type could not be determined"
81 else:
82 mod = __import__(result)
83 return mod.open(file, flag, mode)
mod = <module 'dbhash' from '/opt/lib/python2.4/dbhash.pyc'>, mod.open = <function open>, file = 'db//users', flag = 'c', mode = 438
/opt/lib/python2.4/dbhash.py in open(file='db//users', flag='c', mode=438)
12
13 error = bsddb.error # Exported for anydbm
14
15 def open(file, flag = 'r', mode=0666):
16 return bsddb.hashopen(file, flag, mode)
global bsddb = <module 'bsddb' from '/opt/lib/python2.4/bsddb/__init__.pyc'>, bsddb.hashopen = <function hashopen>, file = 'db//users', flag = 'c', mode = 438
/opt/lib/python2.4/bsddb/__init__.py in hashopen(file='db//users', flag='c', mode=438, pgsize=None, ffactor=None, nelem=None, cachesize=None, lorder=None, hflags=0)
289
290 flags = _checkflag(flag, file)
291 e = _openDBEnv(cachesize)
292 d = db.DB(e)
293 d.set_flags(hflags)
e undefined, global _openDBEnv = <function _openDBEnv>, cachesize = None
/opt/lib/python2.4/bsddb/__init__.py in _openDBEnv(cachesize=None)
345 else:
346 raise error, "cachesize must be >= 20480"
347 e.open('.', db.DB_PRIVATE | db.DB_CREATE | db.DB_THREAD | db.DB_INIT_LOCK | db.DB_INIT_MPOOL)
348 return e
349
e = <DBEnv object>, e.open = <built-in method open of DBEnv object>, global db = <module '_bsddb' from '/opt/lib/python2.4/lib-dynload/_bsddb.so'>, db.DB_PRIVATE = 1048576, db.DB_CREATE = 1, db.DB_THREAD = 64, db.DB_INIT_LOCK = 8192, db.DB_INIT_MPOOL = 32768
DBInvalidArgError: (22, 'Invalid argument -- architecture lacks fast mutexes: applications cannot be threaded')
args = (22, 'Invalid argument -- architecture lacks fast mutexes: applications cannot be threaded')
Т.е. не поддерживаются какие то fast mutexes и поэтому proxymin не может открыть свою локальную базу данных.