Future enhancements
The following is thoughts and perspectives on future enhancements for the MFSQL Connector.
Purpose
Capture planned and proposed changes for Release 5 and beyond. Items here are not yet implemented or shipped in any published Release 5 build. Implemented items are tracked in Version Control — Release 5.
Themes and scope
Operations and processing improvements (bulk, reliability, performance)
M-Files Configurations as the primary configuration surface
Reporting, observability, and usability
Installation and setup streamlining
Payload format and performance changes
Operations and processing
Context
MFSQL Connector up to version 4 used multiple overlapping routines for metadata operations and auditing.
Gaps to address
Add rollback support for multi-object operations.
Reduce check-out/check-in churn; support true bulk operations where safe.
Detect sync errors earlier; add retry when an object is checked out/locked.
Process only changed objects where possible.
Strengthen error handling and telemetry.
Move from XML payloads to JSON for larger/cleaner data structures.
Main operations model
Core SQL areas: Class Tables, Change History, Audit History.
Direction: 1 = MF→SQL, 0 = SQL→MF.
Scope: single class, multiple classes, or all classes.
Actions: create, edit, delete, undelete.
Deletion handling: optionally retain deleted object details in class tables.
Selection: all objects, a supplied list, or filtered by date (and user as a subset filter).
Guardrails: ensure audit history, objver, and objid state is current before write operations.
Delta detection: update only changed rows/columns where applicable (see e.g. https://www.mssqltips.com/sqlservertip/6497/how-to-identify-which-sql-server-columns-changed-in-a-update/).
Procedure consolidation candidates
Reduce overlap by consolidating or refactoring procedures around the operations model. Candidate list:
spMFUpdateTable
spMFUpdateMFilesToMFSQL
spMFUpdateTableinBatches
spMFTableAudit
spMFUpdateObjectChangeHistory
spMFDeleteObject
spMFUnDeleteObject
spMFDeleteObjectList
spMFDeleteAdhocProperty
spMFDeleteObjectVersionList
spMFGetObjectvers
spMFObjectTypeUpdateClassIndex
spMFRemoveAdditionalProperties
spMFUpdateAllncludedInAppTables
spMFUpdateItemByItem
spMFUpdateTableWithLastModifiedDate
Reference: MFSQL Connector Operations
M-Files Configurations roadmap
Goal: move configuration from SQL settings tables into M-Files Configurations, with VAF brokering secure connections to SQL. Initially optional; becomes the default once broadly adopted.
Configuration sources
Current in Configurations (baseline): Web API connection, ODBC connection.
- Move from SQL to Configurations:
MFSQL user selection (update MFVaultSettings)
MFSettings defaults and updates
Vault content package install/setup
- Other objects/settings to manage via Configurations:
Class selection and class settings (update MFClass)
Property list sync and custom column options (update MFClass/MFClassProperty)
Context menu setup (update MFContextMenu)
Operational status and automation
Dashboarding: errors, ProcessBatch statistics, usage overview.
- Automate SQL procedures and views:
Curated class update procedures
Reporting/analysis views
Use VAF to trigger automatic metadata structure updates in SQL
Reporting and observability
Make reporting easier to use and surface in M‑Files where appropriate.
Error log, process log, VAF log aggregation and drill-down
- Process performance metrics and trends
Class, column, table, database, and overall stats
User and group usage stats
Payload and performance changes
JSON payloads instead of XML to remove limits and improve throughput
Reduce end-to-end processing time and metadata sync impact on transactions
Continuous metadata sync without full-object scans; auto-update object change history
Installation and setup streamlining
Install and configure the Vault App (VAF)
Install Web Service on web server (if used)
Ensure M‑Files connectivity from SQL host where required
Validate SQL Server connectivity and prerequisites
Execute SQL installation
Validate SQL→MF connection and basic operations
Notes
Commercial/pricing changes (usage-focused) are tracked separately and are out of scope for technical documentation here.