ServiceRelocationConnectionTimeout
このプロパティは、特定のOracleConnection
が、使用不可になったサービスへの接続を再試行するまで待機する時間を秒単位で指定します。
宣言
// C# public string ServiceRelocationConnectionTimeout { get; set;}
プロパティ・タイプ
System.String
例外
System.ObjectDisposedException
- OracleConnection
オブジェクトがすでに破棄されている場合は、このプロパティにアクセスできません。
FormatException
- 指定された文字列をSystem.Int32
に変換できません。
OverflowException
- 指定された文字列は、System.Int32.MinValue
未満またはSystem.Int32.MaxValue
より大きい数値を表しています。
備考
デフォルト値は90
(秒)です。
サービスが再配置されているためなどデータベース・サービスが使用できなくなるたびに、この時間、アプリケーションでは数多くの接続エラーが発生します。エラーを引き起こす、使用できないサービスに対する不要な接続の試行を回避するために、ドライバは、サービスのDOWN
イベントを受信した時点から、サービスが起動されるまで、またはこのプロパティで指定された時間制限が切れるまでのいずれか早いほうの時点まで、あらゆる接続の試行をブロックします。
ServiceRelocationConnectionTimeout
自体、drain_timeout
の値に基づいて設定されます。たとえば、ODP.NET管理者が、サービス再配置接続タイムアウトをdrain_timeout
に50
秒を加えた値にする場合は、ServiceRelocationConnectionTimeout
を次のように設定します。
//C# OracleConnection conn = new OracleConnection(); conn.ServiceRelocationConnectionTimeout = "drain_timeout + 50";
ServiceRelocationConnectionTimeout
プロパティは、OracleConnection
およびOracleConfiguration
オブジェクトで構成できます。デフォルトでは、OracleConnection
ServiceRelocationConnectionTimeout
プロパティ値は構成時にOracleConfiguration
ServiceRelocationConnectionTimeout
プロパティ値を継承します。OracleConnection
ServiceRelocationConnectionTimeout
の値は接続時に使用されます。