EdgelessDB is a MySQL-compatible database for confidential computing. It runs entirely inside a secure enclave and comes with advanced features for collaboration, recovery, and access control.
If during the creation of a table the process crashes between creating the .frm file and registering it in RocksDB, it will fail on start due to this inconsistency.
I guess this is desired behavior in MariaDB. They don't want to delete any (meta)data automatically and the user can easily recover it manually by deleting the .frm file.
With EDB, this isn't possible because .frm files are redirected to RocksDB storage. Instead of failing, it will now clean up the .frm file. I think this is good enough for our use case. (Actual fix is in the submodule change.)
@m1ghtym0 As you've dealt with .frm file handling in the past, please think about whether you see any issues with this solution.
If during the creation of a table the process crashes between creating the .frm file and registering it in RocksDB, it will fail on start due to this inconsistency.
I guess this is desired behavior in MariaDB. They don't want to delete any (meta)data automatically and the user can easily recover it manually by deleting the .frm file.
With EDB, this isn't possible because .frm files are redirected to RocksDB storage. Instead of failing, it will now clean up the .frm file. I think this is good enough for our use case. (Actual fix is in the submodule change.)
@m1ghtym0 As you've dealt with .frm file handling in the past, please think about whether you see any issues with this solution.