Callback functionality will be removed in the future. Either detect the buffer_is_full exception or use a buffer with auto_grow::yes. If you want to avoid growing buffers, check that the used size of the buffer (committed()) is small enough compared to the capacity (for instance small than 90% of the capacity) before adding anything to the Buffer. If the buffer is initialized with auto_grow::yes, it will still grow in the rare case that a very large object will be added taking more than the difference between committed() and capacity().