org.postgresql.util.PSQLException: FATAL: connection limit exceeded for non-superusers
Minha aplicação usa spring e hibernate e meu usuário do banco não pode ser um superuser (limitação do servidor, que é compartilhado).
Isso aconteceu enquanto eu testava o sistema e havia outras 2 pessoas testando ele junto.
Alguma idéia do que pode estar causando isso e como solucionar?
tens que dar permissão no usuario para poder abrir mais conexões na base de dados em simultaneo, se fosse no mysql ou oracle eu podia ser mais especifico …
rodpuc
Mas essa não é uma solução muito legal… senão o dia em que eu tiver 1 milhão de usuários vou ter q permitir que sejam criadas 1 milhão de conexões :shock:
Eu tenho palpites:
1 - O spring não deve estar fechando as conexões como deveria.
2 - Se a aplicação tenta abrir uma conexão e não consegue, ela deveria esperar um tempo e tentar de novo até conseguir.
Pode estar acontecendo 1 dos problemas ou até mesmo os 2 simultâneamente.
Eu usei spring esperando n ter dor de cabeça com essas coisas e me ferrei pelo visto.
S
sulito
tens razao talvez esta nao seja a solucao ideal, mas existe dois tipos de solucoes possiveis como programador e como DBA, eu dei a como DBA
rodpuc
up!
Estou precisando muito de ajuda, esse problema é a única coisa que me impede de colocar o sistema em produção
Já tentei de tudo e nada funciona, já to ficando desesperado hahaha
fernandaleite
rodpuc, estou passando pelo mesmo problema, por algum acaso vc teve alguma luz de como resolver??
rodpuc
Mais ou menos.
Além de configurar o BD no persistence.xml, eu também criei um dataSource no applicationContext.xml com as mesmas configurações. Eu não sei porque, mas funcionou. Se eu tiro as configs de um dos arquivos o problema volta.
A má notícia é que eu queria configurar o c3p0 para gerenciar um pool de conexões e não consegui fazer isso do jeito que as coisas estão, mas pelo menos ele parou de largar conexões abertas.
Acho que vc pode tentar fazer o mesmo, mas o ideal seria que alguém aí ajudasse a gente a encontrar uma solução realmente definitiva.
fernandaleite
Beleza, vou tentar isso na segunda feira e dou um retorno… até lá se alguém puder, como ele disse, nos ajudar a encontrar uma solução mais definida, por favor, nos ajude…
fernandaleite
ih, não achei esse persistence.xml
aqui eu uso no context.xml
Porém qnd carrego um link em específico ele sempre mostra
Caused by: org.postgresql.util.PSQLException: FATAL: connection limit exceeded for non-superusers
Mas ainda consigo fazer a consulta, se for pra outro lugar e depois tentar consultar novamente, ele acusa:
“Cannot get a connection, pool error Timeout waiting for idle object”
“Timeout waiting for idle object”
fernandaleite
rodpuc, vc conhece essa forma q eu fiz??
alguém tem alguma sugestão de como posso resolver meu problema??