none
サーバーエラーMutexは作成できませんでした。が発生する RRS feed

  • 質問

  • こんにちは

    Webシステムで「Mutexは作成できませんでした。」が発生しました。

    他コンピュータの画像ファイルを呼び出し表示するためWeb.Configの”<identity impersonate”を”true”にし
    ユーザID,パスワードを指定していますが、このユーザIDを変更し12時間ほど経過したときに上記エラーが
    発生しました。
    サーバーエラー発生後は、どのページにアクセスしてもこのエラーが表示され、ユーザIDをもとに戻しサーバー
    を再起動したところ動作するようになりました。

    原因と対策をお教えください。

    稼働環境は
    Windows2003Server
    .NET Framework1.1

    エラーログ
    Mutexは作成できませんでした。

    アプリケーションでサーバーエラーが発生しました。
    Mutexは作成できませんでした。
    説明:現在のWeb要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所についてはスタックトレースを参照してください。
    例外の詳細:System.InvalidOperationException: Mutexは作成できませんでした。
    ソースエラー:
    現在のWeb要求の実行中にハンドルされていない例外が発生しました。障害の原因及び発生場所に関する情報については、下の例外スタックトレースを使って確認できます。
    スタックトレース:
    [InvalidOperationException:Mutexは作成できませんでした。]
      System.Web.Compilation.CompilationMutex..ctor(Boolean initialOwner, String name, String comment) +245
      System.Web.Compilation.CompilationLock..cctor() +112
    [TypeInitializationException: "System.Web.Compilation.CompilationLock" のタイプ初期化子が例外をスローしました]
      System.Web.UI.TemplateParser.GetParserCasheItemInternal(Boolean fCreateIfNotFoun) +20
      System.Web.UI.TemplateParser.GetParserCasheItem() +32
      System.Web.UI.ApplicationFileParser.GetCompiledApplicationType(String inputFile, HttpContext context,ApplicationFileParser& parser) +171
      System.Web.HttpApplicationFactory.compileApplication(HttpContext context) +43
      System.Web.HttpApplicationFactory.Init(HttpContext context) +484
      System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context) +170
      System.Web.HttpRunTime.ProcessRequestInternal(HttpWorkerRequest wr) +414
    バージョン情報:Microsoft.NET Framework バージョン:1.1.4322.2300; ASP.NET Version:1.1.4322.2300

    以上 よろしくお願いします。

    2009年11月17日 2:40

回答

  • Web.configが変更されるとプロセスは再起動されます。私が先に紹介したフォーラムに以下のリンクがあります。

    System.InvalidOperationException: Mutex could not be created.
    http://blogs.msdn.com/jorman/archive/2006/07/24/system-invalidoperationexception-mutex-could-not-be-created.aspx

    これによると、Mutexの問題はランダムで発生するとあります。

    はっきり私も原因がわからずに申し訳ないのですが、

    aspnet_regiis -ga ドメイン名\ユーザ
    iisreset

    を試してしばらく様子を見るしかないのかもしれません・・・
    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    2009年11月17日 8:00
    モデレータ

すべての返信

  • 以下はASP.NET2.0の例ですが、参考になるかもしれません。斜め読みした限りでは、そのユーザーがレジストリへの権限が無いようです。

    Mutex Could not be Created.
    http://forums.asp.net/t/936236.aspx?PageIndex=2


    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    2009年11月17日 5:11
    モデレータ
  • ご回答ありがとうございます。
    大変助かりました。

    aspnet_regiis -ga ドメイン名\ユーザを実行後、サーバを再起動しなければいけない。とのことのようですが、少しわからない部分があるので教えてください。

    Web.configのユーザ名変更後、しばらくは動作していたということは、IISのプロセスは変更前のユーザで動いていて、リサイクルが起こり再起動したタイミングで変更後のユーザで動いてしまい、エラーとなった。 ということでしょうか。
    2009年11月17日 5:47
  • Web.configが変更されるとプロセスは再起動されます。私が先に紹介したフォーラムに以下のリンクがあります。

    System.InvalidOperationException: Mutex could not be created.
    http://blogs.msdn.com/jorman/archive/2006/07/24/system-invalidoperationexception-mutex-could-not-be-created.aspx

    これによると、Mutexの問題はランダムで発生するとあります。

    はっきり私も原因がわからずに申し訳ないのですが、

    aspnet_regiis -ga ドメイン名\ユーザ
    iisreset

    を試してしばらく様子を見るしかないのかもしれません・・・
    ★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://blogs.wankuma.com/trapemiya/
    2009年11月17日 8:00
    モデレータ
  • お世話になっております。

    >これによると、Mutexの問題はランダムで発生するとあります。
    すみません。見落としていました。

    このエラーが発生すると、全ユーザが2度とアクセスできなくなってしまうので、
    しばらくほとぼりを冷ましてからお教えいただいた内容を試してみたいと思います。

    ありがとうございました。
    2009年11月17日 8:33