read_block return datalist now