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

Oracle Discussion :

auto-killer une requête trop lente


Sujet :

Oracle

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Points : 88
    Points
    88
    Par défaut auto-killer une requête trop lente
    Bonjour,

    J'ai créé une application en Forms, dans laquelle les utilisateurs auront la possibilité de lancer certaines requêtes, en les définissant de façon simple (un peu comme un Business Objects light). Le problème est que je ne veux pas qu'ils lancent des requêtes trop longues/lentes/gourmandes, qui vont plomber la base (style des jolis produits cartésiens).

    J'ai d'abord essayé d'intevenir au niveau de Forms avec un WHEN-TIMER-EXPIRED, mais ce dernier ne rend la main ... qu'après exécution de la requête...

    Je me demande donc si au niveau de la base elle-même, il n'y aurait peut-être pas moyen de lancer une requête dans une transaction séparée, qui aurait une durée de vie maximale pré-définie (du style si au bout de 1 minute, la transaction n'est toujours pas terminée, elle s'auto-kille) ?

    Toute autre idée est la bienvenue.

    J'espère avoir été assez explicite.

    Merci pour vos réponses.

    Nico'

  2. #2
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    Eventuellement un trigger on logon qui mémorise la date de début et de fin d'une session et qui la tue si elle dure plus d'un certain temps (avec un job toutes les minutes) mais seulement pour certains utilisateurs.

    Enfin je me demande s'il n'y a pas un moyen de gérer ça directement dans Oracle quand même...

  3. #3
    Expert éminent sénior
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Points : 19 075
    Points
    19 075
    Par défaut
    un job qui tue les sessions dont logon_time est supèrieur à x temps ce serait pas mal non ?

  4. #4
    Membre émérite Avatar de nuke_y
    Profil pro
    Indépendant en analyse de données
    Inscrit en
    Mai 2004
    Messages
    2 076
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Indépendant en analyse de données

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 076
    Points : 2 370
    Points
    2 370
    Par défaut
    wééééééééééé

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2006
    Messages
    120
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 120
    Points : 88
    Points
    88
    Par défaut
    Peut-être, mais alors, il faudrait que je réussisse à lancer les requêtes en question dans une session différente... Est-ce facile à faire en Forms?

  6. #6
    Membre averti Avatar de Wurlitzer
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    469
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 469
    Points : 408
    Points
    408
    Par défaut
    Tu peux regarder au niveau de la base avec les profiles de resource mais j'ai jamais eu l'occasion de les utiliser. Si ça correspond a ton besoin peux tu faire un retour d expérience cela pourrait être interessant pour tout le monde.

    http://download-west.oracle.com/docs...users.htm#1148

Discussions similaires

  1. Requête trop lente
    Par shadeoner dans le forum SQL
    Réponses: 11
    Dernier message: 23/05/2008, 11h24
  2. Requête trop lente, comment l'optimiser?
    Par getz85 dans le forum Langage SQL
    Réponses: 19
    Dernier message: 29/01/2008, 14h40
  3. insertion dans une BD trop lente
    Par jouidos dans le forum Windows Forms
    Réponses: 13
    Dernier message: 01/02/2007, 13h32
  4. Lors de l'ajout/supp d'un tuple : exécution auto d'une requête
    Par Tentative dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 02/01/2007, 19h08
  5. Simplication d'une requête "trop complexe"
    Par Manopower dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 27/06/2006, 15h22

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