Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.59.154.143] |
|
Сообщ.
#1
,
|
|
|
Здравствуйте.
В нашем проекте (на Mono под Debian), иногда, после рестарта апача возникает ошибка, которая после некоторых повторных рестартов исчезает. Сегодня начал искать причину. Вот собственно сама ошибка - Value 4186130014814077184 is outside the valid range [0,3155378975999999999]. Parameter name: ticks Description: HTTP 500. Error processing request. Stack Trace: System.ArgumentOutOfRangeException: Value 4186130014814077184 is outside the valid range [0,3155378975999999999]. Parameter name: ticks at System.DateTime..ctor (Int64 ticks) [0x0008a] in /tmp/buildd/mono-2.6.7/mcs/class/corlib/System/DateTime.cs:319 at System.DateTime.FromFileTime (Int64 fileTime) [0x00018] in /tmp/buildd/mono-2.6.7/mcs/class/corlib/System/DateTime.cs:793 at System.IO.File.GetLastWriteTime (System.String path) [0x00030] in /tmp/buildd/mono-2.6.7/mcs/class/corlib/System.IO/File.cs:293 at System.IO.File.GetLastWriteTimeUtc (System.String path) [0x00000] in /tmp/buildd/mono-2.6.7/mcs/class/corlib/System.IO/File.cs:298 at System.Web.Handlers.ScriptResourceHandler.CreateResourceUrl (System.Reflection.Assembly assembly, System.String resourceName, Boolean notifyScriptLoaded) [0x0006b] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs:203 at System.Web.Handlers.ScriptResourceHandler.InitEmbeddedResourcesUrls (System.Reflection.Assembly assembly, System.Collections.Hashtable hashtable) [0x00056] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs:79 at System.Web.Handlers.ScriptResourceHandler.GetResourceUrl (System.Reflection.Assembly assembly, System.String resourceName, Boolean notifyScriptLoaded) [0x0001d] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs:175 at System.Web.UI.ScriptReference.GetUrl (System.Web.UI.ScriptManager scriptManager, Boolean zip) [0x000dd] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web.Extensions/System.Web.UI/ScriptReference.cs:124 at System.Web.UI.ScriptManager.RegisterScriptReference (System.Web.UI.Control control, System.Web.UI.ScriptReference script, Boolean loadScriptsBeforeUI) [0x00007] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web.Extensions/System.Web.UI/ScriptManager.cs:820 at System.Web.UI.ScriptManager.OnPreRenderComplete (System.Object sender, System.EventArgs e) [0x002c6] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web.Extensions/System.Web.UI/ScriptManager.cs:570 at System.Web.UI.Page.OnPreRenderComplete (System.EventArgs e) [0x0002a] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.UI/Page.cs:2176 at System.Web.UI.Page.ProcessLoadComplete () [0x000bf] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.UI/Page.cs:1673 at System.Web.UI.Page.InternalProcessRequest () [0x001cb] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.UI/Page.cs:1555 at System.Web.UI.Page.ProcessRequest (System.Web.HttpContext context) [0x0005b] in /tmp/buildd/mono-2.6.7/mcs/class/System.Web/System.Web.UI/Page.cs:1372 Version information: Mono Runtime Version: 2.6.7 (Debian 2.6.7-5); ASP.NET Version: 2.0.50727.1433 После некоторых успешных поисков, нашел нечто подобное - http://stackoverflow.com/questions/5514031...lization-errors а также - https://bugzilla.novell.com/show_bug.cgi?id=660424 И насколько понял, дело в сериализации и десериализации значений класса DateTime. Получается если перевести число 3155378975999999999 из Binary то дает такое: d = DateTime.FromBinary(3155378975999999999); Console.WriteLine(d); returns 31.12.9999 23:59:59 Так понял, что это баг mono. И чтобы исправить, надо сделать изменения в файлах \mono\mcs\class\System.Runtime.Serialization\System.Xml\XmlBinaryDictionaryReader.cs \mono\mcs\class\System.Runtime.Serialization\System.Xml\XmlBinaryDictionaryWriter.cs Однако, найти эти файлы у себя я не смог. Кроме того, на локалке у меня ошибки такого рода не выходит. И я не понимаю где найти у себя эти файлы. Заранее благодарю за помощи. |