[Javalist] Adatbázis lock

Vig, Balázs balazs.vig at datasolutions.hu
2012. Sze. 14., P, 14:02:45 CEST


Köszönöm mindenkinek az építő hozzászólásokat, végül csak összehoztuk a
kérdésre a választ.

A select for update nowait megoldás hátránya, hogy csak tranzakción belül
működik. Ha a működési logika időközben commit-ot követel, akkor nem
működik.

Egy kicsit több adminisztrációval jár István megoldása, de működik
tranzakciókon keresztül is. Bár a lock feloldása nem automatikus, annak
tulajdonosa (megfelelő azonosító választása esetén) könnyen megtudható, és
így eldönthető, hogy mi legyen a további sorsa.

Üdv:
*Vig Balázs
*



2012. szeptember 14. 13:47 Keresztes Jozsef írta, <jkeresztes at vati.hu>:

> Lock ellenőrzés: SELECT … FROM … WHERE … FOR UPDATE OF … NOWAIT;****
>
> ** **
>
> Itt a lényeg a NOWAIT-en van, ami nem vár lock-olt rekord esetén hanem exception váltódik ki, azt meg tudod kezelni.****
>
> ** **
>
> ** **
>
> *From:* Vig, Balázs [mailto:balazs.vig at datasolutions.hu]
> *Sent:* Friday, September 14, 2012 1:43 PM
>
> *To:* Java lista
> *Subject:* Re: [Javalist] Adatbázis lock****
>
> ** **
>
> Kösz, ezt is ismertem. De ez is csak feltartja a másik klienst, nem pedig
> "elutasítja". És nem tudom ellenőrizni sem, hogy van-e lock.
>
> Üdv:
> *Vig Balázs
> *
>
>
>
> ****
>
> 2012. szeptember 14. 13:35 írta, <aszomor at szomor.hu>:****
>
> Idézet ("Vig, Balázs" <balazs.vig at datasolutions.hu>):****
>
> Sziasztok!
>
> Van egy Hibernate alapú kliensem, ami több példányban is futhat. A kliens
> feladata, hogy az adatbázis objektumokon műveleteket végezzen.
> Hogyan lehet azt garantálni, hogy egy objektummal csak az egyik kliens
> foglalkozhasson: ha az egyik már elkezdett dolgozni rajta, akkor másik már
> ne tudjon.
>
> Támogatja-e ezt valahogy a hibernate, vagy a jdbc? (eddig nem találtam erre
> semmit). Vagy nekem kell valami mókolnom az adatbázisban?
>
> Üdv:****
>
> *Vig Balázs
> *****
>
>
> The Select For Update statement allows you to lock the records in the
> cursor result set. You are not required to make changes to the records in
> order to use this statement. The record locks are released when the next
> commit or rollback statement is issued.
>
> Nem minden adatbázis kezelő támogatja ez JDBC-vel jó lehet.****
>
>
>
>
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist****
>
> ** **
>
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
>
>
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20120914/284ab6a9/attachment.html>


További információk a(z) Javalist levelezőlistáról