Deadlock in Updates
Bug #866423 reported by
David Graf
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Zorba |
Fix Released
|
Critical
|
Markos Zaharioudakis |
Bug Description
If some update expressions are executed in a certain order, Zorba ends up in a deadlock.
Example Query:
import module namespace coll = "http://
declare sequential function local:test()
{
coll:
replace value of node collection(
coll:
();
};
local:test();
Changed in zorba: | |
milestone: | none → 2.2 |
Changed in zorba: | |
status: | Incomplete → Fix Committed |
Changed in zorba: | |
assignee: | Markos Zaharioudakis (markos-za) → Matthias Brantner (matthias-brantner) |
assignee: | Matthias Brantner (matthias-brantner) → Markos Zaharioudakis (markos-za) |
Changed in zorba: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Right now, the test zorba_stack_ module/ empty1 is hanging when executed in debug mode. In release mode it passes.
The stack module uses the collections, and there is a deadlock between removeNode function which aquires Writelock and the collection iterator, which aquires Readlock. The collection iterator is not closed before the apply updates.