This is a significant update and needs to be tested to assure that the SQL Patch process works correctly. The patch process first applies a number of changes that normalize the database. The last patch updates tables to define foreign keys. Foreign keys are key values stored in a table that are key items that must exist in another table. For instance, you can’t add an invoice item without first defining an invoice, or you can’t define an invoice without first defining a customer, a biller, etc. records.
It is possible (maybe likely) that the SQL Patch process will end with an error that tells you to look at the error log file. This is expected, if the process finds records that contain key values which are not defined in the master table for that the key should exist in. Case in point is records in the si_cron_log table that point to non-existent records in the si_cron table. This would happen if you had a Recurrence set up that generated invoices via crontab, and then you deleted the recurrence record. This left orphaned history records in the si_cron_Log table that should be deleted.
Looking at the message in the tmp/log/php.log (aka error log) file, it will tell you what orphan records were found and how you might fix the issue using SQL in that database admin (phpMyAdmin for example) program. Once the corrective action has been performed, just reload the page that reported the update error and it will perform the final, foreign key patch allowing SI to run following the update.
Recent Comments