I'm making multiple connection to API. Making delete query. I got that error on a 3000'th query.
Something like this:
def delete_request(self,path):
opener = urllib2.build_opener(urllib2.HTTPHandler)
request = urllib2.Request('%s%s'%(self.endpoint,path))
signature = self._gen_auth('DELETE', path, '')
request.add_header('X-COMPANY-SIGNATURE-AUTH', signature)
request.get_method = lambda: 'DELETE'
resp = opener.open(request)
Than in console:
for i in xrange(300000):
con.delete_request('/integration/sitemap/item.xml/media/%d/' % i)
After about 3000'th request it says:
URLError: urlopen error [Errno 10048]
Only one usage of each socket address (protocol/network address/port)
is normally permitted
The error comes from Windows itself, see Avoiding TCP/IP Port Exhaustion. To fix the error close your connection, you are not calling opener.close() hence leaking sockets.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With