, , RSTLIB ou RSTOBJ et APYJRNCHG

Vous connaissez tous la journalisation base de donnés sur l’IBM i, qui permet d’avoir les images avant et après
de vos modifications base de données avec la possibilité de valider (APYJRNCHG) ou de les invalider par RMVJRNCHG

  • Je ne parle pas ici du controle de validation.

Que ce passe t’il quand on restaure une bibliothèque suite à un sinistre ou sur autre système pour des tests par exemple ?

Par défaut quand vous sauvegardez un récepteur attaché vous avez ce message

CPF7080 Récepteur RCV de TSTJRN1 sauvegardé alors qu’il était attaché

Que ce passe t’il quand on restaure la bibliothèque qui contient le récepteur et le journal ?

Le système créée un nouveau récepteur qu’il attache au journal , votre ancien récepteur est la, mais il est à l’état partiel.

Les recepteurs à l’état partiel ne sont pas utlisables, vous pouvez voir ce qu’il y a dedans en indiquant la plage de récepteur sur la commande DSPJRN, mais pas les utiliser.

La plus part du temps ce n’est pas grave, mais si vouliez invalider des modifications en applicant un filtre c’est impossible.

Vous devez lire les données et les reporter à la main.

La solution est, avant de sauvegarder votre bibliothèque, il faut détacher le recepteur en cours.

==>CHGJRN JRN(votrebib/votreJRN) JRNRCV(*GEN)

A la restauration vous aurez 3 récepteurs
1 sauvegardé
1 partiel
1 attaché

Vous avez toujours le récepteur partiel qui est inutilisable, mais il n’a plus de modification de données à l’intérieur

Si vous choisissez d’invalider une partie des transactions en attente, vous pouvez utiliser le récepteur sauvegardé

RMVJRNCHG JRN(votrebib/votreJRN)
FILE((votrebib/*ALL))
RCVRNG(votrebib/RCVsauvegardé votrebib/RCVsauvegardé)

vous aurez un message de ce type

x postes retirés pour x objets.
Certains postes n’ont pas été appliqués ou retirés pour au moins un
objet.

Le deuxième message indique que votre demande a trouver des postes autres que R ( modifications de données)

Conclusion :

Il peut être intéressant de détacher vos récepteurs avant de faire vos opérations de savlib au moins pour vos bibliothèques importantes, on ne sait jamais !

Il peut être intéressant de regarder, si vous avez des récepteurs à l’état partiel, ça peut révéler un vrai problème

J’ai des outils sur GITHUB qui traitent des journaux

https://github.com/Plberthoin/PLB/tree/master/GJOURN