hamburgerMenu hamburgerMenu
mobile bg

Comment

Percez les secrets de data locks

14 mars 2024

5 min Temps de lecture

Il n'y a pas de temps à perdre. Et pas de place pour les temps d'arrêt dans vos opérations. En tant que prestataire de services logistiques, vous travaillez au maximum de vos capacités pour répondre aux besoins de vos clients au quotidien. Pour ce faire, un processus efficace est indispensable. C'est pourquoi vous travaillez avec 3PL Dynamics pour rationaliser vos processus logistiques. Avec succès. Cependant, une erreur peut se mettre en travers de votre chemin et ralentir votre processus de manière inattendue. Parfois, une erreur se produit sans que vous puissiez faire quoi que ce soit différemment. Et sans qu'il y ait d'erreurs dans la base de code de votre solution logicielle. Néanmoins, cette erreur a un impact immédiat sur votre fonctionnement. Par exemple, l'erreur "l'enregistrement est verrouillé pour être utilisé dans une autre session". Dans ce cas, les verrous de données sont les grands coupables. Vous arrive-t-il d'être confronté à ces erreurs ? Et souhaitez-vous poursuivre vos activités le plus rapidement possible ? Dans ce blog, nous vous expliquons ce que sont les verrous dans votre système et comment vous pourrez reprendre vos activités en un rien de temps.

Qu'est-ce qu'un verrouillage de données?

Bien qu'une erreur ralentisse votre processus, il n'y a aucune raison de paniquer après un verrouillage de données (ou verrouillage d'enregistrement). En fait, un verrou d'enregistrement est une mesure de protection contre les erreurs dans les données. Il s'agit d'un verrouillage temporaire de la base de données. Le verrou est déclenché lorsque vous accédez à des enregistrements dans votre système qui ne sont pas accessibles, parce que d'autres activités sont en cours sur ces tables. L'enregistrement est alors verrouillé. Un verrou de données peut donc être considéré comme un processus d'attente qui empêche l'altération des données.


Imaginez que votre collègue modifie le contenu d'un enregistrement à partir du processus A. Et que le processus B modifie également le même enregistrement. Il ne fait aucun doute que cela entraînera des erreurs dans vos données, car les modifications sont effectuées de deux côtés. Vous voulez donc éviter cela.


Les verrous se résolvent d'eux-mêmes

La table verrouillée redevient automatiquement disponible dès que le processus qui l'utilise s'arrête. Ces verrouillages de données peuvent être trouvés dans 3PL Dynamics via 'Database Locks'. Ici, tous les enregistrements qui sont verrouillés à ce moment-là sont affichés. Actualisez-vous la liste ? Dans ce cas, vous verrez des enregistrements différents sur votre écran. C'est logique, car les données dans 3PL Dynamics sont continuellement verrouillées et déverrouillées. Sans endommager votre système.

Une immobilisation due à des blocages de données durables

Malheureusement, il peut arriver que l'enregistrement reste bloqué. Ou qu'il reste bloqué plus longtemps que prévu, ce qui vous donne l'impression que vos processus sont à l'arrêt. Cette situation peut avoir différentes causes. Par exemple, les processus qui prennent plus de temps prennent également plus de temps pour déverrouiller à nouveau vos enregistrements. C'est le cas, par exemple, de l'exécution des factures. En outre, un blocage peut être causé par plusieurs files d'attente de travaux demandant simultanément des informations sur le même enregistrement. Dans ce cas, vous obtenez également une erreur. Il en va de même pour vos messages d'intégration.

Verrouillage vs. Impasse
Un verrou de base de données est malencontreusement présent au moment de l'erreur. Vous devez attendre. Cependant, 3PL Dynamics finit par débloquer les enregistrements automatiquement et vous pouvez continuer vos activités. Même avec des blocages de longue durée. Dans le cas d'un blocage, c'est différent. Nous parlons d'un blocage lorsque le système entre dans un cycle dans lequel deux processus différents attendent simultanément les données déverrouillées, sans résultat. Dans ce cas, l'une des sessions sera automatiquement tuée. Par exemple : le processus A utilise l'en-tête d'un document. Le processus B utilise les lignes du document. Le processus A verrouille alors les lignes du document pour éviter que les données ne soient corrompues. Le processus B fait de même pour l'en-tête. À partir de ce moment, les deux processus attendent que l'autre partie du document soit déverrouillée avant de pouvoir continuer. En cas d'impasse, cela ne se produit pas et votre processus reste immobile.

En un rien de temps, le système est opérationnel après une impasse

La fonction "Verrouillage de la base de données" permet souvent de voir quel processus verrouille la base de données. En fonction de la cause, vous pouvez résoudre les blocages de données qui ne se déverrouillent pas d'eux-mêmes. Par exemple, vous pouvez augmenter le temps entre les exécutions des différentes tâches de la file d'attente (1). Lorsque l'erreur est causée par vos intégrations, vous pouvez augmenter le nombre de tentatives des messages. De cette manière, vous augmentez la possibilité qu'un enregistrement soit déverrouillé après la deuxième tentative (2). Le blocage se situe-t-il ailleurs ? Vous pouvez alors interrompre des sessions entières via l'analyse des sessions (3) ou l'aperçu des sessions (4). Il est possible que la session de votre collègue soit à l'origine du problème. Il a peut-être fermé son navigateur, mais la session est toujours en cours d'exécution en arrière-plan. La vidéo ci-dessous vous explique comment résoudre les blocages de données de ces quatre manières.


Vous avez besoin d'aide pour résoudre des erreurs?

Avez-vous supprimé toutes les sessions lors de la dernière tentative ? Mais le verrou reste-t-il actif ? Dans ce cas, un redémarrage du système peut s'avérer nécessaire. Dans la plupart des cas, cela peut résoudre le problème. Si vous ne parvenez pas à trouver la cause du blocage de la base de données et que cela se produit régulièrement, il convient de procéder à une analyse des performances. Dans ce cas, il peut s'agir d'un blocage. Au cours de cette analyse, nous parcourons ensemble vos processus afin de prendre des mesures contre ces blocages. De cette manière, nous évitons que votre processus ne s'arrête à l'avenir.

Socials

Articles liés