Skip to main content
  • Subscribe by RSS
  • ExLibris Dev

    Deadlocks appearing in log

    • Article Type: General
    • Product: Primo
    • Product Version: 2

    The be_log shows deadlock messages when indexing the FRBR stage. We are concerned about this.

    Some background:
    1. The frbr process tries to update all the PNX records that belong to the same group, and gives them the same groupid.
    2. The groups are identified by the "key" taken from p_frbr_keys, so if 2 or more records have the same key, they are declared as being in the same group.
    3. A single PNX record might have more then 1 key.
    4. This entire process is multithreaded.

    A deadlock occurs when:
    1. If 2 threads are trying to update the same record (because each thread handles a different key, and that record has more then 1 key), we then have a deadlock.
    2. Since we use batch updates, this might happen even within the same thread.

    The solution:
    We catch this deadlock exception, and we then insert the record one by one.

    • Article last edited: 10/8/2013
    // feedback widged