[Mono-list] Mono 2.4 thread aborted

Peter Hagen peter at wingsofdeath.nu
Wed Apr 8 04:25:19 EDT 2009


Hi

I upgraded Mono to 2.4 on my webserver, and everything seemed to work 
perfectly. I'm running a asp.net/mod-mono application. Sometimes I 
execute some shell command, and here were it goes wrong. I can't really 
figure out what the problem is.

Normally I did a chmod on newly created directories with a Process. But 
since the update when executing the process, my Thread was aborted and I 
get an exception from the webserver. Now I changed this code to use the 
Mono.Unix assembly. This is the code I use:

if (child.HasAttribute("mod"))
{
   int num = Int32.Parse(child.GetAttribute("mod"), 
System.Globalization.NumberStyles.HexNumber);

   Mono.Unix.Native.Syscall.chmod(path, 
(Mono.Unix.Native.FilePermissions) num);
}

When I execute this, I get the following exception, and again my thread 
is being aborted:

System.Threading.ThreadAbortException: Thread was being aborted
   at (wrapper managed-to-native) Mono.Unix.Native.Syscall:sys_chmod 
(string,uint)
   at Mono.Unix.Native.Syscall.chmod (System.String path, 
FilePermissions mode) [0x00000]
   at Willow.Cms.WebControls.WillowFormControl._ExecuteActionXmlNode 
(iWillowXmlElementControl element, Willow.Common.WillowXmlElement child, 
Willow.Cms.Common.ActionResult actionResult) [0x00000]
   at Willow.Cms.WebControls.WillowFormControl._ExecuteActionXML 
(iWillowXmlElementControl element, Willow.Common.WillowXmlElement xml, 
Willow.Cms.Common.ActionResult actionResult) [0x00000]

I did try other 'shell executes' with the process object, and they seem 
to go without problems. It only happens on the 
Mono.Unix.Native.Syscall.chmod or using a shell command with chmod.

So it looks like that mod-mono is monitoring the root of the website, 
and triggers a reload of the website on every change on that directory. 
But this can't be right. Normally it only triggers on bin and web.config.

Any suggestions?

Cheers

Peter


More information about the Mono-list mailing list