Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Administration
Administration Forum d'entraide sur l'administration du serveur Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/11/2007, 16h31   #1
Invité de passage
 
Inscription : juin 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 4
Points : 1
Points : 1
Par défaut packages invalides et transaction

bonjour,

Quelques petites questions toutes simples.

Est-ce que l'invalidation d'un package est transactionnelle?

Raison de la question : j'essaye de comprendre pourquoi un package qui n'utilise qu'une séquence et une table est invalidé de temps en temps.

Juste après le message d'erreur sur l'appli, je regarde l'état du package dans DBA_OBJECT, et il est valide. Est-ce que l'invalidation est transactionnelle (dans l'hypothèse où c'est quelque chose dans le code qui invalide le package et qui produit ensuite l'erreur. Ce qui expliquerait pourquoi le package est toujours valide)?

L'autre hypothèse c'est qu'il y a une recompilation automatique. Comment s'en assurer? (Version Oracle : 10G)
pedro_cristian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 16h38   #2
Expert Confirmé
 
Avatar de LeoAnderson
 
Inscription : septembre 2004
Messages : 2 942
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 2 942
Points : 2 972
Points : 2 972
oui, il y a recompilation auto lors du premier appel
LeoAnderson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 17h06   #3
Invité de passage
 
Inscription : juin 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 4
Points : 1
Points : 1
Dois-je comprendre que les invalidations ne sont pas transactionnelles?
pedro_cristian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 17h22   #4
Expert Confirmé
 
Avatar de LeoAnderson
 
Inscription : septembre 2004
Messages : 2 942
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 2 942
Points : 2 972
Points : 2 972
????

mais je ne vois pas bien ce que vous voulez dire...
LeoAnderson est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 20h17   #5
Invité de passage
 
Inscription : juin 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 4
Points : 1
Points : 1
Je voulais dire, que comme c'est peut-être le code du serveur qui invalide la proc stock, je voulais savoir si l'invalidation d'un package est transactionnelle : si la transaction du serveur rollback à cause de l'appel du package devenu invalide, le package redevient-il par la suite valide?

Par ailleurs je ne sais pas quand est-ce que le package est recompilé. Est-ce systèmatique avec Oracle 10?
pedro_cristian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 21h09   #6
Membre confirmé
 
Avatar de DAB.cz
 
Inscription : octobre 2006
Messages : 221
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 221
Points : 214
Points : 214
Petit exemple:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
CREATE TABLE t (a number);
 
CREATE OR REPLACE procedure p AS
begin
  INSERT INTO t (a) VALUES (1);
end;
/
 
SELECT STATUS FROM user_objects WHERE object_name = 'P';
 
STATUS
-------
VALID
 
ALTER TABLE t ADD (b number);
 
SELECT STATUS FROM user_objects WHERE object_name = 'P';
 
STATUS
-------
INVALID
 
exec p
 
SELECT STATUS FROM user_objects WHERE object_name = 'P';
 
STATUS
-------
VALID
(In)validation et transactions sons les choses différentes, séparées.
La procédure P a été invalidé à cause de DDL sur T (alter table...) et revalidé juste avant son usage (exec P). COMMIT et ROLLBACK ne changont rien.

DAB
DAB.cz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/11/2007, 21h17   #7
Membre confirmé
 
Avatar de DAB.cz
 
Inscription : octobre 2006
Messages : 221
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 221
Points : 214
Points : 214
Oracle concepts

DAB
DAB.cz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h28.


 
 
 
 
Partenaires

Hébergement Web