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

Adaptive Server Enterprise Sybase Discussion :

Pb de charge CPU sur SYBASE ASE 15.0.3 ESD1


Sujet :

Adaptive Server Enterprise Sybase

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut Pb de charge CPU sur SYBASE ASE 15.0.3 ESD1
    Bonjour

    Nous avons migré une application (PROGICIEL) de la version 12.5.3 à 15.0.3
    Nous avons constaté une détérioration très importante des performances
    Le positionnement de l'option 'compatibility mode' à 1 nous a permis de retrouver des temps acceptables (mais toujours moins bon qu'en 12.5)

    Nous travaillons actuellement sur la suppression de cette option afin de travailler en ASE 15 Optimiseur 15 (compatibility mode à 0). Car elle est fortement buggée.

    Cette application utilise massivement des curseurs. Nous ne pouvons modifier le code de celle-ci.

    Est-ce que quelqu'un a rencontré des problèmes de performances de curseurs sur la version 15 de SYBASE ?
    Pour info, nous avons une charge CPU très importante pour une consommation io assez faible. Je n'arrive pas à identifier d'ou peut provenir cette charge CPU

    Merci de toutes infos sur ce genre de sujet

    jeeps64

  2. #2
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 7
    Par défaut
    Bonjour
    Je vous conseille de passer en ESD #3
    Gros bugs corrigés .
    Comme pb de perf sur des requetes utilisant certain type de jointure
    Cdlt

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    L'ESD 2 vient de sortir (mois d'aout je crois)
    Les tests effectué avec celui-ci ne sont pour l'instant pas concluant

    Pour info, nous avons identifié un gros bug sur les requêtes utilisant un select distinct vers une table #.
    En effet,
    en laissant le select into, la requête prend un plan pourri et fait des millions d'io
    en supprimant le into #table, la requête fait 10 io et prend le bon plan
    Le contournement est de désactiver l'option opportunistic_distinct_view à off.
    La correction se fera dans l'ESD3 (février 2010 dixit SYBASE) ou ESD 4

    Maintenant, on a l'impression que les plans sont bons mais qu'il y a une charge CPU excessive par rapport à l'activité io. On soupconne une dérive lors de l'utilisation massive de curseur.

    Quand je dis massive , c'est 300000 ouvertures / fetch / desallocate de curseur par heure

    jeeps64

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    J'ai vu dans les forums sybase (forums.sybase.com) que d'autres utilisateurs ont eu le même problème, à priori.

    Je n'ai pas tout lu (manque de temps, et nous on préfère ne pas utiliser de curseur... :-) ) mais le gros usage CPU fait penser que l'optimiseur bosse plus que nécessaire.

    Est-ce que les indexes ont un très grand nombre de histogram steps dans les statistiques?

    Michael

  5. #5
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    Ça dépend des tables mais il peut arriver sur certaines tables à 500

    Penses-tu à quelque chose de particulier au sujet des histogrammes ?

    jeeps64

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    L'optimizeur en 15 doit plus travailler - si il y a beaucoup de step cela prend plus de temps pour trouver la bonne solution.

    Le thread sur groups.google.com:

    http://groups.google.com/group/sybas...5fc5d0a89e235#

    Michael

  7. #7
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    Bonjour

    Nous avons finalement trouvé la cause de notre surcharge CPU lor de la migration 12.5 vers 15.
    En effet, l'application fait des milliers voire des millions de requête / curseur avec une jointure sur une table temporaire (table en #)
    Les requêtes étant quasiment les mêmes, nous avons identifié qu'elles recompilaient tout le temps leur plan d'exécution (5 millions sur un run)

    Nous avons alors positionner le traceflag 299 qui permet de ne pas recompiler les statements à chaque exécution.
    Pour info, ce traceflag comportait des bugs jusqu'en version 12.5.4. Pourquoi SYBASE ne l'a pas mis par défaut ????

    Nous avons eu un gain énorme en terme de CPU ainsi que les temps d'exécution du batch complet (Avant durée 2h et CPU 80%, Apres 1h et CPU 40%)

    jeeps64

  8. #8
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    Nous avons essayé le -T299 sous 15.0.3 ESD 2, mais cela nous a généré des stack-traces assez conséquent... on attend une réponse de Sybase TS a ce sujet!

    Michael

  9. #9
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    Merci de l'info
    On est justement entrain de voir a mettre en palce l'ESD 2
    Pas cool ; ))

    merci encore

    jeeps64

  10. #10
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    Mickael,

    Je serai intéressé de savoir quel type d'action a entrainé la stacktrace et le retour du support a ce sujet (le CR si tu as)
    Je vais chercher de mon coté

    Merci encore
    jeeps64

  11. #11
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 307
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 307
    Par défaut
    On a fait pas mal de tests ces derniers jours sur le comportement du -T299 en 15.0.3 ESD 2.

    En fait - le problème semble venir de procs imbirquées qui utilisent massivements les tables tempo, et qui ont été soumises en 12.5.x et ensuite upgradées en 15.x.

    Si une proc génère un stack trace avec le -T299 il suffit de la resoumettre (cad de la recréer) pour résoudre le problème.

    De plus le bug que nous avons mis à jour a de bonnes chances d'être fixé en 15.0.3 ESD 3.

    Michael

  12. #12
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    137
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 137
    Par défaut
    Y a-t-il un cas ouvert chez SYBASE à ce sujet ?
    Je voudrais les solliciter

    jeeps64

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

Discussions similaires

  1. Connaitre les requêtes qui passent sur Sybase ASE
    Par vegeta7895 dans le forum Adaptive Server Enterprise
    Réponses: 1
    Dernier message: 10/12/2009, 15h45
  2. La fonctionnalité PIVOT existe t elle sur Sybase ASE ?
    Par sauceaupistou dans le forum Sybase
    Réponses: 2
    Dernier message: 09/10/2009, 14h20
  3. [SYBASE ASE] Rajouter une contrainte null sur une colonne
    Par Little_Goldo dans le forum Sybase
    Réponses: 1
    Dernier message: 09/02/2005, 10h48
  4. problème de charge CPU SUR ORACLE
    Par crasho007 dans le forum Administration
    Réponses: 35
    Dernier message: 19/05/2004, 15h35

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