У меня есть многопоточное приложение, которое подключается к Postgresql. Я хочу, чтобы мое приложение попыталось подключиться снова, если слишком много клиентов, но я хочу показать ошибку пользователю, что аутентификация не удалась. К сожалению, оба этих события вызывают SQLException, и единственный способ разграничения между ними - это, по-видимому, анализ текста из метода toString(). Есть ли способ лучше?SQLException слишком много клиентов против auth не удалось
1
A
ответ
1
Postgres имеет error codes.
Вы абсолютно уверены, что они не подвергаются каким-либо образом за исключением?
Плюс, какой язык вы используете? Ява? Если да, хотя я не имею никакого отношения к Java, я думаю, что PSQLException does expose that information.
Смежные вопросы
- 1. Arval SQLException: FATAL: извините, слишком много клиентов уже в postgres
- 2. SQLAlchemy ThreadPoolExecutor «Слишком много клиентов»
- 3. Нормализовать слишком много против слишком мало, примеры?
- 4. Извините, что слишком много клиентов уже зарегистрировано
- 5. CodeIgniter 3 - Ion Auth «Слишком много перенаправлений»
- 6. s3cmd 1.6 не удалось слишком много раз
- 7. avahi_entry_group_new() не удалось: Слишком много объектов
- 8. Ruby on rails SQLite3 :: SQLException: слишком много столбцов на
- 9. LINQ против SQL - возвращение слишком много строк
- 10. Почему это вызывает у меня исключение слишком много клиентов уже
- 11. Маршруты слишком много перенаправления
- 12. HikariCP слишком много соединений
- 13. ruby sequel и postgreSQL - слишком много клиентов (0)
- 14. Тесты на носовое тестирование Python, генерирующие слишком много клиентов уже
- 15. Моделирование «PSQLException: FATAL: извините, слишком много клиентов уже»
- 16. Получение OperationalError: FATAL: извините, слишком много клиентов уже используют psycopg2
- 17. Слишком много клиентов уже в C# и PostgreSQL
- 18. Postgres + JDBC Шаблон слишком много клиентов уже исключение
- 19. Postgresql слишком много ошибок клиентов на сервере linux
- 20. Слишком много слоев косвенности, это слишком много?
- 21. Laravel - Слишком много переадресаций
- 22. PHP не удалось открыть поток: Слишком много открытых файлов
- 23. сокет не удалось Слишком много открытых файлов ошибка Docker
- 24. Не удалось открыть поток: Слишком много открытых файлов
- 25. Nginx: [emerg] socket() не удалось (24: Слишком много открытых файлов)
- 26. «Не удалось подключиться. Слишком много соединений» Ошибка в MySQLi
- 27. Слишком много параметров?
- 28. Сервер принимает много клиентов
- 29. Слишком много) при совпадении
- 30. Hibernate - слишком много соединений
Спасибо, это доставит меня туда, где я хочу. – user2669285
Если это работает для вас, отметьте этот ответ как принятый. –
Это немного смешно. getErrorCode() возвращает частное поле vendorCode. Это устанавливается в contructor "public SQLException (String reason, String sqlState, int vendorCode, Throwable cause)". Тем не менее, PSQException не переопределяет этот contructor, и все реализованные contructors присваивают 0 vendorCode. – user2669285