Nicola Vulpe
|
QDB/MME lockup problem and solution
|
Nicola Vulpe
02/03/2009 11:55 AM
post21335
|
QDB/MME lockup problem and solution
Always ensure that the QDB has a threadpool with more threads than will be required by the MME synchronization threads
plus any other processes that may lock the MME database. The characteristics of the QDB threadpool can be set with the -
o thread options; for more information, see the QDB Developer's Guide chapter Starting QDB.
Testing of the MME has revealed that increasing the MME's maximum number of synchronization threads (<MaxThreads> in the
MME configuration file) without also increasing the maximum number of threads available to the QDB can result in the
QDB and MME locking up.
If multiple MME synchronization threads that need to lock the database exhaust the number of available threads, the QDB
can find itself without the thread it requires to unlock the database, thus causing a deadlock with the MME waiting for
the QDB to unlock the database while the QDB is waiting for the MME to release the thread it needs in order to unlock
the database.
Deadlocks like the one described above have been observed in scenarios where the MME has attempted to synchronize
multiple and large mediastores at the same time; for example, a USB stick with eight partitions.
|
|
|