cage will stay and keep re-spawning its self no matter what.
Well, in a way, this is intentional.
Though we never intended it to crash a server, we DID want a jail to remain no matter what another player or script may do.
It sounds as though by the time ULX is used to unjail someone, it seems as though ULX jail glitches, where, in fact, lua memory has queued so much on replacing the jail that the <whatever non-ULX script> that has tried removing it <x 100s> of times has got caught in a loop, which then crashes the server.
Sounds to me like the ULX 'don't let a jail get broken' and the <whatever script> 'don't let a prop be spawned' portions are duking it out, with the server as a casualty.
I don't see a nice way to safely exit unless, perhaps, we have ULX detect a race condition (say, ULX sees itself have to 'fix' a jail 20 times in <x> seconds>) and then tell jailer "Sorry, race detected, where are you trying to put the jail?"