I''im using Django 1.3 with Djcelery and Djkombu on Windows7. When I'm
running a task, I alwalys get the following error saying the database
is locked and then the djcelery process quits:

[2011-05-07 09:44:05,319: INFO/MainProcess] Got task from broker:
app_wb.tasks.task_fetch_user_followers[c057ae92-8b98-468f-96fb-
cd7695e1495f]
[2011-05-07 09:44:20,385: WARNING/MainProcess] Traceback (most recent
call last):
[2011-05-07 09:44:20,387: WARNING/MainProcess] File "D:\CodeBase\qjj
\project_qjj\manage.py", line 14, in <module>
[2011-05-07 09:44:20,387: WARNING/MainProcess]
execute_manager(settings)
[2011-05-07 09:44:20,388: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\core\management\__init__.py", line 438, in
execute_manager
[2011-05-07 09:44:20,390: WARNING/MainProcess] utility.execute()
[2011-05-07 09:44:20,390: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\core\management\__init__.py", line 379, in
execute
[2011-05-07 09:44:20,391: WARNING/MainProcess]
self.fetch_command(subcommand).run_from_argv(self.argv)
[2011-05-07 09:44:20,391: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\core\management\base.py", line 191, in
run_from_argv
[2011-05-07 09:44:20,392: WARNING/MainProcess] self.execute(*args,
**options.__dict__)
[2011-05-07 09:44:20,394: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\core\management\base.py", line 220, in execute
[2011-05-07 09:44:20,394: WARNING/MainProcess] output =
self.handle(*args, **options)
[2011-05-07 09:44:20,394: WARNING/MainProcess] File "c:\python25\lib
\site-packages\django_celery-2.2.4-py2.5.egg\djcelery\management
\commands\celeryd.py", line 21, in handle
[2011-05-07 09:44:20,394: WARNING/MainProcess] worker.run(*args,
**options)
[2011-05-07 09:44:20,395: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\bin\celeryd.py", line 96,
in run
[2011-05-07 09:44:20,395: WARNING/MainProcess] return
self.app.Worker(**kwargs).run()
[2011-05-07 09:44:20,397: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\apps\worker.py", line
135, in run
[2011-05-07 09:44:20,397: WARNING/MainProcess] self.run_worker()
[2011-05-07 09:44:20,398: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\apps\worker.py", line
235, in run_worker
[2011-05-07 09:44:20,398: WARNING/MainProcess] worker.start()
[2011-05-07 09:44:20,398: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\worker\__init__.py", line
250, in start
[2011-05-07 09:44:20,401: WARNING/MainProcess]
blocking(component.start)
[2011-05-07 09:44:20,401: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\syn.py", line 14, in
blocking
[2011-05-07 09:44:20,401: WARNING/MainProcess] return
__sync_current(fun, *args, **kwargs)
[2011-05-07 09:44:20,401: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\syn.py", line 30, in
__blocking__
[2011-05-07 09:44:20,401: WARNING/MainProcess] return fun(*args,
**kwargs)
[2011-05-07 09:44:20,403: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\worker\consumer.py", line
275, in start
[2011-05-07 09:44:20,404: WARNING/MainProcess] self.consume_messages()
[2011-05-07 09:44:20,404: WARNING/MainProcess] File "c:\python25\lib
\site-packages\celery-2.2.5-py2.5.egg\celery\worker\consumer.py", line
291, in consume_messages
[2011-05-07 09:44:20,404: WARNING/MainProcess]
self.connection.drain_events()
[2011-05-07 09:44:20,405: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\connection.py", line 121,
in drain_events
[2011-05-07 09:44:20,405: WARNING/MainProcess] return
self.transport.drain_events(self.connection, **kwargs)
[2011-05-07 09:44:20,407: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\__init__.py", line 603, in drain_events
[2011-05-07 09:44:20,407: WARNING/MainProcess] item, channel =
self.cycle.get(timeout=timeout)
[2011-05-07 09:44:20,407: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\scheduling.py", line 40, in get
[2011-05-07 09:44:20,407: WARNING/MainProcess] return
self.fun(resource, **kwargs), resource
[2011-05-07 09:44:20,407: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\__init__.py", line 622, in _drain_channel
[2011-05-07 09:44:20,410: WARNING/MainProcess] return
channel.drain_events(timeout=timeout)
[2011-05-07 09:44:20,410: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\__init__.py", line 454, in drain_events
[2011-05-07 09:44:20,411: WARNING/MainProcess] return
self._poll(self.cycle, timeout=timeout)
[2011-05-07 09:44:20,411: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\__init__.py", line 245, in _poll
[2011-05-07 09:44:20,411: WARNING/MainProcess] return cycle.get()
[2011-05-07 09:44:20,411: WARNING/MainProcess] File "c:\python25\lib
\site-packages\kombu-1.0.7-py2.5.egg\kombu\transport\virtual
\scheduling.py", line 40, in get
[2011-05-07 09:44:20,411: WARNING/MainProcess] return
self.fun(resource, **kwargs), resource
[2011-05-07 09:44:20,411: WARNING/MainProcess] File "c:\python25\lib
\site-packages\django_kombu-0.9.2-py2.5.egg\djkombu\transport.py",
line 30, in _get
[2011-05-07 09:44:20,411: WARNING/MainProcess] m =
Queue.objects.fetch(queue)
[2011-05-07 09:44:20,411: WARNING/MainProcess] File "c:\python25\lib
\site-packages\django_kombu-0.9.2-py2.5.egg\djkombu\managers.py", line
18, in fetch
[2011-05-07 09:44:20,413: WARNING/MainProcess] queue =
self.get(name=queue_name)
[2011-05-07 09:44:20,413: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\manager.py", line 132, in get
[2011-05-07 09:44:20,413: WARNING/MainProcess] return
self.get_query_set().get(*args, **kwargs)
[2011-05-07 09:44:20,413: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\query.py", line 344, in get
[2011-05-07 09:44:20,414: WARNING/MainProcess] num = len(clone)
[2011-05-07 09:44:20,414: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\query.py", line 82, in __len__
[2011-05-07 09:44:20,414: WARNING/MainProcess] self._result_cache =
list(self.iterator())
[2011-05-07 09:44:20,414: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\query.py", line 273, in iterator
[2011-05-07 09:44:20,414: WARNING/MainProcess] for row in
compiler.results_iter():
[2011-05-07 09:44:20,415: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\sql\compiler.py", line 680, in
results_iter
[2011-05-07 09:44:20,417: WARNING/MainProcess] for rows in
self.execute_sql(MULTI):
[2011-05-07 09:44:20,417: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\models\sql\compiler.py", line 735, in
execute_sql
[2011-05-07 09:44:20,420: WARNING/MainProcess] cursor.execute(sql,
params)
[2011-05-07 09:44:20,420: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\backends\util.py", line 34, in execute
[2011-05-07 09:44:20,420: WARNING/MainProcess] return
self.cursor.execute(sql, params)
[2011-05-07 09:44:20,420: WARNING/MainProcess] File "C:\Python25\Lib
\site-packages\django\db\backends\sqlite3\base.py", line 234, in
execute
[2011-05-07 09:44:20,421: WARNING/MainProcess] return
Database.Cursor.execute(self, query, params)
[2011-05-07 09:44:20,421: WARNING/MainProcess] django.db.utils
[2011-05-07 09:44:20,421: WARNING/MainProcess] .
[2011-05-07 09:44:20,421: WARNING/MainProcess] DatabaseError
[2011-05-07 09:44:20,421: WARNING/MainProcess] :
[2011-05-07 09:44:20,421: WARNING/MainProcess] database is locked
[2011-05-07 09:44:20,421: INFO/MainProcess] process shutting down

However, not all tasks fail. I succeeded in another task.

I'm using the same sqlite3 db for both Django and Djcelery. And my
celery starts with the following log:
[2011-05-07 09:42:24,780: WARNING/MainProcess] --------------
celery@robert-win7 v2.2.5
---- **** -----
--- * ***  * -- [Configuration]
-- * - **** ---   . broker:      djkombu.transport.DatabaseTransport://
guest@localhost0/
- ** ----------   . loader:      djcelery.loaders.DjangoLoader
- ** ----------   . logfile:     D:\CodeBase\qjj\project_qjj
\djcelery.log@INFO
- ** ----------   . concurrency: 1
- ** ----------   . events:      OFF
- *** --- * ---   . beat:        OFF
-- ******* ----
--- ***** ----- [Queues]
 --------------   . celery:      exchange:celery (direct)
binding:celery

and my config for djcelery in settings.py is:
djcelery.setup_loader()
BROKER_BACKEND = 'djkombu.transport.DatabaseTransport'
CELERY_RESULT_BACKEND = 'database'
CELERYD_CONCURRENCY = 1
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'
CELERYD_LOG_FILE = os.path.join(PROJECT_ROOT, 'djcelery.log')
if DEBUG:
    CELERYD_LOG_LEVEL = 'INFO'
else:
    CELERYD_LOG_LEVEL = 'WARNING'

Can anyone give me any help? Thanks in advance!

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to