Re: [geonode] Error deleting layers
- From:
- David Winslow
- Date:
- 2012-02-14 @ 20:20
I don't recall hearing about an issue like this so it is unlikely that
upgrading will fix it. In fact very little has changed between GeoNode
1.1RC2 and 1.1 final.
However, there is an administrative command which is intended to help with
the situation where the Django application has a record for a layer that is
no longer registered with GeoServer.
$ geonode cleardeadlayers
This should identify all such layers and remove them from the Django
database. Hope it helps.
--
David Winslow
OpenGeo - http://opengeo.org/
On Tue, Feb 14, 2012 at 12:46 PM, Andrew Ross <andrew11@angoor.net> wrote:
> **
> Hello everyone,
>
> Deleting a layer is creating the error below.
>
> This is with GeoNode version 1.1 RC2. The layer was removed from both
> GeoNetwork and GeoServer, but still showed up under the GeoNode admin.
> Tried to delete it a second time from the GeoNode admin and the same error
> was generated.
>
> Has this been fixed in version 1.1 Final? Will upgrading fix it?
>
> Thanks, Andrew./
>
>
>
-------------------------------------------------------------------------------------------------
> Environment:
>
> Request Method: POST
> Request URL: http://107.22.181.174/admin/maps/layer/
> Django Version: 1.2
> Python Version: 2.7.1
> Installed Applications:
> ['django.contrib.auth',
> 'django.contrib.contenttypes',
> 'django.contrib.sessions',
> 'django.contrib.sites',
> 'django.contrib.admin',
> 'django.contrib.sitemaps',
> 'staticfiles',
> 'django_extensions',
> 'registration',
> 'profiles',
> 'avatar',
> 'geonode.core',
> 'geonode.maps',
> 'geonode.proxy',
> 'geonode',
> 'monitor']
> Installed Middleware:
> ('django.middleware.common.CommonMiddleware',
> 'django.contrib.sessions.middleware.SessionMiddleware',
> 'django.middleware.locale.LocaleMiddleware',
> 'django.middleware.csrf.CsrfViewMiddleware',
> 'django.contrib.auth.middleware.AuthenticationMiddleware')
>
>
> Traceback:
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/core/handlers/base.py"
> in get_response
> 100. response = callback(request, *callback_args,
> **callback_kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py"
> in wrapper
> 239. return self.admin_site.admin_view(view)(*args,
> **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py"
> in _wrapped_view
> 76. response = view_func(request, *args, **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/views/decorators/cache.py"
> in _wrapped_view_func
> 69. response = view_func(request, *args, **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/sites.py"
> in inner
> 190. return view(request, *args, **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py"
> in _wrapper
> 21. return decorator(bound_func)(*args, **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py"
> in _wrapped_view
> 76. response = view_func(request, *args, **kwargs)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/utils/decorators.py"
> in bound_func
> 17. return func(self, *args2, **kwargs2)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py"
> in changelist_view
> 1007. response = self.response_action(request,
> queryset=cl.get_query_set())
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/options.py"
> in response_action
> 749. response = func(self, request, queryset)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/contrib/admin/actions.py"
> in delete_selected
> 47. queryset.delete()
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/db/models/query.py" in
> delete
> 445. delete_objects(seen_objs, del_query.db)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/db/models/query.py" in
> delete_objects
> 1314. signals.pre_delete.send(sender=cls,
> instance=instance)
> File
> "/var/lib/geonode/lib/python2.7/site-packages/django/dispatch/dispatcher.py"
> in send
> 162. response = receiver(signal=self, sender=sender, **named)
> File "/var/lib/geonode/src/GeoNodePy/geonode/maps/models.py" in
> delete_layer
> 1635. instance.delete_from_geoserver()
> File "/var/lib/geonode/src/GeoNodePy/geonode/maps/models.py" in
> delete_from_geoserver
> 941. cascading_delete(Layer.objects.gs_catalog, self.resource)
> File "/var/lib/geonode/src/GeoNodePy/geonode/maps/gs_helpers.py" in
> cascading_delete
> 132. resource_name = resource.name
>
> Exception Type: AttributeError at /admin/maps/layer/
> Exception Value: 'NoneType' object has no attribute 'name'
>
>
Re: [geonode] Error deleting layers
- From:
- info@dooit.it
- Date:
- 2012-02-22 @ 14:17
I have some problem with librelist so I can't see any new post..
We have the same error message deleting a layer with 1.1 final release.
Someone have fix it?
Thanks, Thomas
Andrew Ross
Date:
2012-02-14 @ 17:46
Hello everyone,
Deleting a layer is creating the error below.
This is with GeoNode version 1.1 RC2. The layer was removed from both
GeoNetwork and GeoServer, but still showed up under the GeoNode admin.
Tried to delete it a second time from the GeoNode admin and the same
error was generated.
Has this been fixed in version 1.1 Final? Will upgrading fix it?
Thanks, Andrew./
Re: [geonode] Error deleting layers
- From:
- info@dooit.it
- Date:
- 2012-02-22 @ 16:57
I found that I can see the updated geonode list at
http://www.mail-archive.com/geonode@librelist.com
David had already answer Andrew with the administrative command:
"geonode cleardeadlayers"
But it is not enough, it is also necessary to remote layer from geonetwork
You need to login to http://YOURSERVER/geonetwork and delete the layer.
This fix the layer but if you try to delete another layer the error come
back again: "datastore not empty"
Request Method: POST
Request URL: http://localhost/data/geonode:prov2010_s?remove
Django Version: 1.2
Exception Type: FailedRequestError
Exception Value:
Tried to make a DELETE request to
http://localhost/geoserver/rest/workspaces/geonode/datastores/postgres_imports.xml
but got a 403 status code:
datastore not empty
Exception Location:
/var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py in delete,
line 93
Python Executable: /usr/bin/python
Python Version: 2.6.5
Someone have fix it?
Thanks, Thomas
Re: [geonode] Error deleting layers
- From:
- Luca Casagrande
- Date:
- 2012-02-22 @ 17:02
Can you try to remove any reference also from Geoserver?
Ciao
L.
Inviato da terminale mobile
Scusa per la brevitÃ
Il giorno 22/feb/2012, alle ore 17:57, "info@dooit.it" <info@dooit.it> ha
scritto:
I found that I can see the updated geonode list at
http://www.mail-archive.com/geonode@librelist.com
David had already answer Andrew with the administrative command: "geonode
cleardeadlayers"
But it is not enough, it is also necessary to remote layer from geonetwork
You need to login to http://YOURSERVER/geonetwork and delete the layer.
This fix the layer but if you try to delete another layer the error come
back again: "datastore not empty"
Request Method: POST Request URL:
http://localhost/data/geonode:prov2010_s?remove Django Version: 1.2 Exception
Type: FailedRequestError Exception Value:
Tried to make a DELETE request to
http://localhost/geoserver/rest/workspaces/geonode/datastores/postgres_imports.xml
but got a 403 status code:
datastore not empty
Exception Location: /var/lib/geonode/src/
gsconfig.py/src/geoserver/catalog.py in delete, line 93 Python Executable:
/usr/bin/python Python Version: 2.6.5
Someone have fix it?
Thanks, Thomas
Re: [geonode] Error deleting layers
- From:
- info@dooit.it
- Date:
- 2012-02-22 @ 17:49
When you delete a layer from geonode interface the geoserver deletion
works fine (layer was delete from the geoserver reference)
It seems to be something releated to postgres tables deletion (permission?!)
Ciao
Thomas
Il 22/02/2012 18.02, Luca Casagrande ha scritto:
> Can you try to remove any reference also from Geoserver?
>
> Ciao
> L.
>
> Inviato da terminale mobile
> Scusa per la brevitÃ
>
> Il giorno 22/feb/2012, alle ore 17:57, "info@dooit.it
> <mailto:info@dooit.it>" <info@dooit.it <mailto:info@dooit.it>> ha scritto:
>
>> I found that I can see the updated geonode list at
>> http://www.mail-archive.com/geonode@librelist.com
>>
>> David had already answer Andrew with the administrative command:
>> "geonode cleardeadlayers"
>>
>> But it is not enough, it is also necessary to remote layer from
>> geonetwork
>>
>> You need to login to http://YOURSERVER/geonetwork and delete the layer.
>>
>> This fix the layer but if you try to delete another layer the error
>> come back again: "datastore not empty"
>>
>> Request Method: POST
>> Request URL: http://localhost/data/geonode:prov2010_s?remove
>> Django Version: 1.2
>> Exception Type: FailedRequestError
>> Exception Value:
>> Tried to make a DELETE request
tohttp://localhost/geoserver/rest/workspaces/geonode/datastores/postgres_imports.xml
but got a 403 status code:
>> datastore not empty
>> Exception Location:
>> /var/lib/geonode/src/gsconfig.py/src/geoserver/catalog.py
>> <http://gsconfig.py/src/geoserver/catalog.py> in delete, line 93
>> Python Executable: /usr/bin/python
>> Python Version: 2.6.5
>>
>>
>>
>> Someone have fix it?
>>
>> Thanks, Thomas
>>