Re: [Mono-dev] DeadLock Problem in ASP.NET (GAMIN)
Hi Gonzalo, I've investigated on my deadlock problem. It seems that this problem comes from GAMIN. I explain: I'm running a big (more than 50 aspx, ascx) web application. If I run a precompilation page (see the attached aspx.cs) Mono, will compile about 20 pages, and will lock forever... If you send a SIGQUIT to mod_mono_server you will obtain that some thread do : - tid=0x0xb646bbb0 this=0x0x3893c0: - in (wrapper managed-to-native) System.IO.FAMWatcher:gamin_MonitorDirectory (System.IO.FAMConnection,string,System.IO.FAMRequest,intptr) 0x4 - in (wrapper managed-to-native) System.IO.FAMWatcher:gamin_MonitorDirectory (System.IO.FAMConnection,string,System.IO.FAMRequest,intptr) 0xffbf - in System.IO.FAMWatcher:FAMMonitorDirectory (System.IO.FAMConnection,string,System.IO.FAMRequest,intptr) 0x1f - in System.IO.FAMWatcher:StartMonitoringDirectory (System.IO.FAMData,bool) 0x7d - in System.IO.FAMWatcher:StartDispatching (System.IO.FileSystemWatcher) 0x192 - in System.IO.FileSystemWatcher:Start () 0x17 - in System.IO.FileSystemWatcher:set_EnableRaisingEvents (bool) 0x27 - in (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:set_EnableRaisingEvents (bool) 0xffba2006 So the gamin_MonitorDirectory will never end and block all the other thread... The only way to force compilation contunation is to kill gam_server... The compilation will continue, compile 5 page, and will block again!! I've tried to remove gamin from my linux... and suprise!!! It work well, without gamin! Is there a way to tell mono, not to use gamin, for FAMWatcher, even if gamin is installed? My version of gamin, is the last one: 0.1.7 I'will try to do a test case with many aspx files, to show you the problem! Thanks in advance Le mardi 25 avril 2006 18:03 -0700, Gonzalo Paniagua Javier a crit : On Tue, 2006-04-25 at 18:25 +0200, Hubert FONGARNAND wrote: Hi Gonzalo, It seems that i've another deadlock problem, but it's very hard to reproduce exactly I've send a SIGQUIT to mod_mono_server to do a thread dump : Can you provide more data here? Specifically, the @Page or @Control directive for the page/control that is being compiled and anything else that helps reproducing the problem. -Gonzalo ___Ce message et les éventuels documents joints peuvent contenir des informations confidentielles.Au cas où il ne vous serait pas destiné, nous vous remercions de bien vouloir le supprimer et en aviser immédiatement l'expéditeur. Toute utilisation de ce message non conforme à sa destination, toute diffusion ou publication, totale ou partielle et quel qu'en soit le moyen est formellement interdite.Les communications sur internet n'étant pas sécurisées, l'intégrité de ce message n'est pas assurée et la société émettrice ne peut être tenue pour responsable de son contenu. using System; using System.Collections; using System.ComponentModel; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Net; using System.IO; using System.Globalization; using System.Web.Security; namespace IntranetAdmin { /// summary /// Description résumée de PreCompile. /// /summary public class PreCompile : System.Web.UI.Page { protected System.Web.UI.WebControls.Label Label4; protected System.Web.UI.WebControls.Panel pnlWarning; System.Net.Cookie biscuit=null; private void Page_Load(object sender, System.EventArgs e) { Server.ScriptTimeout=600; Response.Clear(); Response.Write(@HTML HEAD titlePreCompile/title meta http-equiv='Content-Type' content='text/html;charset=utf-8' LINK href='General.css' type='text/css' rel='stylesheet' /HEAD body); //Création du cookie d'authentification temporaire FormsAuthenticationTicket ticketauth = new FormsAuthenticationTicket(1,PreCompileDummy,DateTime.Now,DateTime.Now.AddHours(1),false,fr+|+PreCompileDummyId); string cryptedTicket = FormsAuthentication.Encrypt(ticketauth); biscuit = new System.Net.Cookie(FormsAuthentication.FormsCookieName,cryptedTicket); biscuit.Domain=localhost; //Compilation PreCompileAspx(); Response.Write(BRBRCompilation terminée.); Response.Write(@/body/html); Response.End(); } /// summary /// PreCompile all ASPX pages for the current application. /// /summary public void PreCompileAspx() { string rootDirectory = Request.PhysicalApplicationPath; Response.Write(Server path is + rootDirectory); string url = Request.RawUrl; Response.Write(brVirtual path is + url); //Get the virtual root directory. int index = url.LastIndexOf('/'); string virtualDirectory = url.Substring(0,index+1); Response.Write(brVirtual directory is + virtualDirectory + brbr); ArrayList arrayList = GenerateUriList(rootDirectory,http://localhost; + virtualDirectory); TimeSpan totalSeconds=new TimeSpan(0); foreach(string uri in arrayList)
Re: [Mono-dev] DeadLock Problem in ASP.NET
Le mardi 25 avril 2006 18:03 -0700, Gonzalo Paniagua Javier a crit: On Tue, 2006-04-25 at 18:25 +0200, Hubert FONGARNAND wrote: Hi Gonzalo, It seems that i've another deadlock problem, but it's very hard to reproduce exactly I've send a SIGQUIT to mod_mono_server to do a thread dump : Can you provide more data here? Specifically, the @Page or @Control directive for the page/control that is being compiled and anything else that helps reproducing the problem. -Gonzalo The only thing i can provide in the aspx... that sometimes fails... but the entire application is made of more 150 aspx/ascx files... But as i said, I can't reproduce this bug all the time... Thanks Hubert ___Ce message et les éventuels documents joints peuvent contenir des informations confidentielles.Au cas où il ne vous serait pas destiné, nous vous remercions de bien vouloir le supprimer et en aviser immédiatement l'expéditeur. Toute utilisation de ce message non conforme à sa destination, toute diffusion ou publication, totale ou partielle et quel qu'en soit le moyen est formellement interdite.Les communications sur internet n'étant pas sécurisées, l'intégrité de ce message n'est pas assurée et la société émettrice ne peut être tenue pour responsable de son contenu. %@ Register TagPrefix=uc1 TagName=CoMenu Src=CoMenu.ascx % %@ Register TagPrefix=jlc Namespace=JLovell.WebControls Assembly=StaticPostBackPosition % %@ Register TagPrefix=uc1 TagName=CoSearchApplication Src=CoSearchApplication.ascx % %@ Page language=c# Codebehind=PageSearchApp.aspx.cs AutoEventWireup=false Inherits=IntranetAdmin.PageSearchApp % !DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN HTML HEAD titlePageSearchApp/title meta name=GENERATOR Content=Microsoft Visual Studio .NET 7.1 meta name=CODE_LANGUAGE Content=C# meta name=vs_defaultClientScript content=JavaScript meta name=vs_targetSchema content=http://schemas.microsoft.com/intellisense/ie5; meta http-equiv=Content-Type content=text/html;charset=utf-8 LINK href=General.css type=text/css rel=stylesheet /HEAD body MS_POSITIONING=FlowLayout bottomMargin=2 leftMargin=2 topMargin=2 rightMargin=2 form id=Form1 method=post runat=server CENTER TABLE id=Table1 cellSpacing=1 cellPadding=1 width=998 border=0 TR TD uc1:CoMenu id=COM runat=server/uc1:CoMenuBR TABLE class=MainContour id=TCoU cellSpacing=0 cellPadding=0 width=100% border=0 runat=server TR TD uc1:CoSearchApplication id=SA runat=server/uc1:CoSearchApplication/TD /TR /TABLE /TD /TR /TABLE /CENTER /form BR jlc:StaticPostBackPosition id=SPBP runat=server/jlc:StaticPostBackPosition /body /HTML %@ Control Language=c# AutoEventWireup=false Codebehind=CoSearchApplication.ascx.cs Inherits=IntranetAdmin.CoSearchApplication TargetSchema=http://schemas.microsoft.com/intellisense/ie5% asp:panel id=P Width=100% CssClass=BGTFonceTitres runat=server TABLE id=Table2 cellSpacing=0 cellPadding=0 width=100% border=0 TR TD align=center width=22 height=22 asp:Image id=imgEvt runat=server ImageUrl=icones/loupe.gif/asp:Image/TD TD height=22 asp:Label id=lblTitre runat=server CssClass=LabelBigSélectionnez une application/asp:Label/TD TD align=center height=22/TD TD align=center width=21 height=22/TD /TR /TABLE /asp:panelasp:panel id=pA Width=100% CssClass=PnlTitre2 runat=server TABLE id=T1 style=PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 1px; PADDING-TOP: 1px height=22 cellSpacing=0 cellPadding=0 width=100% border=0 TR TD asp:label id=lblSousTitre runat=server CssClass=Label ForeColor=#0A246ARecherche/asp:label/TD TD align=right/TD TD
Re: [Mono-dev] DeadLock Problem in ASP.NET
Hi Gonzalo, It seems that i've another deadlock problem, but it's very hard to reproduce exactly I've send a SIGQUIT to mod_mono_server to do a thread dump : - Full thread dump: - - tid=0x0xb6ca0bb0 this=0x0x152f00: - in (wrapper managed-to-native) System.Threading.WaitHandle:WaitOne_internal (intptr,int,bool) 0x4 - in (wrapper managed-to-native) System.Threading.WaitHandle:WaitOne_internal (intptr,int,bool) 0xda4 - in System.Threading.WaitHandle:WaitOne (int,bool) 0x34 - in Runner:Start () 0xe6 - in (wrapper delegate-invoke) System.MulticastDelegate:invoke_void () 0x57558 - in (wrapper runtime-invoke) System.Object:runtime_invoke_void (object,intptr,intptr,intptr) 0x513ce369 - - tid=0x0xb5db7bb0 this=0x0x2562bb0: - in (wrapper managed-to-native) System.Threading.Monitor:Monitor_try_enter (object,int) 0x4 - in (wrapper managed-to-native) System.Threading.Monitor:Monitor_try_enter (object,int) 0xffb3 - in System.Threading.Monitor:Enter (object) 0x13 - in System.IO.FAMWatcher:StartDispatching (System.IO.FileSystemWatcher) 0x27 - in System.IO.FileSystemWatcher:Start () 0x17 - in System.IO.FileSystemWatcher:set_EnableRaisingEvents (bool) 0x27 - in (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:set_EnableRaisingEvents (bool) 0xffba2006 - in System.Web.Caching.CacheDependency:.ctor (string[],string[],System.Web.Caching.CacheDependency,System.DateTime) 0x246 - in System.Web.Caching.CacheDependency:.ctor (string[]) 0x31 - in System.Web.Compilation.AspGenerator:GetCompiledType () 0x11e - in System.Web.UI.UserControlParser:CompileIntoType () 0x27 - in System.Web.UI.UserControlParser:GetCompiledType (string,string,System.Collections.ArrayList,System.Web.HttpContext) 0x2e - in System.Web.UI.TemplateControlParser:AddDirective (string,System.Collections.Hashtable) 0x304 - in System.Web.Compilation.AspGenerator:TagParsed (System.Web.Compilation.ILocation,System.Web.Compilation.TagType,string,System.Web.Compilation.TagAttributes) 0x1be - in (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_ILocation_TagType_string_TagAttributes (System.Web.Compilation.ILocation,System.Web.Compilation.TagType,string,System.Web.Compilation.TagAttributes) 0xfff3 - in System.Web.Compilation.AspParser:OnTagParsed (System.Web.Compilation.TagType,string,System.Web.Compilation.TagAttributes) 0x23 - in System.Web.Compilation.AspParser:Parse () 0x159 - in System.Web.Compilation.AspGenerator:Parse (string) 0x28 - in System.Web.Compilation.AspGenerator:Parse () 0x2c - in System.Web.Compilation.AspGenerator:GetCompiledType () 0x9f - in System.Web.UI.PageParser:CompileIntoType () 0x27 - in System.Web.UI.TemplateControlParser:GetCompiledInstance () 0x10 - in System.Web.UI.PageParser:GetCompiledPageInstance (string,string,System.Web.HttpContext) 0x37 - in System.Web.UI.PageHandlerFactory:GetHandler (System.Web.HttpContext,string,string,string) 0x10 - in System.Web.HttpApplication:GetHandler (System.Web.HttpContext) 0x1a3 - in Pipeline__1:MoveNext () 0x806 - in System.Web.HttpApplication:Tick () 0x1c - in System.Web.HttpApplication:Start (object) 0xcf - in System.Web.HttpApplication:System.Web.IHttpAsyncHandler.BeginProcessRequest (System.Web.HttpContext,System.AsyncCallback,object) 0x70 - in System.Web.HttpRuntime:RealProcessRequest (object) 0x1ab - in System.Web.HttpRuntime:ProcessRequest (System.Web.HttpWorkerRequest) 0x2a - in Mono.WebServer.MonoWorkerRequest:ProcessRequest () 0xa - in Mono.WebServer.BaseApplicationHost:ProcessRequest (Mono.WebServer.MonoWorkerRequest) 0x43 - in Mono.WebServer.ModMonoApplicationHost:ProcessRequest (int,string,string,string,string,string,int,string,int,string,string[],string[]) 0xd3 - in (wrapper remoting-invoke-with-check) Mono.WebServer.ModMonoApplicationHost:ProcessRequest (int,string,string,string,string,string,int,string,int,string,string[],string[]) 0xff0c - in (wrapper xdomain-dispatch) Mono.WebServer.ModMonoApplicationHost:ProcessRequest (object,byte[],byte[],int,string,string,string,string,string,int,string,int,string,string[],string[]) 0xb071 - in (wrapper xdomain-invoke) Mono.WebServer.ModMonoApplicationHost:ProcessRequest (int,string,string,string,string,string,int,string,int,string,string[],string[]) 0xff6a - in (wrapper remoting-invoke-with-check) Mono.WebServer.ModMonoApplicationHost:ProcessRequest (int,string,string,string,string,string,int,string,int,string,string[],string[]) 0x46acca - in Mono.WebServer.ModMonoWorker:InnerRun (object) 0x57a - in Mono.WebServer.ModMonoWorker:Run (object) 0x17 - in (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object (object) 0xff95 - in (wrapper runtime-invoke) System.Object:runtime_invoke_void_object (object,intptr,intptr,intptr) 0x50f8c3c4 - - tid=0x0xb66b5bb0 this=0x0x210c0: - in (wrapper managed-to-native) System.Threading.WaitHandle:WaitOne_internal (intptr,int,bool) 0x4 - in (wrapper managed-to-native)
Re: [Mono-dev] DeadLock Problem in ASP.NET
On Tue, 2006-04-25 at 18:25 +0200, Hubert FONGARNAND wrote: Hi Gonzalo, It seems that i've another deadlock problem, but it's very hard to reproduce exactly I've send a SIGQUIT to mod_mono_server to do a thread dump : Can you provide more data here? Specifically, the @Page or @Control directive for the page/control that is being compiled and anything else that helps reproducing the problem. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] DeadLock Problem in ASP.NET
Hi Gonzalo I've just highlight an important deadlock problem in ASP.NET on mono Please take on look on : http://bugzilla.ximian.com/show_bug.cgi?id=78149 Thanks! -- Hubert FONGARNAND [EMAIL PROTECTED] Fiducial ___Ce message et les éventuels documents joints peuvent contenir des informations confidentielles.Au cas où il ne vous serait pas destiné, nous vous remercions de bien vouloir le supprimer et en aviser immédiatement l'expéditeur. Toute utilisation de ce message non conforme à sa destination, toute diffusion ou publication, totale ou partielle et quel qu'en soit le moyen est formellement interdite.Les communications sur internet n'étant pas sécurisées, l'intégrité de ce message n'est pas assurée et la société émettrice ne peut être tenue pour responsable de son contenu. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] DeadLock Problem in ASP.NET
On Thu, 2006-04-20 at 18:46 +0200, Hubert FONGARNAND wrote: Hi Gonzalo I've just highlight an important deadlock problem in ASP.NET on mono Please take on look on : http://bugzilla.ximian.com/show_bug.cgi?id=78149 I think it's already fixed. Please retest and follow up in bugzilla. Thanks. -Gonzalo ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list