⚠️ Release status
VotingPlugin 7.1.1 includes
GlobalData, but its bundled configuration labels the feature work in progress and says to use it with caution. Test coordinated resets and keep a current database backup before enabling it on a production network.
Global Data Handling makes the proxy (BungeeCord/Velocity) coordinate time changes and total resets across backend servers. Instead of each backend completing a time change independently, the proxy waits for participating servers before the final reset work completes.
This is intended to improve consistency for TopVoter and VoteParty resets across multiple servers. It is not required for ordinary proxy vote forwarding.
When enabled, the proxy coordinates daily, weekly, and monthly changes.
During a time change:
Release 7.1.1 checks coordination progress every 10 seconds. A server that never starts processing can be skipped after 30 minutes; a server that starts but remains unfinished can be skipped after two hours. A server that has not been seen online for roughly 12 hours is excluded from the recent-server set instead of delaying the change.
These thresholds describe the released implementation, not recommended outage targets.
🗄️ Shared SQL data
Global data uses an additional SQL table for inter-server coordination. It can reuse the main connection or use a separately configured connection.
🔌 Supported communication path
The 7.1.1 default comments recommend PLUGINMESSAGING. They say SOCKETS should work but is not fully tested. Do not assume another method is supported for GlobalData until a released configuration or implementation confirms it.
⚙️ Proper server naming
Each participating backend must have a unique Server value in BungeeSettings.yml.
🕓 Consistent time settings
TimeHourOffSet and related time settings must agree across the network.
TimeHourOffSet can align the network's change time.UseMainMySQL: true.| Command | Description |
|---|---|
/votingpluginproxy forcetimechange <DAY\|WEEK\|MONTH> |
Forces a manual coordinated time-change event. |
Use the command only during a controlled test or maintenance window with a current backup.
bungeeconfig.yml# Global SQL data handling between server communications
GlobalData:
Enabled: false
# Use existing main connection
UseMainMySQL: true
# Custom SQL settings (if not using main)
Host: ''
Port: 3306
Database: ''
Username: ''
Password: ''
MaxConnections: 1
# Must be identical on all servers
Prefix: ''
#UseSSL: true
#PublicKeyRetrieval: false
#UseMariaDB: false
# Time offset for time changes (must match across servers)
TimeHourOffSet: 0
BungeeSettings.yml# Global SQL data handling between server communications
GlobalData:
Enabled: false
# Use existing main connection
UseMainMySQL: true
# Custom SQL settings (if not using main)
Host: ''
Port: 3306
Database: ''
Username: ''
Password: ''
MaxConnections: 1
# Must be identical on all servers
Prefix: ''
#UseSSL: true
#PublicKeyRetrieval: false
#UseMariaDB: false
GlobalData.Enabled: true in both bungeeconfig.yml and every participating backend's BungeeSettings.yml.Prefix and connection settings.BlockedServers in bungeeconfig.yml.TimeHourOffSet consistent.🧩 Intended use: large networks that require coordinated TopVoter/VoteParty time changes rather than independent backend resets.