I just realized that there is an easy way to investigate this strange behavior that does not require a system with a large amount of memory. Just add the following as the first line of the root creation procedure: set_max_mem (50_000_000) Then it will never allocate more than about 50 MB but the same unfriendly behavior (continuing to run but *very* slowly and eventually raising an out of memory exception) will occur. I made this change and confirmed that the system will run for a long time before it finally reports "out of memory".