Massive X is randomly crashing GigPerformer due to a MUTEX error related to SQLite

dhjdhjdhj
dhjdhjdhj Member Posts: 34 Member
edited October 2024 in Massive X & Synths

One of our customers on tour in Europe has been getting getting random crashes over the last few months, even when he's not playing. GP was just terminating with an "uncaught exception" and with no useful stack trace
By running from the terminal we discovered that the error message was:
libc++abi: terminating due to uncaught exception of type CppSQLite3Exception
Note that we don't use SQLite in our product.

After adding some instrumentation to GP specifically for the customer we discovered the following:

============ std::rethrow_exception
============ catch exception
Exception: mutex lock failed: Invalid argument

The instrumentation ultimately allowed us to find the plugin that was crashing - which turned out to be Massive X as can clearly be seen here

Thread 0 Crashed:: HotFudge Dispatch queue: com.apple.main-thread
0 Massive X 0x168e85bb5 NI_5_15_10_R1::QReadWriteLock::tryLockForWrite(int) + 21
1 Massive X 0x169706da6 NI_5_15_10_R1::QSqlDatabasePrivate::removeDatabase(NI_5_15_10_R1::QString const&) + 54
2 Massive X 0x166e0cef5 Lechtal::MX::DB::ContentDatabase::~ContentDatabase() + 69
3 Massive X 0x166dfb4d2 Lechtal::MX::DB::MasterContentManager<Lechtal::MX::DB::ExpansionContentDescriptor, Lechtal::MX::DB::WavetableContentDescriptor, Lechtal::MX::DB::NoisetableContentDescriptor>::~MasterContentManager() + 194
4 Massive X 0x166dfb67e Lechtal::MX::DB::MXMasterContentManager::~MXMasterContentManager() + 14

Now, I'm hoping that NI will take this seriously and address the issue ASAP — in particular since this is an SQLite crash, I'm betting that it's related to their browser which means that other plugins (e.g, Kontakt) could have this same problem.

In the short term, I'm wondering what could be done to reduce the chances of this issue occurring. Would rebuilding the database help? Could we delete the original database first? Any other ideas?

Answers

This discussion has been closed.
Back To Top