Hirdetés

Új hozzászólás Aktív témák

  • M_AND_Ms
    veterán

    Ez szerintem attól is függ, hogy éppen van-e aktív tranzakció. A tranzakció a commit-tel lesz sikeres, ergó ebben az esetben kell visszaírni a változásokat. Ha csak simán nyomunk egy close-t a Session-ra, akkor ugye teljesen attól függ(sometimes), hogy éppen van-e valami tranzakció. Mert egy close a commit nélkül eredménytelen elvileg...

    A fax se tudja. DB függő is lehet, illetve JDBC implementáció......

    "A tranzakció a commit-tel lesz sikeres, ergó ebben az esetben kell visszaírni a változásokat."

    Általános adatbázis működést feltételezve nem a COMMIT-nál kell kiírni a változásokat, hanem az utasítás végrehajtásakor egyből. A COMMIT-nál érvényre jutnak a már kiírt változások, vagyis a többi db session számára is elérhetők lesznek. Pl tudni kell olyat is, hogy vannak bizonyos adatbázis-kezelőkben olyan típusú objektumok, amik csak a COMMIT-ig tartalmazzák a beléjük írt adatot, és pont a COMMIT után tűnnek el onnét (pl Oracle-ben a global temporary táblák ). Ezeknél kifejezetten rosszul jönne, ha egy perzisztenciakezelő csak a COMMIT-nál írná ki a változásokat a DB-be.

    "Mert egy close a commit nélkül eredménytelen elvileg"
    Hogy egy close a COMMITnélkül mire megy? Ez JDBC függő, ill., ennek viselkedése szabályozható. Pl: Connection-ben az autoCommit : true / false

Új hozzászólás Aktív témák