obj: make data buffer persistent and fix logging alloc