Na biblioteca de solicitações, como posso evitar o aviso “HttpConnectionPool está cheio, descartando a conexão”?
Estou usando a biblioteca de solicitações python com sessões:
def _get_session(self):
if not self.session:
self.session = requests.Session()
return self.session
E às vezes estou recebendo esse aviso nos meus logs:
[2014/May/12 14:40:04 WARNING ] HttpConnectionPool is full, discarding connection: www.ebi.ac.uk
Minha pergunta é: por que isso é um aviso e não uma exceção?
Este é o código responsável por isso (dehttp://pydoc.net/Python/requests/0.8.5/requests.packages.urllib3.connectionpool/):
def _put_conn(self, conn):
try:
self.pool.put(conn, block=False)
except Full:
# This should never happen if self.block == True
log.warning("HttpConnectionPool is full, discarding connection: %s"
% self.host)
Por que essa exceção é capturada aqui? Se fosse re-gerado, eu poderia lidar com essa exceção no meu código, criando uma nova sessão e excluindo a antiga.
Se é apenas um aviso, significa que não afeta meus resultados de nenhuma maneira? Posso ignorar isso? Caso contrário, como posso lidar com essa situação?