BASE DE CONOCIMIENTO

Error "Sign In Failed" (No se pudo iniciar sesión) en la pantalla de inicio de sesión en el navegador después de actualizar Tableau Server


Publicado: 25 Aug 2016
Fecha de la última modificación: 24 Aug 2022

Problema

Después de actualizar a Tableau Server 10, pueden producirse los siguientes problemas:

Al intentar iniciar sesión en Tableau Server, puede producirse el error "Sign in failed" (Error de inicio de sesión).

O bien

Los registros podrían mostrar el siguiente error:

"PSQLException: Connection to localhost:8060 refused" ("PSQLException: se rechazó la conexión a localhost:8060"

O bien

El repositorio podría aparecer como "detenido" o "configurando". 

Para determinar si se puede aplicar esta solución, revise el registro de clustercontroller cuando se produzca el fallo para ver si aparece este error:

 WARN  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Monitoring thread for the master instance didn't start. Trying failover...
org.postgresql.util.PSQLException: FATAL: the database system is starting up (WARN : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - No se inició la supervisión del proceso de la instancia maestra. Pruebe con una conmutación por error... org.postgresql.util.PSQLException: FATAL: el sistema de la base de datos se está iniciando)
...
INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Failing over master Postgres to localhost:8060 (INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Ejecutando una conmutación por error de la instancia maestra de Postgres en localhost:8060)
INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Stopping the monitoring thread for Postgres instance on localhost:8060 (INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Deteniendo el proceso de supervisión de la instancia de Postgres en localhost:8060)
INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Starting the monitoring thread for master Postgres instance on localhost:8060 (INFO  : com.tableausoftware.cluster.postgres.SpawnPostgresRunner - Iniciando la supervisión del proceso de la instancia maestra de Postgres en localhost:8060)

Entorno

Tableau Server 10

Solución

Opción 1:
Trabaje con su equipo de TI para aumentar el rendimiento del disco o excluir las carpetas de Tableau de los análisis de antivirus del equipo donde se ejecuta Tableau Server.
Opción 2:
Aumente el ajuste de tiempo de espera de clustercontroller para Postgres (el repositorio de Tableau Server). Abra el símbolo del sistema como administrador y ejecute los comandos siguientes:
tabadmin stop
tabadmin set clustercontroller.pgsql_connection_timeout_ms 6000
tabadmin config
tabadmin start

 
Si el problema persiste después de establecer el valor en 6000, puede volver a incrementar el valor hasta un máximo de 60000. Para obtener los mejores resultados, le recomendamos que use el valor más bajo posible.

Causa

Postgres está tardando más de lo establecido en iniciarse (60 segundos). Este comportamiento puede deberse a una entrada/salida lenta o a otros factores del entorno.  

Información adicional

Tableau Server espera una cantidad de tiempo específica (de forma predeterminada, 60 segundos) a que se inicie la base de datos antes de reintentar la operación o reiniciarla. Las dos siguientes opciones de configuración de workgroup.yml determinan el tiempo de espera:

clustercontroller.pgsql_connection_attempts (valor predeterminado = 20)
clustercontroller.pgsql_connection_timeout_ms (default value=3000)

El producto de estos 2 valores determina la cantidad total del tiempo de espera. (60 000 ms o 60 segundos).

Al incrementar el valor de clustercontroller.pgsql_connection_timeout_ms, se aumentará la cantidad de tiempo que el controlador del clúster esperará una respuesta de Postgres antes de intentar una conmutación por error. Incrementar los valores de este ajuste puede afectar de forma negativa al rendimiento de Tableau Server. Por ejemplo, puede incrementar la cantidad de tiempo que Tableau Server deja de responder en caso de error, ya que el controlador del clúster esperará más tiempo antes de reiniciar Postgres si está en realidad inactivo. Por este motivo, le recomendamos que use el valor mínimo posible para este ajuste.  
La mejor solución siempre será investigar los factores del entorno que causan que Postgres se inicie lentamente. Modificar el valor de clustercontroller.pgsql_connection_timeout_ms puede resultar útil como una solución rápida mientras se investiga el problema de falta de rendimiento para encontrar una corrección a largo plazo. 
¿Fue de ayuda este artículo para resolver el problema?