Combien impair. La table tronquée sort une serrure exclusive parce qu'elle écrit. Ceci bloque et est bloqué par les serrures (lues) partagées de la sorte qui créent l'index sortent. Celui qui y arrive le premier courra à l'accomplissement et alors l'autre commencera à fonctionner. Il est réellement impossible d'avoir tous les deux fonctionner simultanément - on bloquera toujours l'autre.
Juste vérifiant - vous avez couru le dbcc checktable et le tablealloc de dbcc là-dessus votre table et a-t-il été soulevé propre ? Avez-vous physiquement recréé la table (choisie dans une nouvelle table, la vieille table de baisse, retitrent-elles la nouvelle table) ?
Si l'issue vraiment est table tronquée et crée l'index fonctionnant simultanément, vous pourriez forcer l'ordre de verrouillage correct en employant la commande « de table de serrure » avant que vous couriez l'index de création. Vous devez être dans une transaction pour faire ceci. Que les garanties créent l'index ne pourrait pas probablement fonctionner tandis que la table tronquée fonctionne… bien que ce soit comment est il a supposé pour être normalement. Mais l'ingénieur de Sybase doit avoir eu une raison de dire ce qu'elles ont fait. :)
Essayer la reconstruction physique de la table (si vous n'avez pas déjà), et puis using un rapport de table de serrure avant l'index de création.