From 59787b23af3993346018557931592f23839df621 Mon Sep 17 00:00:00 2001 From: Jiaming Yuan Date: Sat, 8 Jul 2023 09:24:35 +0800 Subject: [PATCH] Allow empty page in external memory. (#9361) --- src/data/gradient_index_format.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/data/gradient_index_format.cc b/src/data/gradient_index_format.cc index 241abfb1f..fa8f492ed 100644 --- a/src/data/gradient_index_format.cc +++ b/src/data/gradient_index_format.cc @@ -68,7 +68,6 @@ class GHistIndexRawFormat : public SparsePageFormat { } std::size_t Write(GHistIndexMatrix const& page, common::AlignedFileWriteStream* fo) override { - CHECK_NE(page.index.Size(), 0) << "Empty page is not supported."; std::size_t bytes = 0; bytes += WriteHistogramCuts(page.cut, fo); // indptr @@ -81,7 +80,9 @@ class GHistIndexRawFormat : public SparsePageFormat { // - index buffer std::vector data(page.index.begin(), page.index.end()); bytes += fo->Write(static_cast(data.size())); - bytes += fo->Write(data.data(), data.size()); + if (!data.empty()) { + bytes += fo->Write(data.data(), data.size()); + } // hit count bytes += common::WriteVec(fo, page.hit_count);