Created
April 21, 2019 08:40
-
-
Save valesi/13c8f45255370c676f6b58d23ed15477 to your computer and use it in GitHub Desktop.
E-X separate Tor + time slice window env -- is_tor(): return False in aiorpcX SessionBase
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/electrumx/server/session.py b/electrumx/server/session.py | |
index 45a1839..9c0e50f 100644 | |
--- a/electrumx/server/session.py | |
+++ b/electrumx/server/session.py | |
@@ -758,7 +758,7 @@ class SessionManager(object): | |
return '.'.join(ip_addr.split('.')[:3]) | |
def _timeslice_name(self, session): | |
- return f't{int(session.start_time - self.start_time) // 300}' | |
+ return f't{int(session.start_time - self.start_time) // self.env.timeslice_window}{"_tor" if session.is_tor() else ""}' | |
def _session_group(self, name, weight): | |
group = self.session_groups.get(name) | |
@@ -770,10 +770,10 @@ class SessionManager(object): | |
def add_session(self, session): | |
self.session_event.set() | |
# Return the session groups | |
- groups = ( | |
- self._session_group(self._timeslice_name(session), 0.03), | |
- self._session_group(self._ip_addr_group_name(session), 1.0), | |
- ) | |
+ groups = [self._session_group(self._timeslice_name(session), 0.03)] | |
+ if not session.is_tor(): | |
+ groups.append(self._session_group(self._ip_addr_group_name(session), 1.0)) | |
+ groups = tuple(groups) | |
self.sessions[session] = groups | |
for group in groups: | |
group.sessions.add(session) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment