Mise en miroir des bases de données

Traduit automatiquement de Deepl

Lors de l’intégration du fichier journal, 4D s’arrête à la première erreur et ne renvoie aucun message d’erreur. Les erreurs d’intégration peuvent être dues à un journal endommagé, par exemple à cause d’un mauvais disque dur ou d’une erreur logicielle pendant l’écriture. Si cette erreur se produit à la fin, pas de problème ; mais elle peut aussi se produire au début ou au milieu du journal. Dans ce cas, les données situées après l’erreur peuvent être utiles.

Maintenant, lorsque l’intégration échoue en mode standard, vous pouvez essayer l’intégration en mode auto-réparation. Dans ce cas, 4D essaie de résoudre l’erreur rencontrée, n’arrête pas l’intégration et renvoie la liste des erreurs.

Les erreurs réparées automatiquement par 4D sont :

  • Si le journal demande d’ajouter un enregistrement, mais que cet enregistrement existe déjà dans les données, 4D met à jour l’enregistrement.
  • Si le journal demande de mettre à jour un enregistrement, mais que cet enregistrement n’existe pas, 4D ajoute l’enregistrement.
  • Si le journal demande à supprimer un enregistrement, mais que cet enregistrement n’existe pas, 4D ne fait rien.

La nouvelle syntaxe de la commande est la suivante :
INTEGRATE MIRROR LOG FILE (pathName ; operationNum ; {numMode { ; errObject}})

  • pathName : Nom ou chemin d’accès du fichier journal à intégrer.
  • operationNum : Numéro de la dernière opération intégrée (ou -2 pour intégrer le fichier entier)
  • numMode : 0 pour le mode strict (mode réel), 1 pour l’auto-réparation
  • errObject : objet

Exemple de errObject :
{"operations" :
[
{
"operationType":24,
"operationName" : "Create record",
"operationNumber":2,
"contextID":48,
"timeStamp" : "2015-07-10T07:53:02.413Z",
"dataLen":24,
"recordNumber":0,
"tableID" : "F4CXXXXX",
"tableName" : "Customers",
"fields" : {
"1" : 9,
"2" : "valeur test",
"3" : "2003-03-03T00:00:00.000Z",
"4" : "BlobPath : Table 1/Field 4/Data_9ACB28F1A2744FDFA5822B22F18B2E12.png",
"8" : "BlobID : 2"
}
},
{...}
]
}

Une base de données d’exemple est disponible pour démontrer la nouvelle fonctionnalité.

Exemple de base de données

Remarque : la commande INTEGRATE MIRROR LOG FILE ne fonctionne qu’avec 4D Server. Vous devez ouvrir cette base de données avec 4D Server, si vous voulez tester le nouveau mode d’intégration.

Pour plus de détails, veuillez consulter le manuel de mise à niveau de 4D v15 R4.

Vanessa Talbot
- Product Owner -Vanessa Talbot a rejoint l'équipe du programme 4D en juin 2014. En tant que Product Owner, elle est chargée de rédiger les user stories puis de les traduire en spécifications fonctionnelles. Son rôle est également de s'assurer que l'implémentation des fonctionnalités livrées répond aux besoins des clients.Depuis son arrivée, elle a travaillé à la définition des fonctionnalités clés de 4D. Elle a travaillé sur la plupart des nouvelles fonctionnalités de multithreading préemptif et aussi sur un sujet très complexe : la nouvelle architecture pour les applications enginées. Vanessa est diplômée de Telecom Saint-Etienne. Elle a commencé sa carrière à l'Institut de Recherche Criminelle en tant que développeur pour le département audiovisuel. Elle a également travaillé dans les domaines des médias et du médical en tant qu'experte en support technique, en production ainsi qu'en documentation de nouvelles fonctionnalités.