[Bugs] [Bug 1393678] Worker restarts on log-rsync-performance config update

bugzilla at redhat.com bugzilla at redhat.com
Thu Jan 19 04:15:31 UTC 2017


https://bugzilla.redhat.com/show_bug.cgi?id=1393678



--- Comment #8 from nh2 <nh2-redhatbugzilla at deditus.de> ---
I believe this fix has been incorrectly backported to 3.9, or at least the
Ubuntu PPA of 3.9.

Consider
https://launchpadlibrarian.net/302065598/glusterfs_3.8.7-ubuntu1~xenial1_3.8.8-ubuntu1~xenial1.diff.gz
and
https://launchpadlibrarian.net/302850916/glusterfs_3.9.0-ubuntu1~xenial6_3.9.1-ubuntu1~xenial1.diff.gz

The former contains 

-        if gconf.log_rsync_performance:
+        log_rsync_performance = boolify(gconf.configinterface.get_realtime(
+            "log_rsync_performance", default_value=False))

but the latter doesn't have `default_value=False`:

-        if gconf.log_rsync_performance:
+        if boolify(gconf.configinterface.get_realtime(
+                "log_rsync_performance")):

So I'm running `gluster --version` `glusterfs 3.9.1` from that PPA
(3.9.1-ubuntu1~xenial1 to be precise), and I get this error (attached so that
people can Google it):

[2017-01-19 03:44:47.201340] I [monitor(monitor):273:monitor] Monitor: starting
gsyncd worker(/gluster-brick/brick1/gv0). Slave node:
ssh://root@mymachine:gluster://localhost:gv0-geo-sfo2
[2017-01-19 03:44:47.460453] I
[changelogagent(/gluster-brick/brick1/gv0):73:__init__] ChangelogAgent: Agent
listining...
[2017-01-19 03:44:54.361351] I
[master(/gluster-brick/brick1/gv0):1323:register] _GMaster: Working dir:
/var/lib/misc/glusterfsd/gv0/ssh%3A%2F%2Froot%40mymachine%3Agluster%3A%2F%2F127.0.0.1%3Agv0-geo-sfo2/e989bdc037f1478d9
b2cc6e6ae3d3d0d
[2017-01-19 03:44:54.361701] I
[resource(/gluster-brick/brick1/gv0):1584:service_loop] GLUSTER: Register time:
1484797494
[2017-01-19 03:44:54.376507] I
[gsyncdstatus(/gluster-brick/brick1/gv0):264:set_active] GeorepStatus: Worker
Status: Active
[2017-01-19 03:44:54.377803] I
[gsyncdstatus(/gluster-brick/brick1/gv0):237:set_worker_crawl_status]
GeorepStatus: Crawl Status: History Crawl
[2017-01-19 03:44:54.378166] I [master(/gluster-brick/brick1/gv0):1239:crawl]
_GMaster: starting history crawl... turns: 1, stime: None, etime: 1484797494,
entry_stime: None
[2017-01-19 03:44:54.378293] I
[resource(/gluster-brick/brick1/gv0):1599:service_loop] GLUSTER: No stime
available, using xsync crawl
[2017-01-19 03:44:54.385798] I [master(/gluster-brick/brick1/gv0):1348:crawl]
_GMaster: starting hybrid crawl..., stime: None
[2017-01-19 03:44:54.387316] I
[gsyncdstatus(/gluster-brick/brick1/gv0):237:set_worker_crawl_status]
GeorepStatus: Crawl Status: Hybrid Crawl
[2017-01-19 03:44:55.388740] I [master(/gluster-brick/brick1/gv0):1358:crawl]
_GMaster: processing xsync changelog
/var/lib/misc/glusterfsd/gv0/ssh%3A%2F%2Froot%40mymachine%3Agluster%3A%2F%2F127.0.0.1%3Agv0-geo-sfo2/e989bd
c037f1478d9b2cc6e6ae3d3d0d/xsync/XSYNC-CHANGELOG.1484797494
[2017-01-19 03:44:55.852421] E
[syncdutils(/gluster-brick/brick1/gv0):296:log_raise_exception] <top>: FAIL: 
Traceback (most recent call last):
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/syncdutils.py",
line 326, in twrap
    tf(*aa)
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/master.py", line
1649, in syncjob
    po = self.sync_engine(pb, self.log_err)
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py",
line 1730, in rsync
    log_err=log_err)
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py",
line 56, in sup
    sys._getframe(1).f_code.co_name)(*a, **kw)
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/resource.py",
line 1041, in rsync
    "log_rsync_performance")):
  File "/usr/lib/x86_64-linux-gnu/glusterfs/python/syncdaemon/syncdutils.py",
line 368, in boolify
    lstr = s.lower()
AttributeError: 'NoneType' object has no attribute 'lower'
[2017-01-19 03:44:55.854578] I
[syncdutils(/gluster-brick/brick1/gv0):237:finalize] <top>: exiting.
[2017-01-19 03:44:55.860104] I
[repce(/gluster-brick/brick1/gv0):92:service_loop] RepceServer: terminating on
reaching EOF.
[2017-01-19 03:44:55.860390] I
[syncdutils(/gluster-brick/brick1/gv0):237:finalize] <top>: exiting.
[2017-01-19 03:44:56.351736] I [monitor(monitor):349:monitor] Monitor:
worker(/gluster-brick/brick1/gv0) died in startup phase
[2017-01-19 03:44:56.358608] I [gsyncdstatus(monitor):233:set_worker_status]
GeorepStatus: Worker Status: Faulty

I can work around this bug by setting

  gluster volume geo-replication gv0 root at mymachine::gv0-geo config
log_rsync_performance true

Could you check if the fix for this issue was correctly applied to 3.9, and
release a new version then (I assume you are the ones maintaining that PPA)?

Thanks!

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=3ovSumWfoM&a=cc_unsubscribe


More information about the Bugs mailing list