Hi,
I'm running into a very limiting issue where updating a trigger or detaching a template from a large number of hosts is resulting in a deadlock. I've upgraded to 4.4.7 but still experiencing this issue.
A example error that resulted from updating a trigger condition is below.
We do have a large number of hosts. Is there a known issue and most importantly a workaround?
Thanks for any tips.
I'm running into a very limiting issue where updating a trigger or detaching a template from a large number of hosts is resulting in a deadlock. I've upgraded to 4.4.7 but still experiencing this issue.
A example error that resulted from updating a trigger condition is below.
Cannot update trigger pg_query(): Query failed: ERROR: deadlock detected DETAIL: Process 1420 waits for ShareLock on transaction 2078016030; blocked by process 12618. Process 12618 waits for ShareLock on transaction 2078014572; blocked by process 1420. HINT: See server log for query details. CONTEXT: while updating tuple (53035,255) in relation "triggers" [triggers.php:395 → CFrontendApiWrapper->update() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CTrigger->update() → CTriggerGeneral->inherit() → CTriggerGeneral->inheritOnHost() → CTriggerGeneral->updateReal() → DB::update() → DBexecute() → pg_query() in include/db.inc.php:487] Error in query [UPDATE triggers SET expression='{10591717}',recovery_expression='',des cription='{HOST.NAME}: No iDrac data for 30 minutes' WHERE triggerid='3175630'] [ERROR: deadlock detected DETAIL: Process 1420 waits for ShareLock on transaction 2078016030; blocked by process 12618. Process 12618 waits for ShareLock on transaction 2078014572; blocked by process 1420. HINT: See server log for query details. CONTEXT: while updating tuple (53035,255) in relation "triggers"] SQL statement execution has failed "UPDATE triggers SET expression='{10591717}',recovery_expression='',des cription='{HOST.NAME}: No data for 30 minutes' WHERE triggerid='3175630'".
Thanks for any tips.
Comment