perhaps should use `self.buckets.get_allocator()`