Add threshold to downgrade compaction when swap is low

This patch introduces a threshold that allows compaction
system to downgrade full compactions into file only compactions
which do not cause compactions to happen as a way to reduce
pressure on swap thus aiming for a reduction in overall cpu
usage during high memory pressure scenarios as finding new
pages will likely be harder when the swap is low.

Bug: 226458732
Test: Manual. Verified that compaction runs artificially using different
thresholds and logging.

Change-Id: I12b460174c857f6750c9a173997c66381e4a1dc3
2 files changed