Bonsoir !
Quelqu'un sait-il quel seuil doit être dépassé pour que se déclenche l'erreur 3052 : "Le nombre de verrous disponibles pour le partage des fichiers est dépassé..." lors d'une synchro "SynchronizeDBsJRO LocalPath, SynchPath, SyncType, 2" ???
Est-ce la taille du fichier mdb, ou le nombre de Tables dans ce fichier, ou le nombre d'enregistrements dans les plus grosses Tables, ou le nombre total et le type de champs, ou la complexité des relations entre les Tables???
Ce fichier mdb pèse 127.000Ko, contient environ 45 Tables, dont la plus lourde possède 30.000 enregistrements.
Ce n'est pas énorme...
Je viens d'avoir cette erreur pour la première fois sur tous les postes en même temps après l'ajout quotidien de quelques nouvelles lignes. Il n'y avait eu aucune modification de structure des Tables depuis plusieurs semaines.
J'ai donc modifié MaxLockPerFile, via
- le registre (de 9500 à 15000)
- le code VBA (DAO.DBEngine.SetOption dbMaxLocksPerFile, 15000).
Sans effet.
J'ai décoché Options/Advanced/"Open Databases using record-level locking".
Sans effet non plus.
Vu la complexité de la synchronisation, il n'est pas envisageable de remplacer celle-ci par d'innombrables UPDATE queries.
Ma question essentielle est de savoir s'il serait utile de scinder ce fichier mdb en plusieurs fichiers plus petits ??? Avec l’inconvénient de perdre beaucoup d'intégrité référentielle, ce qui serait dommage.
Je pense naturellement à migrer définitivement cette base Access vers un autre format, et toutes les suggestions sont les bienvenues !
Merci !
Partager