Re: Tabelle bleibt gesperrt nach statement.close()
Von: chris (dontspam1@gmx.net) [Profil]
Datum: 05.10.2008 18:18
Message-ID: <gcapc6$qkq$00$1@news.t-online.com>
Newsgroup: de.comp.lang.java
Datum: 05.10.2008 18:18
Message-ID: <gcapc6$qkq$00$1@news.t-online.com>
Newsgroup: de.comp.lang.java
Lothar Kimmeringer wrote: > chris wrote: > >> ich habe eine Anwendung geschrieben die Daten aus einer DB verarbeitet . >> (DB/2 AS400) Nun ist mir aufgefallen, daß die Tables gesperrt bleibe n, >> wenn sie einmal in einem select benutzt wurden, obwohl alle statements >> von mir immer sofort mit statement.close() geschlossen werden, nachdem >> die Daten eingelesen wurden. > > Das kenne ich so als Verhalten eigentlich nur dann, wenn man eine > Transaktion beginnt (setAutocommit(false)). Ein connection.commit() > fuehrt bei DB/400 naemlich zur Ausfuehrung von "COMMIT HOLD", d.h. > bestehende Locks werden nicht aufgeloest. Man muss tatsaechlich > ein eigenes Statement aufmachen und "commit" ausfuehren, damit > der Lock freiwird. > > Bei manchen AS/400-Systemen bleibt die Tabelle dann aber weiterhin > als gelockt in der Uebersicht, jedoch verschwindet dieser in dem > Moment, wenn ein anderer Job darauf zugreift. > >> Macht das Sinn?? Wie kann ich das Locking-Verhalten der Anwendung >> verbessern? > > Die junit-Treiber haben eine ganze Reihe von Parametern. Evtl. ist da > auch einer fuer Dich dabei ;-) > > > Gruesse, Lothar Hallo, danke für die Anregungen. Das scheint mir eine Art Optimierung der Datenbank zu sein. Nach dem ersten Read ist die Tabelle nicht gesperrt. Aber sobald der gleiche Select auf dieser Connection (mit einem neuen frischen Statement) ausgeführt wird, ist die Tabelle gesperrt. Habs jetzt mit einem kleinen Testprog. ausprobiert: Lesen in Tabelle A --> keine Locks Lesen in Tabelle B --> keine Locks Lesen in Tabelle C --> keine Locks Lesen in Tabelle A --> A ist gelockt, B und C nicht Lesen in Tabelle B --> A und B ist geleockt usw. Das nervt, weil jetzt immer den ganzen Tag die Tabellen gelockt sind und nicht geändert werden können. Noch jemand eine Idee? danke Christopher[ Auf dieses Posting antworten ]
Antworten
- Achim Peters (05.10.2008 20:07)
- chris (05.10.2008 21:00)
- Bernd Hohmann (05.10.2008 22:32)
- chris (06.10.2008 07:53)
- Bernd Eckenfels (06.10.2008 21:49)
- chris (07.10.2008 08:10)
