-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Problem mit UPDATE / Auslesen aus der DB
PostPosted: Mon Apr 24, 2006 6:09 am 
Newbie

Joined: Mon Apr 24, 2006 5:56 am
Posts: 7
Hallo erstmal. Ich arbeite gerade an einem mehr oder weniger komplexen Web-Projekt. Verwendet wird Tomcat + MySQL + Hibernate3.1.

Bisher funktionierte alles pipifein (dachte ich).. speichern, editieren, löschen, ...

Doch ich habe nun folgenden Bug entdeckt. Wenn Daten editiert werden (das bedeutet im Endeffekt ich hole mir ein Objekt aus der Datenbank, verändere es, speichere es ab) dann stehen die editierten Werte auch in der Datenbank und zwar genau da wo sie hingehören.

Wenn ich sie aber wieder aufrufen und anzeigen will stehen ... und jetzt kommts ... manchmal die aktuellen Werte drinnen, manchmal die Werte vor dem update... ja manchmal sogar noch ältere Werte. Wie gesagt: In der Datenbank stimmt es. Wenn ich den Server neustarte passt auch wieder alles.

Es scheint als ob das Problem beim auslesen aus der Datenbank besteht. Hab mit einem Mitarbeiter geredet und er meinte, dass das Problem viell. beim caching liegt. Sind damit aber auch auf keinen grünen zweig gekommen.

Zum auslesen aus der Datenbank verwende ich folgende Methode:

Code:
public static List<Data> listWhere(Class c, String query){
       //Session session = new Configuration().configure().buildSessionFactory().openSession();
      try {
           Session session = HibernateUtil.currentSession();
           //Transaction tx = session.beginTransaction();
           //session.evict(c);
           List  list = session.createQuery("from " + c.getName() + " " + query).setCacheable(true).setCacheMode(CacheMode.REFRESH).list();
         //List<Data> result = (List<Data>) list;
          
           //tx.commit();
//           HibernateUtil.closeSession();
          
           //session.close();
           return list;
       } catch (HibernateException e) {
          e.printStackTrace();
           throw new RuntimeException(e.getMessage());
       }
   }

Alles was mit SELECT wird zu diesem Ding delegiert.

Gibt es irgendwelche Vorschläge? Wäre für alles offen.

Greez Harald


Top
 Profile  
 
 Post subject:
PostPosted: Mon Apr 24, 2006 10:11 am 
Beginner
Beginner

Joined: Wed Feb 08, 2006 10:09 am
Posts: 28
Hallo,
überprüf mal, ob Du den richtigen Isolation Level verwendest.
Das hat jedenfalls bei mir dieses Problem erzeugt.

Ciao
Peter Schütt


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.