HPCC-11693 Catch and handle OOM and failover when setting up HT

If it manages to avoid OOM on gather, but OOM's setting up sized
HT, then catch OOM exception coming back from roxiemem and let
it degrade to distributed local lookup join.

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-11693 Improove OOM handling when sizing tables

Prevent sizing tables, pushing out other memory (use allocate
with maxSpillCost). Catch a couple of other table sizing that
could OOM and ensure they fail over to local lookup join

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-11693 More changes, spotted during review

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
HPCC-11693 Add maxSpillCost option to allocateRowTable too

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
Merge pull request #6185 from jakesmith/hpcc-11693

HPCC-11693 Catch and handle OOM and failover when setting up HT

Reviewed-by: Gavin Halliday <ghalliday@hpccsystems.com>