0%
#Setting

Bitvavo Incident Report

Apr 25, 2021 3 min read
News Article Banner Image

The scheduled upgrade this morning at 05:00 consisted of upgrades to our database cluster, message broker (for communication between services) and matching engine. The purpose of this upgrade is to improve performance, security, and availability (especially in volatile market conditions). This upgrade was performed on a non-production environment first, so we could verify the runbook and estimate the time it would take for actions to complete. The scheduled upgrade took roughly 3 hours longer than expected due to a unique case where several different events occurred: an engine upgrade, combined with a failed recovery and failover during an upgrade.

No customer data or funds were lost, and all functionality of the Bitvavo platform has been restored. Availability and security are of critical importance for Bitvavo, and we would like to apologize for the unexpected extension of the planned maintenance time and the uncertainty and limited availability our users experienced during this downtime.

For any questions regarding this downtime or the security of your Bitvavo account, feel free to contact [email protected].

Incident Timeline

04:55: Deposits and withdrawals were disabled. 05:00: Trading halted. 05:02: Pre-upgrade checks verified, and we initiated the various upgrades (database cluster, message broker, matching engine). 05:08: Matching engine update completed successfully. 05:11: Message broker update completed successfully. 05:14: The database cluster rebooted, attempting to perform post-migration checks. At this point it is still unknown if the upgrade succeeded. 05:30: The underlying machine was deemed unhealty (status checks failing), and the instance was removed from service. It appreard that the upgrade failed. In this case an attempt is made to recover by performing a failover to a healthy service. 05:32: A failover to one of the read-repliacas failed. This was supposed to promote one of the read replicas to a writer, and route traffic away from the unhealthy instance to healthy instances. 05:36: Both writers & readers came stuck in a reboot loop with the database engine failing to load. Together with engineers from AWS, we started troubleshooting. 06:01: We could not immediately identify what the issue was and how it could be resolved. We decided to initiate the process to recreate the database from a snapshot and continue troubleshooting. 07:10: AWS engineers discovered the issue and started to implement a fix. 07:38: The new cluster created from a snapshot was ready. 07:43: We started to perform checks on this new cluster. We verified that the new cluster was running the new engine version. 07:54: We finished changing the hostnames, so that our applications pointed towards the new cluster. Slowly we started to re-allow traffic to this cluster and monitored impact. 08:18: A fix was applied for our original cluster. We continued to move ahead with the new cluster, as we already verified that it was running the new engine version and passed other checks. 08:20: Most services were restored 08:28: Trading on AAVE-EUR was enabled. 08:30: Trading on all other markets was enabled.

Popular news

How to Set Up and Use Trust Wallet for Binance Smart Chain
#Bitcoin#Bitcoins#Config+2 more tags

How to Set Up and Use Trust Wallet for Binance Smart Chain

Your Essential Guide To Binance Leveraged Tokens

Your Essential Guide To Binance Leveraged Tokens

How to Sell Your Bitcoin Into Cash on Binance (2021 Update)
#Subscriptions

How to Sell Your Bitcoin Into Cash on Binance (2021 Update)

What is Grid Trading? (A Crypto-Futures Guide)

What is Grid Trading? (A Crypto-Futures Guide)

Start trading with Cryptohopper for free!

Free to use - no credit card required

Let's get started
Cryptohopper appCryptohopper app

Disclaimer: Cryptohopper is not a regulated entity. Cryptocurrency bot trading involves substantial risks, and past performance is not indicative of future results. The profits shown in product screenshots are for illustrative purposes and may be exaggerated. Only engage in bot trading if you possess sufficient knowledge or seek guidance from a qualified financial advisor. Under no circumstances shall Cryptohopper accept any liability to any person or entity for (a) any loss or damage, in whole or in part, caused by, arising out of, or in connection with transactions involving our software or (b) any direct, indirect, special, consequential, or incidental damages. Please note that the content available on the Cryptohopper social trading platform is generated by members of the Cryptohopper community and does not constitute advice or recommendations from Cryptohopper or on its behalf. Profits shown on the Markteplace are not indicative of future results. By using Cryptohopper's services, you acknowledge and accept the inherent risks involved in cryptocurrency trading and agree to hold Cryptohopper harmless from any liabilities or losses incurred. It is essential to review and understand our Terms of Service and Risk Disclosure Policy before using our software or engaging in any trading activities. Please consult legal and financial professionals for personalized advice based on your specific circumstances.

©2017 - 2024 Copyright by Cryptohopper™ - All rights reserved.