You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PHP 8.5 Base Image & Modernized Docker Stack (Dockerfile, docker-compose.yml):
Upgraded Docker runtime environment to php:8.5-apache with OPcache and JIT compilation support for maximum execution speed.
Verified and enabled full native extension suite: pdo_mysql, mysqli, snmp, redis (via PECL), gettext, and Apache mod_rewrite.
Configured persistent auto-restart policy (restart: unless-stopped) across all containers (netscope_app, netscope_db, netscope_redis) to guarantee service stays active after host machine/PC reboots.
Ensured strictly persistent database storage using named volume db_data (/var/lib/mysql) with non-destructive auto-heal guards to protect all historical user data.
Fixed & Enhanced
High-Speed Menu Navigation & Auto-Migration Caching (includes/db.php, includes/config.php):
Root cause resolved: run_auto_migrations() was executing ~80 heavy DDL queries (CREATE TABLE, SHOW TABLES, SHOW COLUMNS, ALTER TABLE, table scans, and cleanup queries) on every single HTTP request, incurring 3 to 5 seconds of latency on every menu navigation.
Added db_schema_version guard comparing installed schema version against APP_VERSION, allowing subsequent requests to bypass DDL in ~0.2ms.
Implemented singleton $pdo_instance in get_db_connection(), avoiding redundant TCP handshakes and memory overhead within the same request lifecycle.
Reduced page transitions across Dashboard, Subnets, Switches, Netwatch, and Tools from 3-5s down to 9ms - 190ms.
Root cause resolved: Passing null values to htmlspecialchars() in topology-manager.php (when targets or subnet descriptions were deleted/null) triggered PHP 8.1+ E_DEPRECATED: htmlspecialchars(): Passing null to parameter #1 ($string) of type string is deprecated warning output directly into rendered table cells.
Safely cast strings and handled missing/orphaned targets with clear UI tags ([Missing / Deleted Subnet #ID]).
Added cascade deletion of topology_links when subnets or switches are deleted, plus automatic cleanup of detached links during migrations.
Excluded E_DEPRECATED notices from default error_reporting in includes/config.php for clean rendering on PHP 8.1+ environments.