¿Qué hacer con la advertencia de Geoserver WPS “” No se pudo obtener un ServiceInfo "?

8

Esta es la advertencia que recibo cuando intento usar este servicio WPS de QGIS, y el tiempo de procesamiento tarda demasiado, pero no termina.

¿Cuál podría ser el problema?

17 Oct 12:33:25 INFO [geoserver.wps] -
Request: getCapabilities   
    service = WPS   
    baseUrl = http:// localhost:8080/geoserver/   
17 Oct 12:33:31 WARN [geoserver.ows] - Could not get a ServiceInfo for service wps
                                       thus could not check if the service is enabled   
17 Oct 12:33:31 INFO [geoserver.wps] -
Request: describeProcess   
    service = WPS   
    version = 1.0.0   
    baseUrl = http:// localhost:8080/geoserver/   
    identifier[0]:  
        value = gt:VectorToRaster  
Nikhil
fuente
¿Qué sucede cuando realiza una solicitud de getcapabilities desde un navegador?
Ian Turton
Recibo la descripción XML cuando solicito getcapabilities desde el navegador. http: // localhost: 8080 / geoserver / ows? service = WPS & version = 1.0.0 & request = GetCapabilities
Nikhil
Tengo el mismo problema, estas líneas aparecen en los registros de GeoServer, el mensaje WARN también aparece cuando se realiza una solicitud desde el navegador o cualquier cliente WPS. Sospecho que un archivo conf en algún lugar está causando algunos problemas porque carece de la información que debería poseer, pero no estoy seguro en absoluto.
Saryk

Respuestas:

2

Como usted dice que la respuesta GetCapabilities está funcionando, es poco probable que sea un problema con la configuración del WPS en GeoServer.

La siguiente publicación en el sitio de Hivmr que discute un problema con un servicio GeoServer WPS que se ejecuta en JBOSS nos dice que:

Mi conjetura es la contención sobre el grupo de subprocesos utilizado para ejecutar procesos. Cuando un proceso se ejecuta, lo hace en un grupo de subprocesos de tamaño fijo. Si el grupo de subprocesos está lleno (todos los subprocesos están actualmente ocupados ejecutando) la ejecución del proceso esperará y bloqueará si es una ejecución síncrona.

Así que creo que lo que sucedió es un punto muerto, con el proceso "A" esperando el proceso "B", pero "B" esperando un lugar en el grupo de subprocesos que no estará disponible hasta que "A" haya terminado.

Por defecto, el tamaño del grupo de subprocesos es 2 veces el número de núcleos en la máquina. Entonces, el peor de los casos es el tamaño de 2 hilos, lo que significa que dos invocaciones de su proceso en paralelo pueden producir un punto muerto. El tamaño del grupo de subprocesos es configurable para que pueda aumentarlo, pero esa es realmente una solución curita. Pero podría funcionar junto con el módulo de flujo de control que puede limitar el número total de solicitudes máximas que un servicio puede manejar. Por lo tanto, solo debe asegurarse de que el tamaño del grupo de subprocesos sea mayor que el número máximo de solicitudes de ejecución de WPS que el servidor puede manejar.

server.log donde se atasca:

...

16: 43: 42,112 WARN [org.geoserver.ows] (http-executeor-threads - 5) No se pudo obtener un ServiceInfo para el servicio wps, por lo que no se pudo verificar si el servicio está habilitado

Es posible que este sea el mismo problema que haya encontrado, y la solución es:

asegúrese de que el tamaño del grupo de subprocesos sea mayor que el número máximo de solicitudes de ejecución de WPS que el servidor puede manejar.

nmtoken
fuente