Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
AccessViolationException im IIS
malignate
myCSharp.de - Member

Avatar #avatar-3206.png


Dabei seit:
Beiträge: 751

Themenstarter:

AccessViolationException im IIS

beantworten | zitieren | melden

Hallo zusammen,

mir knallt zur Zeit immer die Anwendung mit folgender Fehlermeldung (aus Windows Event Log) weg:

Fehler
Application: w3wp.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
Stack:
at System.Web.Hosting.UnsafeIISMethods.MgdIsLastNotification(IntPtr, System.Web.RequestNotificationStatus)
at System.Web.Hosting.UnsafeIISMethods.MgdIsLastNotification(IntPtr, System.Web.RequestNotificationStatus)
at System.Web.HttpRuntime.FinishRequestNotification(System.Web.Hosting.IIS7WorkerRequest, System.Web.HttpContext, System.Web.RequestNotificationStatus ByRef)
at System.Web.HttpRuntime.OnRequestNotificationCompletionHelper(System.IAsyncResult)
at System.Web.HttpRuntime.OnRequestNotificationCompletion(System.IAsyncResult)
at System.Web.HttpApplication+PipelineStepManager.ResumeSteps(System.Exception)
at System.Web.HttpApplication+CallHandlerExecutionStep.OnAsyncHandlerCompletion(System.IAsyncResult)
at System.Threading.Tasks.Task.Execute()
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(System.Threading.Tasks.Task ByRef)
at System.Threading.Tasks.Task.ExecuteEntry(Boolean)
at System.Threading.ThreadPoolWorkQueue.Dispatch()


Leider finde ich keine guten Informationen dazu, habe 0 Ideen, und auf Debugging mit WinDbg & Co. funtkioniert bei mir nicht richtig (dann ist die Webseite unerträglich langsam). Bin über Hilfe sehr dankbar.

Btw: Das ist ein Cross-Post, auf zu finden bei SO (aber ohne Lösung).
private Nachricht | Beiträge des Benutzers
vbprogger
myCSharp.de - Experte

Avatar #avatar-1820.gif


Dabei seit:
Beiträge: 1723
Herkunft: NRW/DE

beantworten | zitieren | melden

Versuch mal hiermit Debug with rules in Debug Diag um das Problem zu lokalisieren/analysieren,
Ich bin verantwortlich für das, was ich sage, nicht für das, was du verstehst.
---------
Bemerkung: ich beantworte keine Fragen via PM, denn das Forum soll ja was davon haben!
private Nachricht | Beiträge des Benutzers
malignate
myCSharp.de - Member

Avatar #avatar-3206.png


Dabei seit:
Beiträge: 751

Themenstarter:

beantworten | zitieren | melden

Habe ich bereits versucht, aber um ehrlich zu sein, es nicht zum Laufen gebracht.

Die Anwendung war dann so langsam, dass keine normale Benutzung mehr möglich war. Da der Fahler nur alle paar Stunden auftritt, ist das keine Option.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16234

beantworten | zitieren | melden

Damit Du evtl. eine Idee hast: der Fehler muss vor der Ausführung des ASP-Kerns auftreten, da er ansonsten ja von ASP gefangen werden könnte.
Das würde also betreffen: Handler oder alles, was innerhalb von Application_Start passiert.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
malignate
myCSharp.de - Member

Avatar #avatar-3206.png


Dabei seit:
Beiträge: 751

Themenstarter:

beantworten | zitieren | melden

Wieso vor der Ausführung, dann würde es ja nicht mitten im Betrieb knallen? Ich meine der StackTrace könnte ja auch anzeigen, dass der Fehler wirklich im Aufrufen, dieser Nativen Methode ist.

Erschwerend kommt noch hinzu, dass AccessViolationException nicht gefangen werden kann (siehe AccessViolationException-Klasse). Ich hatte auch diesen Config Eintrag mal aktiviert, das hat aber nicht gebracht. Weil ich eh jede Exception catche und logge, kann das nur zwei Dinge bedeuten: 1. Die Ursache ist nicht mit einem Request direkt verbunden (so klingt der Stacktrace aber nicht), 2. Der Exception tritt wie der StackTrace sagt, in dieser Unsafe-Methode auf, dann ist aber die Frage, was ist die Ursache?
private Nachricht | Beiträge des Benutzers
pdelvo
myCSharp.de - Member

Avatar #avatar-3354.png


Dabei seit:
Beiträge: 1407

beantworten | zitieren | melden

Hallo,

Hast du schonmal ein anderes System ausprobiert? Liegt es vielleicht daran? Ansonsten versuch mal mit git bisect (oder manuell mit binärer Suche) die Änderung rauszufinden, die den Fehler eingeführt hat.

LG pdelvo
private Nachricht | Beiträge des Benutzers
malignate
myCSharp.de - Member

Avatar #avatar-3206.png


Dabei seit:
Beiträge: 751

Themenstarter:

beantworten | zitieren | melden

Habe zwei Server am Laufen, beide das gleiche Problem. Bin nebenher immer wieder dabei mir Änderungen anzuschauen, ist aber schwierig (auch weil das Problem nicht gerade gestern erst auftrat).
private Nachricht | Beiträge des Benutzers