<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none"><!--P{margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
Hi!<br>
<br>
My issue is related to the following issue on github:<br>
https://github.com/GeoNode/geonode/issues/2106<br>
<br>
I'm using Geonode 4.2.1 on Ubuntu 14.04 in a virtual machine.<br>
<br>
When saving a new map, the LockFailed-Error appers.<br>
<br>
I added NOTIFICATION_LOCK_LOCATION='/var/www/geonode' to the settings as suggested in issue 2106 and made sure that ww-data has write access to /var/www/geonode.<br>
<br>
But still i'm getting the error, since it still tries to create the lock at a wrong location.<br>
<br>
LockFailed: failed to create /var/www/vagrant-ubuntu-trusty-64.Dummy-1- 9171<br>
<br>
I'm wondering why it doesn't take the correct location from the settings?
<p><br>
Any ideas to solve this issue?<br>
<br>
Thanks in advance!<br>
<br>
Steffen<br>
</p>
<p><br>
</p>
<p><br>
PS: here is the full stacktrace:</p>
<p><br>
</p>
<p>Internal Server Error: /maps/new/data<br>
Traceback (most recent call last):<br>
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 112, in get_response<br>
response = wrapped_callback(request, *callback_args, **callback_kwargs)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/maps/views.py", line 416, in new_map_json<br>
map_obj.save()<br>
File "/usr/lib/python2.7/dist-packages/polymorphic/polymorphic_model.py", line 90, in save<br>
return super(PolymorphicModel, self).save(*args, **kwargs)<br>
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 545, in save<br>
force_update=force_update, update_fields=update_fields)<br>
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 582, in save_base<br>
update_fields=update_fields, raw=raw, using=using)<br>
File "/usr/lib/python2.7/dist-packages/django/dispatch/dispatcher.py", line 185, in send<br>
response = receiver(signal=self, sender=sender, **named)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/social/signals.py", line 165, in notification_post_save_resource<br>
send_queued_notifications.delay()<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 452, in delay<br>
return self.apply_async(args, kwargs)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 546, in apply_async<br>
link=link, link_error=link_error, **options)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 727, in apply<br>
request=request, propagate=throw)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 315, in eager_trace_task<br>
uuid, args, kwargs, request)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 218, in trace_task<br>
R = retval = fun(*args, **kwargs)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/tasks/email.py", line 22, in send_queued_notifications<br>
send_all(settings.NOTIFICATION_LOCK_LOCATION)<br>
File "/usr/lib/python2.7/dist-packages/notification/engine.py", line 43, in send_all<br>
lock = acquire_lock(*args)<br>
File "/usr/lib/python2.7/dist-packages/notification/engine.py", line 31, in acquire_lock<br>
lock.acquire(LOCK_WAIT_TIMEOUT)<br>
File "/usr/lib/python2.7/dist-packages/notification/lockfile.py", line 249, in acquire<br>
raise LockFailed("failed to create %s" % self.unique_name)<br>
LockFailed: failed to create /var/www/vagrant-ubuntu-trusty-64.Dummy-1-9171<br>
ERROR:django.request:Internal Server Error: /maps/new/data<br>
Traceback (most recent call last):<br>
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 112, in get_response<br>
response = wrapped_callback(request, *callback_args, **callback_kwargs)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/maps/views.py", line 416, in new_map_json<br>
map_obj.save()<br>
File "/usr/lib/python2.7/dist-packages/polymorphic/polymorphic_model.py", line 90, in save<br>
return super(PolymorphicModel, self).save(*args, **kwargs)<br>
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 545, in save<br>
force_update=force_update, update_fields=update_fields)<br>
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 582, in save_base<br>
update_fields=update_fields, raw=raw, using=using)<br>
File "/usr/lib/python2.7/dist-packages/django/dispatch/dispatcher.py", line 185, in send<br>
response = receiver(signal=self, sender=sender, **named)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/social/signals.py", line 165, in notification_post_save_resource<br>
send_queued_notifications.delay()<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 452, in delay<br>
return self.apply_async(args, kwargs)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 546, in apply_async<br>
link=link, link_error=link_error, **options)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 727, in apply<br>
request=request, propagate=throw)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 315, in eager_trace_task<br>
uuid, args, kwargs, request)<br>
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 218, in trace_task<br>
R = retval = fun(*args, **kwargs)<br>
File "/usr/local/lib/python2.7/dist-packages/geonode/tasks/email.py", line 22, in send_queued_notifications<br>
send_all(settings.NOTIFICATION_LOCK_LOCATION)<br>
File "/usr/lib/python2.7/dist-packages/notification/engine.py", line 43, in send_all<br>
lock = acquire_lock(*args)<br>
File "/usr/lib/python2.7/dist-packages/notification/engine.py", line 31, in acquire_lock<br>
lock.acquire(LOCK_WAIT_TIMEOUT)<br>
File "/usr/lib/python2.7/dist-packages/notification/lockfile.py", line 249, in acquire<br>
raise LockFailed("failed to create %s" % self.unique_name)<br>
[Thu Jan 26 03:07:51.940734 2017] [:error] [pid 9171:tid 139927198664448] LockFailed: failed to create /var/www/vagrant-ubuntu-trusty-64.Dummy-1-9171<br>
<br>
</p>
</body>
</html>