IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hibernate Java Discussion :

hibernate - colonne timestamp


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut hibernate - colonne timestamp
    Bonjour,
    je viens de trouver la source d'un bug dans mon programme.

    L'idée :
    - 1 client VB.NET insère un enregistrement dans une table de base de données (postgresql) - particularité : cette table contient une colonne dont le nom est timestamp
    - le client fait son job et met à jour l'enregistrement précédent si besoin, en se basant sur la colonne timestamp
    - à un moment le client VB.NET appelle un service web JAVA/Hibernate qui réalise des traitements asynchrones et met à jour l'enregistrement précité
    - le client VB.NET continue sont job pendant que le service web tourne sur le serveur et fait une dernière mise à jour de l'enregistrement, toujours en se basant sur le timestamp

    Or il arrive que cette dernière mise à jour par le client VB.NET plante, parce qu'il ne retrouve pas son timestamp......en effet, je me suis aperçu qu'il était systématiquement incrémenté de 1.
    En faisant des recherches, je me suis aperçu qu'Hibernate s'en servait pour faire du versionning.......
    Avant de devoir reprendre mon code pour corriger ce problème, savez-vous s'il existe une possibilité au niveau de la conf d'Hibernate pour qu'il ne se serve pas de cette colonne timestamp pour faire son versionning?

    Merci d'avance

    Gérald dégouté

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    normalement, hibernate ne fait pas de versionning sur les classes pour lesquelles tu n'as pas activé le versionning. Il faut donc passer sur tes fichiers de config pour le supprimer là où tu l'as mis.

  3. #3
    Membre émérite
    Avatar de gerald2545
    Profil pro
    Inscrit en
    Février 2003
    Messages
    744
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 744
    Par défaut
    OK, merci pour l'info.
    Je viens de regarder mes fichiers hbm (générés avec hibernate tools) et en effet pour les tables qui contiennent une colonne ayant pour nom timestamp il m'a inséré des balises pour le versioning.

    Merci encore

    Gérald

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Grails/Hibernate Date, Timestamp et MySQL
    Par Gaetch dans le forum Accès aux données
    Réponses: 0
    Dernier message: 23/11/2012, 18h47
  2. Création d'intervalle sur une colonne Timestamp
    Par alex_972 dans le forum SQL
    Réponses: 7
    Dernier message: 04/05/2012, 12h35
  3. colonne timestamp du jour
    Par Hydre dans le forum Requêtes
    Réponses: 1
    Dernier message: 06/11/2008, 11h31
  4. Réponses: 2
    Dernier message: 08/05/2008, 12h36
  5. Limitation de colonnes TIMESTAMP dans SQL Server
    Par eguilloteau dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/06/2005, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo