¿Por qué un tiempo de espera de consulta cuando está dentro de su límite de tiempo de espera?

Tengo una consulta de larga duración que se agota después de unos 48 minutos.

El tiempo de espera del comando se establece en 2 horas y el tiempo de espera de la conexión se establece en 17 minutos.

¿Qué haría que la consulta genere un tiempo de espera? (¿Supongo que debe haber algo más que haya pasado por alto?)

Npgsql.NpgsqlException:
    A timeout has occured. If you were establishing a connection, increase Timeout value in ConnectionString. If you were executing a command, increase the CommandTimeout value in ConnectionString or in your NpgsqlCommand object.
       at Npgsql.NpgsqlState.ProcessBackendResponsesEnum(NpgsqlConnector context) in C:\projects\Npgsql2\src\Npgsql\NpgsqlState.cs:line 384
       at Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 611
       at Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior cb) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 591
       at Npgsql.NpgsqlCommand.ExecuteDbDataReader(CommandBehavior behavior) in C:\projects\Npgsql2\src\Npgsql\NpgsqlCommand.cs:line 538

Información Adicional:

Versión de Postgres: 8.3NpgSql: 2.0.11.0

El registro de postgres muestra el siguiente "ERROR":

cancelling statement due to user request

La consulta se ejecutó dos veces la noche anterior en diferentes momentos para diferentes rangos de fechas, ambas veces falló con el mismo error y después de ejecutarse durante el mismo tiempo: "00: 48: 24.909" y "00: 48: 24.936"

Además, las consultas anteriores no han tardado más de 00:47:40, por lo que esto sugiere que otra cosa está causando el tiempo muerto en alrededor de 48 minutos.

No puedo ver nada en el archivo de configuración de postgres, ¿hay algún otro lugar donde pueda buscar?

Respuestas a la pregunta(2)

Su respuesta a la pregunta