In some cases (fairly common ones if allocating expanding arrays of rows) any memory that is free but too small for the block requested may be effectively 'leaked' leading to out-of-memory far earlier than would otherwise be expected.
This is most likely causing chaos in large thor jobs, including lookup join.
The cause appears to be an optimization in roxiemem's allocator concerning the heap high-water-mark being incorrectly set on occasion.
In some cases (fairly common ones if allocating expanding arrays of rows) any memory that is free but too small for the block requested may be effectively 'leaked' leading to out-of-memory far earlier than would otherwise be expected.
This is most likely causing chaos in large thor jobs, including lookup join.
The cause appears to be an optimization in roxiemem's allocator concerning the heap high-water-mark being incorrectly set on occasion.