MemoryUsageTracker::withinMemoryLimit() wraps
return _memoryUsageBytes <= static_cast<long long>(_maxAllowedMemoryUsageBytes);
However, there are multiple places in the code where this comparison is done explicitly with different predicates '<', '=>', '>', which can be confusing.
I propose to replace these comparisons with withinMemoryLimit() or !withinMemoryLimit() whenever possible for clarity and consistency.