Database upgrades may occur during an install-over-the-top upgrade. It is important for administrators to read this article to help plan their PaperCut upgrade. A database upgrade will mean PaperCut must be taken off line for a few minutes and this article helps you understand this and mitigate the effect of expected downtime.
New features in PaperCut sometimes require new fields or tables in the application’s database. The install process will automatically upgrade the existing database without any interaction from the administrator. The automatic upgrade occurs whether you are running the internal database or an external database like SQL Server or PostgreSQL.
When an upgrade is performed:
The database is backed up. This ensures that the system is recoverable on an unforeseen problem.
New fields or tables are added.
Any new fields or tables are populated with data (if required by the given database changes).
On the internal database, the tables are optimized to ensure the system performs well with large data.
IMPORTANT: While the upgrade is in progress, it is important to not reboot the server or stop the PaperCut Application Server service.
How to estimate upgrade times (upgrade planning)
When a PaperCut update contains a database upgrade (as referenced in the release notes), the upgrade process may take longer to complete. It is important to take this into account when planning the upgrade on large networks.
The time taken to perform a database upgrade is dependent on:
The specs of the system running PaperCut.
The size of the database (e.g. the number of print and transaction logs).
The type of database (e.g. the internal database or an external database like SQL Server or PostgreSQL).
Based on a typical system we estimate that the upgrade will take approximately 2 minutes for every 100,000 database rows in the database. PaperCut versions 7.4 (or later) include database statistics information on the application About page. These statistics include the total number of print logs and transaction logs, and can be used to calculate an estimate of the database upgrade time.
So for example, if the About page says you have a total of 500,000 rows (i.e. the print log count plus the transaction log count), then you should allow 10 minutes for the upgrade to complete.