Код: Выделить всё
Npgsql.NpgsqlException (0x80004005): The connection pool has been exhausted, either raise 'Max Pool Size' (currently 100) or 'Timeout' (currently 50 seconds) in your connection string. ---> System.TimeoutException: The operation has timed out. at Npgsql.PoolingDataSource.g__RentAsync|34_0(NpgsqlConnection conn, NpgsqlTimeout timeout, Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlConnection.g__OpenAsync|42_0(Boolean async, CancellationToken cancellationToken) at Npgsql.NpgsqlDataSourceCommand.ExecuteReader(Boolean async, CommandBehavior behavior, CancellationToken cancellationToken)
- Обе среды используют одни и те же значения строки подключения для пула и тайм-аута.
- Приложение использует «более новый» стиль регистрации NpgsqlDataSource с помощью builder.Services.AddNpgsqlDataSource
- Операторы выполняются только с ожиданием с использованием команды NpgsqlCommand = this.dataSource.CreateCommand(..), соединения не открываются вручную.
- Источник данных внедряется в конструктор класса репозитория, который внедряется в конструктор класса, наследуемого от BackgroundService
Подробнее здесь: https://stackoverflow.com/questions/789 ... -pool-size