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 :

shared memory problem - hibernate


Sujet :

Hibernate Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 100
    Par défaut shared memory problem - hibernate
    Bonjour

    J'ai une requête HQL qui génère une exception (org.hibernate.exception.LockAcquisitionException).

    Cette exception est due à l'erreur Oracle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java.sql.SQLException: ORA-04031: unable to allocate 64 bytes of shared memory 
    ("shared pool","unknown object","sql area","optdef : apanlg")
    J'ai donc augmenté le "shared pool" d'Oracle de 20Mo à 50Mo. Ca n'a pas résolu le problème.

    Ce qui m'étonne c'est que cette requête fonctionne lorsque je l'exécute directement dans Toad. Le problème semble donc venir d'Hibernate.

    Pour info, la requête qui pose problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    select x from X x, A a
    where a.id = :id
    and a in elements(x.as)
    and x.b.id in (:listBs)
    and x.c.id in (:listCs)
    order by upper(x.libelle)
    La première clause "in" contient plus de 100 éléments et c'est ça qui semble poser problème.

    Dîtes moi si vous avez des idées. Merci.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 92
    Par défaut
    Tu pourrais peut-être essayer de limiter le nombre d'enregistrements à retourner avec setMaxResult() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Query query = session.createQuery("from XXX")
                         .setMaxResult(20);

Discussions similaires

  1. ORA-27101: shared memory realm does not exist
    Par Mella dans le forum Connexions aux bases de données
    Réponses: 21
    Dernier message: 13/01/2013, 15h06
  2. shared memory probleme IPC_STAT
    Par jcc416 dans le forum Linux
    Réponses: 2
    Dernier message: 25/04/2007, 11h49
  3. Réponses: 10
    Dernier message: 07/02/2006, 13h22
  4. Share memory
    Par beLz dans le forum C
    Réponses: 5
    Dernier message: 21/12/2004, 00h50
  5. [JBuilder 8] Out of memory problem ...
    Par keros dans le forum JBuilder
    Réponses: 2
    Dernier message: 08/09/2003, 19h03

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