PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → HFSQL CS : fichiers .TRX
HFSQL CS : fichiers .TRX
Started by Eric F., Jan., 11 2024 7:03 PM - 4 replies
Registered member
48 messages
Popularité : +2 (2 votes)
Posted on January, 11 2024 - 7:03 PM
Bonjour,

je trouve très peu de littérature sur l'explication des dossiers "cachés" présents dans le dossier BDD de mon serveur HFSQL.

Je m'aperçois que sur un de mes serveurs, j'ai plus d' 1 Go pris par le répertoire __TRS

Dedans, j'ai un dossier par base et dans chaque dossier de base, j'ai quelques fichiers reprenant le nom d'un fichier de mon analyse avec .TRX et .NDX, et des fois .MMO
Il y a même des fichiers datant de 2019 !

Honnêtement, je ne fais jamais de transaction.
Je suppose que c'est peut-être des fichiers créés suite à de mises à jour de structure, exécutées lors l'installation d'une mise à jour avec l'assistant d'installation...
Dans le gestionnaire de serveur HFSQL, cela me dit qu’aucune transaction n’est en cours.

bref, est-ce que je peux purger ce dossier ?
si je le fais en mode violent : arrêt du serveur, suppression du dossier __TRS, redémarrage du serveur. Est-ce que j’encours un gros risque ?
Ou existe-t-il un outil ?
WDTrans me demande de sélectionner un fichier, on dirait qu’il ne bosse qu’en HyperFile Classic….

Eric
Registered member
1,939 messages
Popularité : +53 (65 votes)
Posted on January, 12 2024 - 8:53 AM
Bonjour Eric,

C'est une très bonne question et je ne me souviens pas avoir vu une quelconque documentation sur ce sujet.
Je pense que tu peux tout supprimer en suivant la procédure que tu indiques ... après avoir renommé le dossier pour sauvegarde 8).

Utilises-tu des vues qui doivent bien être stockées quelque part ?
NB : https://doc.windev.com/fr-FR/…

--
Bon dev,
Jean-Pierre
Message modified, January, 12 2024 - 8:56 AM
Registered member
48 messages
Popularité : +2 (2 votes)
Posted on January, 12 2024 - 4:20 PM
Bonjour Jean-Pierre,

allez, je m'y risque... je ferai un compte-rendu ce week-end !

Et pour ta question, non, je ne gère pas de vue.
J'ai essayé un jour sur une base de données avec une vue qui était l'UNION de 3 requêtes basées sur des fichiers respectifs différents.
(Mauvaise analyse qui date de 20 ans et qui multiplie les entités au lieu d'en avoir qu'une)
Au final, les recherches et autres traitements étaient très très longs : plus de 30 secondes pour obtenir un résultat (base de 50.000 enregs environ).
Et la solution de vue matérialisée ne me convient pas car il faut actualiser la données manuellement, et le besoin était temps réel.
Donc, pas de stockage sur disque des vues.

Eric
Registered member
201 messages
Popularité : +3 (7 votes)
Posted on January, 12 2024 - 5:06 PM
Bonjour,

Je pense que des transactions sont créées automatiquement lors des différentes opérations du serveur HFSQL (réintégration GDS, modification automatique des fichiers de données suite à une modification de l'analyse...), pour éviter de se retrouver avec des fichiers corrompus si un problème venait à se produire.

Enfin ce ne que ma déduction quand j'ai vu ces fichiers pour la premières fois.
Posted on April, 03 2024 - 5:14 PM
La gestion des plantages de transaction est un point faible de HFSQL

Une fois par an, je dois avoir un plantage de la BDD à cause de celles-ci
Bien qu'HFSQL déclare qu'aucune transaction n'est en cours, un enregistrement peut rester marqué "en transaction" et l'on a un message d'erreur lorsqu'un utilisateur y accède
Il faut alors aller dans le CCHF et dans la partie transaction du fichier pour libérer cet enregistrement
Si par malheur, vous cliquez sur "Libérez les transactions" et que le fichier est important, vos utilisateurs vont devoir patienter ....
Astuce : en lançant une requête de lecture du fichier impacté dans CCHF, vous pouvez déceler si d'autres enregistrements sont marqués "en transactions"

La solution radicale consiste à arrêter le serveur, aller dans le répertoire "BDD\_TRS", supprimer les fichiers TRSOPERATION*.* (5 fichiers) et aussi le répertoire correspondant à votre base de données
Vous pouvez aussi supprimer tout le répertoire _TRS, il sera recréé au redémarrage de HFSQL

Pour répondre à la question initiale, oui on peut supprimer tous les répertoires autres sa base de données dans \BDD, il seront recréés au redémarrage de HFSQL, mais attention! vous allez faire sauter les procédures stockées et tous les paramètres du serveur