Verbindungen zu unserer Oracle Datenbank werden durch eine Firewall geleitet, was auch grundsätzlich funktioniert. Nun gibt es eine Reihe von Situationen, in denen die Firewall Verbindungen dropped, d.h. nicht mehr weiterleitet. Auf Netzwerkebene sieht es dann so aus, dass die tcp-Verbindung zur Datenbank erhalten bleibt, gesendete Daten aber durch die Firewall nicht weiter zum Server geleitet werden. In einem Snoop habe ich beobachtet, dass ein Request (ausführen eines SQL Statement) erfolgreich vom client versandt und von der Firewall geACKt wird. Der Oracle Client wartet nun einige Zeit auf die Antwort von der Datenbank und führt nach ca. 2 Minuten einen Retry auf TNS Ebende durch. Dieser Vorgang wiederholt sich über einen Zeitraum von 8 bis 10 Minuten, dann wird eine Fehler zur aufrufenden Funktion zurückgemeldet.
Ich suche nun eine Möglichkeit, die Zeitspanne bis zu einem Retry und die Anzahl der Retries des TNS Protokolls zu konfigurieren. Ich habe eine Option FAILOVER gefunden, die in tnsnames.ora diese Parameter für den Verbindungsaufbau konfiguriert. Nach meinem Verständnis werden diese Parameter aber NUR für den Verbindungsauf verwendet. Gibt es noch andere Möglichkeiten, die von mir gesuchten Parameter zu konfigurieren?
Gibt es andere Alternativen, etwa Client Parameter?
Mein Ziel ist das Erreichen einer kleineren Reaktionszeit, d.h. die Applikation hängt nicht mehr 10 Minuten sondern nur noch 2 Minuten bis zum Erkennen des Fehlers und führt dann einen Reconnect aus.
Markus