fixed deadlock in cache

Code block executed by **yield** could raised CycError and therefore did not delete key in `@in_progress` in 33 line (and did not broadcast monitor in 34). So the same query caused deadlock in 25.