From 1d3379c7d1b9f925e639bbfeaf8ae78107540e75 Mon Sep 17 00:00:00 2001 From: Sergio Oliveira Date: Thu, 8 Aug 2013 17:55:41 -0300 Subject: [PATCH] Temporary work around to access solr behind proxy --- src/colab/deprecated/solrutils.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/colab/deprecated/solrutils.py b/src/colab/deprecated/solrutils.py index 2340caf..cab42dd 100644 --- a/src/colab/deprecated/solrutils.py +++ b/src/colab/deprecated/solrutils.py @@ -13,6 +13,10 @@ from dateutil.parser import parse as parse_timestamp from django.conf import settings from super_archives.models import EmailAddress +from . import socks + + +DEFAULT_SOCKET = socket.socket def build_query(user_query, filters=None): @@ -181,7 +185,6 @@ def select(query, results_per_page=None, page_number=None, sort=None, fields=Non # if the solr server is behind a firewall. socks_server = getattr(settings, "SOCKS_SERVER", None) if socks_server: - import socks logging.debug('Socks enabled: %s:%s', settings.SOCKS_SERVER, settings.SOCKS_PORT) @@ -196,6 +199,8 @@ def select(query, results_per_page=None, page_number=None, sort=None, fields=Non except socket.error as err: solr_response = None logging.exception(err) + finally: + reset_defaultproxy() if solr_response and solr_response.status == 200: #TODO: Log error connecting to solr @@ -266,4 +271,7 @@ def count_types(sample=100, filters=None): return type_count - + +def reset_defaultproxy(): + socket.socket = DEFAULT_SOCKET + socks._defaultproxy = None -- libgit2 0.21.2