Upgrading to v3.9.7¶
Overview¶
Version 3.9.7 includes important performance improvements through new database indexes and user interface enhancements. This release requires database migrations.
Upgrade Instructions¶
- Download latest tarball from GitHub
- Backup your files and database before proceeding
- Replace all files with content from the downloaded archive
- Restore your configuration file (
inc/config.inc.php) from backup - Run the database migration script (see below)
Database Migration¶
This release adds performance indexes on the zones table. Run the appropriate migration script for your database:
MySQL/MariaDB:
ALTER TABLE zones ADD INDEX idx_zones_domain_id (domain_id);
ALTER TABLE zones ADD INDEX idx_zones_owner (owner);
Or run the migration script:
PostgreSQL:
CREATE INDEX idx_zones_domain_id ON zones (domain_id);
CREATE INDEX idx_zones_owner ON zones (owner);
Or run the migration script:
SQLite:
CREATE INDEX idx_zones_domain_id ON zones (domain_id);
CREATE INDEX idx_zones_owner ON zones (owner);
Or run the migration script:
Performance Improvements¶
- Database indexes: Added indexes on
zones.domain_idandzones.ownercolumns - Query performance: 10-100x faster query performance when managing large numbers of zones (tested with 10,000+ zones)
Features¶
- Configurable rows per page: Users can now customize rows per page (10, 20, 50, 100) on zone lists and search results, with preferences stored in session
Code Improvements¶
- DNS record validation logic reorganized into focused, reusable validator classes
Notes¶
- Users with large zone counts (1000+) will see significant performance improvements after applying the indexes
- The indexes are safe to add on production systems but may take time on very large databases