<div dir="ltr">Dear Gluster-Users,<br clear="all"><div><br></div><div>I have geo-replication setup and configured between 2 Gluster pools located at different sites.  What I am seeing is an error being reported within the geo-replication slave log as follows;</div><div><br></div><div><div><i><font face="monospace, monospace">[2018-06-05 12:05:26.767615] E [syncdutils(slave):331:log_raise_exception] &lt;top&gt;: FAIL: </font></i></div><div><i><font face="monospace, monospace">Traceback (most recent call last):</font></i></div><div><i><font face="monospace, monospace">  File &quot;/usr/libexec/glusterfs/python/syncdaemon/syncdutils.py&quot;, line 361, in twrap</font></i></div><div><i><font face="monospace, monospace">    tf(*aa)</font></i></div><div><i><font face="monospace, monospace">  File &quot;/usr/libexec/glusterfs/python/syncdaemon/resource.py&quot;, line 1009, in &lt;lambda&gt;</font></i></div><div><i><font face="monospace, monospace">    t = syncdutils.Thread(target=lambda: (repce.service_loop(),</font></i></div><div><i><font face="monospace, monospace">  File &quot;/usr/libexec/glusterfs/python/syncdaemon/repce.py&quot;, line 90, in service_loop</font></i></div><div><i><font face="monospace, monospace">    self.q.put(recv(self.inf))</font></i></div><div><i><font face="monospace, monospace">  File &quot;/usr/libexec/glusterfs/python/syncdaemon/repce.py&quot;, line 61, in recv</font></i></div><div><i><font face="monospace, monospace">    return pickle.load(inf)</font></i></div><div><i><font face="monospace, monospace">ImportError: No module named h_2013-04-26-04:02:49-2013-04-26_11:02:53.gz.15WBuUh</font></i></div><div><i><font face="monospace, monospace">[2018-06-05 12:05:26.768085] E [repce(slave):117:worker] &lt;top&gt;: call failed: </font></i></div><div><i><font face="monospace, monospace">Traceback (most recent call last):</font></i></div><div><i><font face="monospace, monospace">  File &quot;/usr/libexec/glusterfs/python/syncdaemon/repce.py&quot;, line 113, in worker</font></i></div><div><i><font face="monospace, monospace">    res = getattr(self.obj, rmeth)(*in_data[2:])</font></i></div><div><i><font face="monospace, monospace">TypeError: getattr(): attribute name must be string</font></i></div></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">From this point in time the slave server begins to consume all of its available RAM until it becomes non-responsive.  Eventually the gluster service seems to kill off the offending process and the memory is returned to the system.  Once the memory has been returned to the remote slave system the geo-replication often recovers and data transfer resumes.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">I have attached the full geo-replication slave log containing the error shown above.  I have also attached an image file showing the memory usage of the affected storage server.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">We are currently running Gluster version 3.12.9 on top of CentOS 7.5 x86_64.  The system has been fully patched and is running the latest software, excluding glibc which had to be downgraded to get geo-replication working.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">The Gluster volume runs on a dedicated partition using the XFS filesystem which in turn is running on a LVM thin volume.  The physical storage is presented as a single drive due to the underlying disks being part of a raid 10 array.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">The Master volume which is being replicated has a total of 2.2 TB of data to be replicated.  The total size of the volume fluctuates very little as data being removed equals the new data coming in.  This data is made up of many thousands of files across many separated directories.  Data file sizes vary from the very small (&gt;1K) to the large (&gt;1Gb).  The Gluster service itself is running with a single volume in a replicated configuration across 3 bricks at each of the sites.  The delta changes being replicated are on average about 100GB per day, where this includes file creation / deletion / modification.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div>The config for the geo-replication session is as follows, taken from the current source server;</div><div><div><font face="monospace, monospace"><i><br></i></font></div><div><font face="monospace, monospace"><i>special_sync_mode: partial</i></font></div><div><font face="monospace, monospace"><i>gluster_log_file: /var/log/glusterfs/geo-replication/glustervol0/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1.gluster.log</i></font></div><div><font face="monospace, monospace"><i>ssh_command: ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no -i /var/lib/glusterd/geo-replication/secret.pem</i></font></div><div><font face="monospace, monospace"><i>change_detector: changelog</i></font></div><div><font face="monospace, monospace"><i>session_owner: 40e9e77a-034c-44a2-896e-59eec47e8a84</i></font></div><div><font face="monospace, monospace"><i>state_file: /var/lib/glusterd/geo-replication/glustervol0_storage-server.local_glustervol1/monitor.status</i></font></div><div><font face="monospace, monospace"><i>gluster_params: aux-gfid-mount acl</i></font></div><div><font face="monospace, monospace"><i>log_rsync_performance: true</i></font></div><div><font face="monospace, monospace"><i>remote_gsyncd: /nonexistent/gsyncd</i></font></div><div><font face="monospace, monospace"><i>working_dir: /var/lib/misc/glusterfsd/glustervol0/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1</i></font></div><div><font face="monospace, monospace"><i>state_detail_file: /var/lib/glusterd/geo-replication/glustervol0_storage-server.local_glustervol1/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1-detail.status</i></font></div><div><font face="monospace, monospace"><i>gluster_command_dir: /usr/sbin/</i></font></div><div><font face="monospace, monospace"><i>pid_file: /var/lib/glusterd/geo-replication/glustervol0_storage-server.local_glustervol1/monitor.pid</i></font></div><div><font face="monospace, monospace"><i>georep_session_working_dir: /var/lib/glusterd/geo-replication/glustervol0_storage-server.local_glustervol1/</i></font></div><div><font face="monospace, monospace"><i>ssh_command_tar: ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no -i /var/lib/glusterd/geo-replication/tar_ssh.pem</i></font></div><div><font face="monospace, monospace"><i>master.stime_xattr_name: trusted.glusterfs.40e9e77a-034c-44a2-896e-59eec47e8a84.ccfaed9b-ff4b-4a55-acfa-03f092cdf460.stime</i></font></div><div><font face="monospace, monospace"><i>changelog_log_file: /var/log/glusterfs/geo-replication/glustervol0/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1-changes.log</i></font></div><div><font face="monospace, monospace"><i>socketdir: /var/run/gluster</i></font></div><div><font face="monospace, monospace"><i>volume_id: 40e9e77a-034c-44a2-896e-59eec47e8a84</i></font></div><div><font face="monospace, monospace"><i>ignore_deletes: false</i></font></div><div><font face="monospace, monospace"><i>state_socket_unencoded: /var/lib/glusterd/geo-replication/glustervol0_storage-server.local_glustervol1/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1.socket</i></font></div><div><font face="monospace, monospace"><i>log_file: /var/log/glusterfs/geo-replication/glustervol0/ssh%3A%2F%2Froot%40storage-server.local%3Agluster%3A%2F%2F127.0.0.1%3Aglustervol1.log</i></font></div></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">If any further information is required in order to troubleshoot this issue then please let me know.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">I would be very grateful for any help or guidance received.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Many thanks,</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif">Mark Betham.</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr"></div></div></div></div></div>
</div>

<br>
<p><span><br>
          </span><span>This
            email may contain confidential material; unintended
            recipients must not disseminate, use, or act upon any
            information in it. If you received this email in error,
            please contact the sender and permanently delete the email.<br>
            Performance Horizon Group Limited | Registered in England
            &amp; Wales 07188234 | Level 8, West One, Forth Banks,
            Newcastle upon Tyne, NE1 3PA</span><span>
            </span></p>
        <p><span><br></span></p>