3. Troubleshooting and support¶
This guide covers common issues, diagnostic steps, and what to capture for support.
3.1. Synchronization errors¶
Occurs when the object version in SQL is incompatible with the version in M‑Files. Typical causes:
SQL-side change processed before the latest M‑Files version was fetched.
Users changed objects in M‑Files that are expected to be updated only via SQL.
On sync error, the class table Process_ID is set to 2 and a notification email is sent. See the detailed guide:
3.2. Diagnostics quickstart¶
Review latest errors: select from MFLog ordered by LogID desc; copy ErrorMessage fully.
Check class table for non-zero Process_ID rows (should be 0 when clean).
Inspect batches: recent rows in MFProcessBatch and steps in MFProcessBatchDetail.
Context menu health: review entries in MFContextMenu; reset IsProcessRunning if stuck for >30 minutes.
Email samples and error categories are included here:
3.3. Auto‑correction via precedence¶
Set precedence per class in MFClass.SynchPrecedence (null: none; 0: SQL; 1: M‑Files). Then have procedures check for sync errors with spMFClassTableStats and correct using spMFUpdateSynchronizeError.
3.4. What to capture for support¶
Procedure name and parameters used.
ProcessBatch_ID and relevant MFProcessBatchDetail entries.
Relevant MFLog rows (full ErrorMessage) and MFUpdateHistory IDs if present.
Connector version, vault identifier, and whether VAF logging is enabled.