I have not checked the whole code, so it could be that I'm missing something.

But could it be that this can cause a memory leak? E.g. if a tracable operation doesn't complete and doesn't clean up its identifier.... can it be that some collection keeps growing?