At BaseKit we take pride in the frequency with which we release improvements to our products. As such, we offer regular code upgrades to roll out new features, bug fixes, and other improvements. Read on to learn about how we protect against data corruption and a broken user experience during upgrades.
The upgrade process
We aim to keep service disruption to an absolute minimum, to this end we ensure that only the volatile parts of an upgrade –the actual deployment of the code, database changes, etc.– require a maintenance lock. Since they are not liable to cause adverse consequences, all other parts of the upgrade are allowed to take place while the service is fully operational. Additonally, we make sure to communicate your upgrade windows to you in advance so that you are aware and can pass the message onto your customers.
Generally, the volatile part of an upgrade takes around 5 minutes, though this can be longer or shorter depending on the size of the upgrade.
Published sites will remain operational for the full duration of an upgrade; your customers will not experience any downtime on their sites.
Our API will be locked and will return a
503 Service Unavailable response code. We strongly encourage you to handle
this error code in an appropriate way.
Any users already inside the editor when the maintenance lock is applied will be shown a notice explaining that maintenance is taking place and logged out the next time they load a page or take an action that uses the API. When the lock is removed they can log back in and resume their activity. The log out is necessary to prevent any conflicts between their session and the new code. Users with a persistent log in cookie will be automatically logged back in.
Payments to customers’ stores going wrong would be very bad news, so we place a lock on the checkout during upgrades. Store visitors arriving at the checkout will be informed that maintenace is taking place to improve their shopping experience. Upon the removal of the lock the page will reload itself and allow them to resume their purchase.
Only the checkout itself is subject to the lock, product pages and basket functionality on published sites will remain operational.
Registration & log in widgets
Depending on your integration, you may have a brand site built in BaseKit itself with a log in and/or registration widget to allow customers to sign up to and access BaseKit. These widgets have built-in functionailty to enable them to display a notice in place of the usual form during maintenance lock so that customers are prevented from beginning a new session.
If your support agents have access to our internal Control Panel, they will be unable to access it for the duration of the maintenance lock.