<div dir="ltr"><div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Mon, Nov 26, 2018 at 8:21 AM Atin Mukherjee &lt;<a href="mailto:amukherj@redhat.com">amukherj@redhat.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Sun, Nov 25, 2018 at 8:40 PM Jeevan Patnaik &lt;<a href="mailto:g1patnaik@gmail.com" target="_blank">g1patnaik@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Hi,<div dir="auto"><br></div><div dir="auto">I am getting output Another transaction is in progress with few gluster volume commands including stop command. And with gluster volume status command, it&#39;s just hung and fails with timeout error.<br></div></div></blockquote><div><br></div><div>This is primarily because of not allowing glusterd to complete it&#39;s handshake with others when concurrent restart of glusterd services are done (as I could understand from your previous email in the list). With GlusterD (read as GD1) this is a current challenge w.r.t it&#39;s design where due to its N X N handshaking mechanism at the restart sequence to bring all the configuration data into inconsistent what we&#39;ve seen is the overall recovery time of the cluster can take very long if N is on the higher side (in your case N = 72 which is certainly high) and hence the recommendation is not to restart the glusterd services concurrently and wait for the handshaking to complete.</div></div></div></blockquote><div><br></div><div>Forgot to mention that GlusterD2 ( <a href="https://github.com/gluster/glusterd2">https://github.com/gluster/glusterd2</a>) which is in development phase addresses this design problem.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto"></div><div dir="auto"><br></div><div dir="auto">So, I want to find out which transaction is hung and how to know this? I ran volume statedump command, but didn&#39;t wait till it&#39;s completed to check if it&#39;s hung or giving any resut, as it is also taking time.</div></div></blockquote><div><br></div><div>kill -SIGUSR1 $(pidof glusterd) should get you a glusterd statedump file in /var/run/gluster which can point to a backtrace dump at the bottom to understand which transaction is currently in progress. In case this transaction is queued up for more than 180 seconds (which is not usual) the unlock timer kicks out such locks.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><div dir="auto"><br></div><div dir="auto">Please help me with this.. I&#39;m struggling with these gluster timeout errors :(</div><div dir="auto"><br></div><div dir="auto">Besides, I have also tuned </div><div dir="auto">transport.listen-backlog gluster to 200 and following kernel parameters to avoid syn overflow rejects:</div><div dir="auto">net.core.somaxconn = 1024</div><div dir="auto">net.ipv4.tcp_max_syn_backlog = 20480</div><div dir="auto"><br></div><div dir="auto">Regards,</div><div dir="auto">Jeevan.</div><div dir="auto"><br></div><div dir="auto"><br></div></div>
_______________________________________________<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org" target="_blank">Gluster-users@gluster.org</a><br>
<a href="https://lists.gluster.org/mailman/listinfo/gluster-users" rel="noreferrer" target="_blank">https://lists.gluster.org/mailman/listinfo/gluster-users</a></blockquote></div></div>
</blockquote></div></div></div>