<div dir="ltr">From sources (<a href="https://github.com/mono/mono/blob/master/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapDocumentationHandler.cs">https://github.com/mono/mono/blob/master/mcs/class/System.Web.Services/System.Web.Services.Protocols/SoapDocumentationHandler.cs</a>):<br>
<br><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px"><pre style="font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;margin-top:0px;margin-bottom:0px;line-height:18px"><div class="" id="LC77" style="color:rgb(51,51,51);padding-left:10px">
                        <span class="" style="font-weight:bold">if</span> <span class="">(</span><span class="">key</span> <span class="">==</span> <span class="" style="color:rgb(221,17,68)">"wsdl"</span> <span class="">||</span> <span class="">key</span> <span class="">==</span> <span class="" style="color:rgb(221,17,68)">"schema"</span> <span class="">||</span> <span class="">key</span> <span class="">==</span> <span class="" style="color:rgb(221,17,68)">"code"</span> <span class="">||</span> <span class="">key</span> <span class="">==</span> <span class="" style="color:rgb(221,17,68)">"disco"</span><span class="">)</span></div>
<div class="" id="LC78" style="color:rgb(51,51,51);padding-left:10px">                              <span class="" style="font-weight:bold">return</span><span class="">;</span></div><div class="" id="LC79" style="color:rgb(51,51,51);padding-left:10px">
<br></div><div class="" id="LC80" style="color:rgb(51,51,51);padding-left:10px"><span class="" style="color:rgb(153,153,153);font-weight:bold">#if NET_2_0</span></div><div class="" id="LC81" style="color:rgb(51,51,51);padding-left:10px">
                        <span class="" style="color:rgb(68,85,136);font-weight:bold">string</span> <span class="">help</span> <span class="">=</span> <span class="">WebServicesSection</span><span class="">.</span><span class="">Current</span><span class="">.</span><span class="">WsdlHelpGenerator</span><span class="">.</span><span class="">Href</span><span class="">;</span></div>
<div class="" id="LC82" style="color:rgb(51,51,51);padding-left:10px">                      <span class="" style="color:rgb(68,85,136);font-weight:bold">string</span> <span class="">path</span> <span class="">=</span> <span class="">Path</span><span class="">.</span><span class="">GetDirectoryName</span> <span class="">(</span><span class="">ConfigurationManager</span><span class="">.</span><span class="">OpenMachineConfiguration</span><span class="">().</span><span class="">FilePath</span><span class="">);</span></div>
<div class="" id="LC83" style="color:rgb(51,51,51);padding-left:10px"><span class="" style="color:rgb(153,153,153);font-weight:bold">#else</span></div><div class="" id="LC84" style="color:rgb(51,51,51);padding-left:10px">
                        <span class="" style="color:rgb(68,85,136);font-weight:bold">string</span> <span class="">help</span> <span class="">=</span> <span class="">WSConfig</span><span class="">.</span><span class="">Instance</span><span class="">.</span><span class="">WsdlHelpPage</span><span class="">;</span></div>
<div class="" id="LC85" style="color:rgb(51,51,51);padding-left:10px">                      <span class="" style="color:rgb(68,85,136);font-weight:bold">string</span> <span class="">path</span> <span class="">=</span> <span class="">Path</span><span class="">.</span><span class="">GetDirectoryName</span> <span class="">(</span><span class="">WSConfig</span><span class="">.</span><span class="">Instance</span><span class="">.</span><span class="">ConfigFilePath</span><span class="">);</span></div>
<div class="" id="LC86" style="color:rgb(51,51,51);padding-left:10px"><span class="" style="color:rgb(153,153,153);font-weight:bold">#endif</span></div><div class="" id="LC87" style="padding-left:10px"><font color="#333333">                  </font><font color="#445588"><b>...</b></font></div>
<div class="" id="LC100" style="color:rgb(51,51,51);padding-left:10px"><br></div><div class="" id="LC101" style="color:rgb(51,51,51);padding-left:10px">                    <span class="" style="color:rgb(68,85,136);font-weight:bold">string</span> <span class="">physPath</span> <span class="">=</span> <span class="">Path</span><span class="">.</span><span class="">Combine</span> <span class="">(</span><span class="">path</span><span class="">,</span> <span class="">help</span><span class="">);</span></div>
</pre></blockquote><div class="gmail_extra"><br></div><div class="gmail_extra">So probably WebServicesSection.Current.WsdlHelpGenerator.Href is returning null or ConfigurationManager.OpenMachineConfiguration().FilePath is returning null.</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">For the first case, as this is read from current configuration which can be reread from time to time as any part of the configuration chain changes it is possible that either some of those MonoTodos in <a href="https://github.com/mono/mono/blob/master/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsdlHelpGeneratorElement.cs?source=cc">https://github.com/mono/mono/blob/master/mcs/class/System.Web.Services/System.Web.Services.Configuration/WsdlHelpGeneratorElement.cs?source=cc</a> are making things flaky:</div>
<div class="gmail_extra"><br></div><div class="gmail_extra"><pre style="font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;margin-top:0px;margin-bottom:0px;color:rgb(51,51,51);line-height:18px">
<div class="" id="LC57" style="padding-left:10px"><span class="" style="color:rgb(0,128,128)">                [MonoTODO ("probably verifies the Href property here, after deserializing?")]</span></div></pre></div>
<div class="gmail_extra"><pre style="font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;margin-top:0px;margin-bottom:0px;color:rgb(51,51,51);line-height:18px"><div class="" id="LC58" style="padding-left:10px">
                <span class="" style="font-weight:bold">protected</span> <span class="" style="font-weight:bold">override</span> <span class="" style="font-weight:bold">void</span> <span class="" style="color:rgb(153,0,0);font-weight:bold">DeserializeElement</span> <span class="">(</span><span class="">XmlReader</span> <span class="">reader</span><span class="">,</span> <span class="" style="color:rgb(68,85,136);font-weight:bold">bool</span> <span class="">serializeCollectionKey</span><span class="">)</span></div>
<div class="" id="LC59" style="padding-left:10px">          <span class="">{</span></div><div class="" id="LC60" style="padding-left:10px">                 <span class="" style="font-weight:bold">base</span><span class="">.</span><span class="">DeserializeElement</span> <span class="">(</span><span class="">reader</span><span class="">,</span> <span class="">serializeCollectionKey</span><span class="">);</span></div>
<div class="" id="LC61" style="padding-left:10px">          <span class="">}</span></div><div class="" id="LC62" style="padding-left:10px"><br></div><div class="" id="LC63" style="padding-left:10px"><span class="" style="color:rgb(0,128,128)">               [MonoTODO]</span></div>
<div class="" id="LC64" style="padding-left:10px">          <span class="" style="font-weight:bold">protected</span> <span class="" style="font-weight:bold">override</span> <span class="" style="font-weight:bold">void</span> <span class="" style="color:rgb(153,0,0);font-weight:bold">Reset</span> <span class="">(</span><span class="">ConfigurationElement</span> <span class="">parentElement</span><span class="">)</span></div>
<div class="" id="LC65" style="padding-left:10px">          <span class="">{</span></div><div class="" id="LC66" style="padding-left:10px">                 <span class="" style="font-weight:bold">base</span><span class="">.</span><span class="">Reset</span> <span class="">(</span><span class="">parentElement</span><span class="">);</span></div>
<div class="" id="LC67" style="padding-left:10px">          <span class="">}</span></div></pre></div><div class="gmail_extra"><br></div><div class="gmail_extra">or some locking is missing to avoid reading an incomplete current configuration instance...</div>
<div class="gmail_extra"><div class="gmail_extra"><br></div></div><div class="gmail_extra">As for the second case after much navigating through sources it comes down to calling an internal call <span style="white-space:pre">'</span>string get_machine_config_path ()' which I don't have time now to try to explore...</div>
<div class="gmail_extra"><br></div><div class="gmail_extra">Hope it helps,</div><div class="gmail_extra"><br clear="all"><div>Rafael Teixeira<br>O..:.)oooo<br></div>
<br><br><div class="gmail_quote">On Wed, Aug 21, 2013 at 8:05 AM, Vladimir Dimitrov <span dir="ltr"><<a href="mailto:vlad.dimitrov@gmail.com" target="_blank">vlad.dimitrov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
Hey guys,<br>
<br>
I have worked with mono for almost 7 years but I recently got involved in a project that used mono web services and apache together on Linux.<br>
<br>
The problem is that as the load on the service started to rise we started getting different errors which appear in random intervals.<br>
<br>
One of the errors is described here: <a href="https://bugzilla.novell.com/show_bug.cgi?id=522631" target="_blank">https://bugzilla.novell.com/<u></u>show_bug.cgi?id=522631</a> (not by me). And attempting to fix it I added some configuration that caused another error to appear once: <a href="http://img577.imageshack.us/img577/4473/44in.png" target="_blank">http://img577.imageshack.us/<u></u>img577/4473/44in.png</a><br>

<br>
The only common spot between the errors seem to be the configuration. Looks like at some point it becomes invalid. This sometimes happens after the service gets restarted, but sometimes it happens while the service is running normally. A restart of apache usually fixes the problem.<br>

<br>
Does anybody else encountered something similar or have an idea what can be the problem?<br>
<br>
Thanks,<br>
 Vladimir<br>
<br>
<br>
______________________________<u></u>_________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com" target="_blank">Mono-devel-list@lists.ximian.<u></u>com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/<u></u>mailman/listinfo/mono-devel-<u></u>list</a><br>
</blockquote></div><br></div></div>