Bonjour,
Lorsque nous supprimons quelques dizaines de milliers de lignes dans une table partitionnée - les delete concernent une seule partition, les ordres insert effectués dans cette partition après la suppression ont une performance très dégradée et finissent généralement par un problème avec le tablespace undo (impossible d'étendre le segment par 4 dans le tablespace d'annulation). Les inserts dans d'autres partitions fonctionnent correctement.
Une partition contient entre 8 et 10 millions d'enregistrements. Les delete - que nous effectuons uniquement en cas d'erreur de chargement soit moins d'une fois par an heureusement - concernent de 50000 à 80000 lignes. Le problème apparait avec un delete global des 50000 ou plus lignes ou avec plusieurs delete de 10000 lignes.
Le problème a été constaté sur la base de production et reproduit sur la base de développement. Nous sommes sous Oracle 9.2
Pour retrouver nos performances nous avions tout d'abord sauvegardé les données de la partition, supprimé celle-ci, recréé cette partition et réinséré les données. Dernièrement nous avons effectué un move de la partition suivi d'un rebuild des index.
Pour quelle raison les performances sont-elles si dégradées après une suppression ?
Peut-il y avoir une solution pour effectuer un delete qui ne dégrade pas les performances ?
Est-ce que la solution d'un move de partition est la meilleure pour retrouver les performances ?
Partager