代码之家  ›  专栏  ›  技术社区  ›  Greg Hurlman

ORA-03113:ASP.NET应用程序长时间不活动后通信通道上的文件结束

  •  22
  • Greg Hurlman  · 技术社区  · 16 年前

    我在iis5上有一个负载平衡(不使用会话状态)的ASP.NET 2.0应用程序,它使用10.1.0.301版本的odac/odp.net驱动程序运行回单个Oracle10g服务器。经过长时间的不活动(几个小时),应用程序看起来是随机的,将抛出Oracle异常:

    异常:ORA-03113:通信通道上的文件尾,位于 oracle.dataaccess.client.oracleException.handleErrorHelper(Int32 错误代码,oracleconnection conn,intptr opserrctx,oposqlvalctx* poposqlvalctx,object src,string procedure)位于 oracle.dataaccess.client.oraclecommand.executereader(布尔查询, Boolean FillRequest,commandBehavior Behavior)位于 oracle.dataaccess.client.oraclecommand.system.data.idbcommand.executereader()。

    …堆栈的Oracle部分到此结束…

    我们正在根据每个请求创建新的连接,用try/catch/finally包住open&close,以确保正确的连接关闭,整个过程用一个using(oracleconnection yadayadayada)…块包住。此问题似乎与ASP.NET应用程序因不活动而关闭后的重新启动没有关联。

    我们还没有自己复制这个问题。思想,祈祷,帮助?


    更多: 通过检查,防火墙没有设置为终止这些服务器之间的连接。

    7 回复  |  直到 16 年前
        1
  •  16
  •   Kiquenet user385990    9 年前

        2
  •  7
  •   Christian13467    15 年前
        3
  •  5
  •   hamishmcn    16 年前

        4
  •  3
  •   j0k gauthamp    12 年前

    select log_mode from v$database;
    

    ARCHIVELOG NOARCHIVELOG

        5
  •  2
  •   BradleyDotNET Aniss    11 年前

        6
  •  1
  •   Nick Chammas    13 年前

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
    "DeadGWDetectDefault"=dword:00000001
    "KeepAliveTime"=dword:00120000
    

    KeepAliveTime