rebuild data_buffer