<html><head></head><body bgcolor="#FFFFFF"><div>Not sure if the erlang:now() auto-correction is active on Windows, but if it is, you should be able to detect a large diff between erlang:now() and os:timestamp().</div><div><br></div><div>It could of course also mean that someone has tampered with the system clock, but even so, it's a good idea to restart the node then.</div><div><br></div><div>BR,</div><div>Ulf W<br><br>Ulf Wiger, Feuerlabs, Inc.<div><a href="http://www.feuerlabs.com">http://www.feuerlabs.com</a></div></div><div><br>28 maj 2012 kl. 06:46 skrev József Bérces <<a href="mailto:jozsef.berces@ericsson.com">jozsef.berces@ericsson.com</a>>:<br><br></div><div></div><blockquote type="cite"><div>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta content="MSHTML 6.00.6002.18591" name="GENERATOR"><!--[if !mso]>
<STYLE>v\:* {
        BEHAVIOR: url(#default#VML)
}
o\:* {
        BEHAVIOR: url(#default#VML)
}
w\:* {
        BEHAVIOR: url(#default#VML)
}
.shape {
        BEHAVIOR: url(#default#VML)
}
</STYLE>
<![endif]-->
<style>@font-face {
        font-family: Cambria;
}
@font-face {
        font-family: Calibri;
}
@font-face {
        font-family: Tahoma;
}
@font-face {
        font-family: Consolas;
}
@page WordSection1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Cambria","serif"
}
LI.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Cambria","serif"
}
DIV.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Cambria","serif"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
P {
        FONT-SIZE: 12pt; MARGIN-LEFT: 0in; MARGIN-RIGHT: 0in; FONT-FAMILY: "Cambria","serif"; mso-style-priority: 99; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto
}
P.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
LI.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
DIV.MsoAcetate {
        FONT-SIZE: 8pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text Char"
}
SPAN.EmailStyle18 {
        COLOR: #1f497d; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal-reply
}
SPAN.BalloonTextChar {
        FONT-FAMILY: "Tahoma","sans-serif"; mso-style-priority: 99; mso-style-link: "Balloon Text"; mso-style-name: "Balloon Text Char"
}
.MsoChpDefault {
        FONT-SIZE: 10pt; mso-style-type: export-only
}
DIV.WordSection1 {
        page: WordSection1
}
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->

<div dir="ltr" align="left"><font face="Arial" color="#0000ff" size="2"><span class="661364304-28052012">Is there a way to detect from Erlang that windows just 
woke up from sleeping?</span></font></div><br>
<div class="OutlookMessageHeader" lang="en-us" dir="ltr" align="left">
<hr tabindex="-1">
<font face="Tahoma" size="2"><b>From:</b> David Mercer [mailto:dmercer@gmail.com] 
<br><b>Sent:</b> Friday, May 25, 2012 20:39<br><b>To:</b> József Bérces; 
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br><b>Subject:</b> RE: [erlang-questions] What 
causes nodes to become disconnected/reconnected?<br></font><br></div>
<div></div>
<div class="WordSection1">
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">These 
might be related, though.  You are right, my case does not occur due to the 
host going to sleep, but both my hosts are Windows, and perhaps something is 
happening – whether it be with the network, firewall, virus protection, or 
whatever – that is causing the nodes to get disconnected, and they do not 
properly reconnect when the temporary issue is resolved.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">It 
might be the same thing in the Windows port of Erlang that prevents them from 
reconnecting after sleep that is preventing my nodes from reconnecting after 
something else.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">Cheers,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'">DBM<o:p></o:p></span></p>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d; FONT-FAMILY: 'Calibri','sans-serif'"><o:p> </o:p></span></p>
<div style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
<div>
<div style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; PADDING-LEFT: 0in; PADDING-BOTTOM: 0in; BORDER-LEFT: medium none; PADDING-TOP: 3pt; BORDER-BOTTOM: medium none">
<p class="MsoNormal"><b><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">From:</span></b><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> 
<a href="mailto:erlang-questions-bounces@erlang.org">erlang-questions-bounces@erlang.org</a> [mailto:erlang-questions-bounces@erlang.org] 
<b>On Behalf Of </b>József Bérces<br><b>Sent:</b> Friday, May 25, 2012 4:30 
AM<br><b>To:</b> <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br><b>Subject:</b> Re: 
[erlang-questions] What causes nodes to become 
disconnected/reconnected?<o:p></o:p></span></p></div></div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">It is 
somewhat offtopic as I do not believe David experenced this, but I have 
similar disconnection when Windows goes to sleep. After the wake-up, the nodes 
do not see each other. Does anyone have any idea how to fix 
this?</span><o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">Thanks,</span><o:p></o:p></p>
<p class="MsoNormal"><span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'">Jozsef</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div class="MsoNormal" style="TEXT-ALIGN: center" align="center">
<hr align="center" width="100%" size="2">
</div>
<p class="MsoNormal" style="MARGIN-BOTTOM: 12pt"><b><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'">From:</span></b><span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'"> <a href="mailto:erlang-questions-bounces@erlang.org">erlang-questions-bounces@erlang.org</a> 
[<a href="mailto:erlang-questions-bounces@erlang.org">mailto:erlang-questions-bounces@erlang.org</a>] 
<b>On Behalf Of </b>Martynas Pumputis<br><b>Sent:</b> Friday, May 25, 2012 
16:24<br><b>To:</b> David Mercer<br><b>Cc:</b> <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br><b>Subject:</b> 
Re: [erlang-questions] What causes nodes to become 
disconnected/reconnected?</span><o:p></o:p></p>
<p class="MsoNormal" style="MARGIN-BOTTOM: 12pt">Erlang doesn't detect net splits 
by itself. You could start looking at net_kernel:set_net_ticktime/2 (try to 
increase this value if your node is suffering from high load/traffic) and 
kernel/src/dist_utils.erl to get a grasp how erlang handles node 
connections.<br><br>Martynas<o:p></o:p></p>
<div>
<p class="MsoNormal">On Thu, May 24, 2012 at 6:23 PM, David Mercer <<a href="mailto:dmercer@gmail.com" target="_blank">dmercer@gmail.com</a>> 
wrote:<o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">(Yes, I am still 
working on my issue with a distributed application that keeps losing its 
connection to the other node.)<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">It is not a 
problem only when I have 2 nodes on the <i>same</i> host.  I was running 
the nodes on <i>different</i> hosts last night, and this morning the failover 
node had lost its connection to the main and so had started its own instance of 
the application.  Calling <span style="FONT-FAMILY: Consolas">nodes()</span> on the failover returned <span style="FONT-FAMILY: Consolas">[]</span>.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">Then I started a 
new node on the same host as the main (to see if it would restore the 
connections), and, yes, it did.  After starting the third node, <span style="FONT-FAMILY: Consolas">nodes() </span>now on the failover node returns a 
list of two nodes, the two on the main host.  However, the application on 
the failover node did not shut down, and so it is still running on both the main 
and failover nodes.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">To 
summarize:<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p>1.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>Distributed application running on a node on host A (“main@A”), failover 
on node on host B (“failover@B”).<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p>2.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>At some point, <i>failover@B</i> becomes disconnected from <i>main@A</i>, 
and the application starts on <i>failover@B</i>.  Now there are two 
instances of the application running.<o:p></o:p></p>
<p> <o:p></o:p></p>
<p>3.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>From a network point of view, there is still (or again) a valid network 
connection between hosts A and B.  I can’t say for sure if some 
network/firewall/other issue caused a temporary disconnect, but I can say that 
by the time I got in this morning, when the application was running on both 
nodes, there was a firm network connection between the two hosts.<o:p></o:p></p>
<p> <o:p></o:p></p>
<p>4.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>Calling <span style="FONT-FAMILY: Consolas">nodes()</span> on 
<i>failover@B</i> returns <span style="FONT-FAMILY: Consolas">[]</span>.<o:p></o:p></p>
<p> <o:p></o:p></p>
<p>5.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>A new (failover) node was started on host A (“failover@A”).  It does 
not start the application (which is correct, since it is already running, albeit 
on <i>both</i> other nodes instead of just one).<o:p></o:p></p>
<p> <o:p></o:p></p>
<p>6.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>Calling <span style="FONT-FAMILY: Consolas">nodes()</span> on 
<i>failover@B</i> now returns <span style="FONT-FAMILY: Consolas">[failover@A,main@A]</span>.<o:p></o:p></p>
<p> <o:p></o:p></p>
<p>7.<span style="FONT-SIZE: 7pt; FONT-FAMILY: 'Times New Roman','serif'">       
</span>The application, however, is still running on <i>failover@B</i>, despite 
the fact that nodes/0 reports a connection to <i>main@A</i>.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">I don’t need 
someone to diagnose this for me.  If someone could just educate me a little 
on how the connections work, how net splits are detected and nodes disconnected, 
etc., I might be able to take it from there.  Anyone know enough and have 
the time to type out a little blurb?  I can read source code, but having a 
little background knowledge would help put it into context for 
me.<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">Thank-you!<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">Cheers,<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto">David<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"> <o:p></o:p></p></div></div>
<p class="MsoNormal" style="MARGIN-BOTTOM: 12pt"><br>_______________________________________________<br>erlang-questions 
mailing list<br><a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br><a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><o:p></o:p></p></div>
<p class="MsoNormal"><o:p> </o:p></p></div></div>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>erlang-questions mailing list</span><br><span><a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a></span><br><span><a href="http://erlang.org/mailman/listinfo/erlang-questions">http://erlang.org/mailman/listinfo/erlang-questions</a></span><br></div></blockquote></body></html>