From 4a04e1b5540921db22f1894f71eb30342127192d Mon Sep 17 00:00:00 2001
From: Kotresh HR <khiremat@redhat.com>
Date: Tue, 12 Nov 2019 21:53:20 +0530
Subject: [PATCH 315/316] geo-rep: Fix py2/py3 compatibility in repce
Geo-rep fails to start on python2 only machine like
centos6. It fails with "ImportError no module named _io".
This patch fixes the same.
Backport of:
> Patch: https://review.gluster.org/23702
> fixes: bz#1771577
> Change-Id: I8228458a853a230546f9faf29a0e9e0f23b3efec
> Signed-off-by: Kotresh HR <khiremat@redhat.com>
BUG: 1771524
Change-Id: I8228458a853a230546f9faf29a0e9e0f23b3efec
Signed-off-by: Kotresh HR <khiremat@redhat.com>
Reviewed-on: https://code.engineering.redhat.com/gerrit/185377
Tested-by: RHGS Build Bot <nigelb@redhat.com>
Reviewed-by: Sunny Kumar <sunkumar@redhat.com>
---
geo-replication/syncdaemon/repce.py | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/geo-replication/syncdaemon/repce.py b/geo-replication/syncdaemon/repce.py
index 6065b82..c622afa 100644
--- a/geo-replication/syncdaemon/repce.py
+++ b/geo-replication/syncdaemon/repce.py
@@ -8,7 +8,6 @@
# cases as published by the Free Software Foundation.
#
-import _io
import os
import sys
import time
@@ -58,9 +57,9 @@ def recv(inf):
"""load an object from input stream
python2 and python3 compatibility, inf is sys.stdin
and is opened as text stream by default. Hence using the
- buffer attribute
+ buffer attribute in python3
"""
- if isinstance(inf, _io.TextIOWrapper):
+ if hasattr(inf, "buffer"):
return pickle.load(inf.buffer)
else:
return pickle.load(inf)
--
1.8.3.1