Solución de problemas: Resuelve errores de tipo de programa

En esta página, se describe cómo resolver un problema conocido en Cloud Data Fusion 6.8.0 y 6.8.1, en el que una canalización de datos falla con un error de tipo de programa no compatible en Cloud Data Fusion. Este problema se resolvió en la versión 6.8.2.

A fin de reducir el tiempo de inicio de las canalizaciones, las instancias de las versiones 6.8.0 y 6.8.1 de Cloud Data Fusion almacenan en caché los artefactos necesarios para iniciar una canalización en un clúster de Dataproc dentro de un bucket de Cloud Storage. Uno de estos artefactos almacenados en caché es application.jar. Según el orden en que ejecutes tus canalizaciones, algunas canalizaciones podrían fallar con el siguiente error:

Unsupported program type: Spark

Por ejemplo, después de crear una nueva instancia 6.8.1 (o actualizarla a la 6.8.1), la primera vez que ejecutas una canalización que solo contiene acciones, esta se ejecuta de forma correcta. Sin embargo, la siguiente ejecución de canalización, que incluye fuentes o receptores, puede fallar con este error.

Recomendación

Para resolver el problema, realiza una de las siguientes acciones:

Puedes inhabilitar el almacenamiento en caché para cualquiera de los siguientes dispositivos:

  • Para todas las canalizaciones en una instancia.
  • Para un espacio de nombres determinado
  • Para los perfiles de Dataproc específicos que contienen las canalizaciones con errores
  • Solo para las canalizaciones con errores.

Inhabilitar el almacenamiento en caché de Cloud Storage para todas las canalizaciones de una instancia

Para inhabilitar el almacenamiento en caché de Cloud Storage en todas las canalizaciones de una instancia, sigue estos pasos:

Consola

  1. Ve a tu instancia:
    1. En la consola de Google Cloud, ve a la página de Cloud Data Fusion.

    2. Para abrir la instancia en la interfaz web de Cloud Data Fusion, haga clic en Instancias y, luego, en Ver instancia.

      Ir a Instancias

  2. Haz clic en Administrador del sistema > Preferencias del sistema y establece el valor de system.profile.properties.gcsCacheEnabled en false..

    Diálogo de preferencias

API de REST

Para establecer system.profile.properties.gcsCacheEnabled en false, consulta Cómo configurar preferencias.

Inhabilita el almacenamiento en caché de Cloud Storage para un espacio de nombres determinado

Para inhabilitar el almacenamiento en caché de Cloud Storage en un espacio de nombres determinado, sigue estos pasos:

Consola

  1. Ve a tu instancia:
    1. En la consola de Google Cloud, ve a la página de Cloud Data Fusion.

    2. Para abrir la instancia en la interfaz web de Cloud Data Fusion, haga clic en Instancias y, luego, en Ver instancia.

      Ir a Instancias

  2. Haz clic en Administrador del sistema > Espacios de nombres y selecciona tu espacio de nombres.
  3. Haz clic en Preferencias > Editar y establece el valor de system.profile.properties.gcsCacheEnabled en false.

    Diálogo de preferencias de espacio de nombres

API de REST

Para configurar esto a través de la API de REST, consulta Configura las preferencias.

Inhabilita el almacenamiento en caché de Cloud Storage para un perfil de Dataproc

A fin de inhabilitar el almacenamiento en caché de Cloud Storage para los perfiles de Dataproc específicos que contienen las canalizaciones con errores, sigue estos pasos:

Consola

  • Establece gcsCacheEnabled en false en el perfil de Dataproc.

Inhabilitar el almacenamiento en caché de Cloud Storage solo para las canalizaciones con errores

Para inhabilitar el almacenamiento en caché de Cloud Storage solo en las canalizaciones con errores, sigue estos pasos:

Consola

  1. Ve a tu instancia:
    1. En la consola de Google Cloud, ve a la página de Cloud Data Fusion.

    2. Para abrir la instancia en la interfaz web de Cloud Data Fusion, haga clic en Instancias y, luego, en Ver instancia.

      Ir a Instancias

  2. Haga clic en List y seleccione la canalización con errores.
  3. Haz clic en Expandir junto a Ejecutar y establece el argumento de entorno de ejecución system.profile.properties.gcsCacheEnabled en false.
  4. Repita el proceso para cualquier otra canalización con errores.

Diálogo del entorno de ejecución

API de REST

El almacenamiento en caché de Cloud Storage se puede inhabilitar cuando se inicia una canalización mediante la API de REST y, si lo deseas, puedes especificar argumentos del entorno de ejecución como un mapa JSON en el cuerpo de la solicitud. Para obtener más información, consulta Cómo iniciar un programa.