Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Prism OleDBConnection und wartende Datenbank Sassions (https://www.delphipraxis.net/100663-oledbconnection-und-wartende-datenbank-sassions.html)

Andi1985 2. Okt 2007 08:01


OleDBConnection und wartende Datenbank Sassions
 
Guten Morgen,

ich habe ein Problem und zwar bleiben gewisse Oracle Sassion bestehen obwohl ich meine
OleDBConnection mit folgendem ConnectionString aufrufe:

Delphi-Quellcode:
ConnectionString := 'Provider=OraOLEDB.Oracle;Connection Lifetime=120;Connection Timeout=30;Data Source=TEST;User Id=TEST;Password=TEST;Pooling=no;';
im Normalfall wird ein OleDBConnection.Close durchgeführt, allerdings nicht beim schließen des Browserfensters,
da ich das nicht abfangen kann. Aber selbst in diesem Fall sollte das Connection Lifetime greifen, tut es
aber nicht.

In der Datenbank laufen die Sassion weiter mit folgenden Werten:
Zitat:

SECONDS_IN_WAIT - STATE - WAIT_TIME - STATUS - EVENT
2846 - WAITING - 0 - INACTIVE - SQL *Net message from client
bitte um Hilfe,
Moggy

EDIT: ups, ich glaub das gehört ins Datenbanken Forum, aber könnte auch was mit .NET zu tun haben..

Bernhard Geyer 2. Okt 2007 08:30

Re: OleDBConnection und wartende Datenbank Sassions
 
Ich würde unter .NET nicht mehr den Umweg über OLEDB/ADO gehen sondern mir einen ADO.NET-Provider besorgen, z.B. von Core Labs.

Andi1985 2. Okt 2007 08:41

Re: OleDBConnection und wartende Datenbank Sassions
 
ich habe diverse Gründe bei OLEDB/ADO zu bleiben, gibt es eine andere Möglichkeit ?

Bernhard Geyer 2. Okt 2007 08:45

Re: OleDBConnection und wartende Datenbank Sassions
 
Zitat:

Zitat von Mogtar
ich habe diverse Gründe bei OLEDB/ADO zu bleiben, gibt es eine andere Möglichkeit ?

1, Neuerer Provider, da Oracle ja auch keine Fehlerhafte SW liefert
2, Im Entwickler-Forum hat Kosch glaube ich mal ein ähnliches Problem beantwortet. Evtl. mußt du ja einfach nur ein paar zusätzliche Methoden aufrufen da ja der OLEDB-Teil nicht managed Code ist und damit nicht unter der Kontrolle des Garbage Collectors liegt.

Andi1985 2. Okt 2007 09:12

Re: OleDBConnection und wartende Datenbank Sassions
 
hab den Beitrag gefunden:

Zitat:

a) SqlConnection: ConnectionString erweitern: Pooling=False

b) OleDbConnection: ConnectionString erweitern: OLE DB Services=-1;
da könnte der Fehler sein... ich probier das mal aus...

Andi1985 2. Okt 2007 09:33

Re: OleDBConnection und wartende Datenbank Sassions
 
scheint auch nicht zu funktonieren...
nun hab ich schon wieder 8 Oracle Session Dinger offen :cry:

hab gerade noch in einem Tutorial folgenden Satz gefunden:
Zitat:

Connection Pool is removed as soon as the associated app domain is unloaded. Once the app domain is unloaded, all the connections from the connection pool becomes invalid and are thus removed. Say for example, if you have an ASP.NET application, the connection pool gets created as soon as you hit the database very first time, and connection pool is destroyed as soon as we do iisreset.
aber das würde ja heißen, das ich den Apache immer restarten muss um die Pools zu kicken, das wäre ja total dämmlich.

?

Andi1985 2. Okt 2007 10:08

Re: OleDBConnection und wartende Datenbank Sassions
 
Ich hab gerade noch folgendes gefunden:

http://publib.boulder.ibm.com/infoce...tPoolTopic.htm

Andi1985 2. Okt 2007 11:22

Re: OleDBConnection und wartende Datenbank Sassions
 
bisher hat nichts geholfen, hat noch jemand eine Idee ?

Die Prozesse auf der Oracle Datenbank laufen weiterhin hoch, mitlerweile ist einer bei 15.000 Seconds,
der STATE von den Connection ist immer WAITING mit dem EVENT SQL *Net message from client, aber der
STATUS ist INACTIVE...

Andi1985 2. Okt 2007 11:47

Re: OleDBConnection und wartende Datenbank Sassions
 
Ich hab jetzt festgestellt das er bei einer Windows Forms Anwendung auch diesen Waiting Prozess stehn läst und erst wenn
man das Programm schließt er den Prozess bei Oracle killt...

Bei einer einfacheren ASP .NET Anwendung ist dies nicht der Fall beim schließen des Browserfensters.

Ich bin nun öfters auf den "garbage collector" gestoßen... könnte es damit zu tun haben ?
Allerdings gebe ich sämtlichen Speicher mit .Free oder .Dispose e.t.c. frei ?!

Andi1985 4. Okt 2007 06:33

Re: OleDBConnection und wartende Datenbank Sassions
 
guten morgen,

ich habe hierfür leider immer noch keine vernüpftige Lösung, hat nicht noch jemand eine Idee?


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:50 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz