Bonjour,

Toujours dans le cadre d'une migration d'une application php fonctionnant sous mysql j'ai rencontré l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
ORA-01000: maximum open cursors exceeded
L'application a été faite en utilisant plusieurs couches d'abstractions, la plus profonde étant
"The PEAR DB driver for PHP's oci8 extension".

Ma base d'appele oradev1.
Après avoir cherché un peu, j'ai tenté cette solution (un peu porc, je l'avoue), dans le initoradev1.ora :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
###########################################
# Cursors and Library Cache
###########################################
open_cursors=30000000
Redémarage de la bdd, mais je continue d'avoir le problème.

Si quelqu'un maitrisant oci8 aurait une piste pour me dire dans quelle direction il me faut chercher, j'suis preneur ;-))
Dans l'idéal, il me faudrait une solution pour fermer de facon "automatique" tous les curseurs ouverts, car l'application est relativement énorme, et dans la mesure ou tous les appels à la base sont masqué par une tonne de couches d'abstractions, déterminer ou commence une requete et ou on a plus besoin des résultats est une entreprise plus qu'hasardeuse.

Je prend aussi les solutions "un peu porc" à défaut d'un meilleur terme, car toute la tonne de couche d'abstraction va se faire supprimer dans les mois qui viennent (ca provoque, entre autre, des problèmes de lenteur), donc une solution pas necessairement clean, mais temporaire me convient aussi.

Merci d'avance !