Skip to content

Commit f67b402

Browse files
chore[array]: tree display no div 0 (#5032)
Signed-off-by: Joe Isaacs <[email protected]>
1 parent dd22838 commit f67b402

File tree

1 file changed

+12
-2
lines changed
  • vortex-array/src/array/display

1 file changed

+12
-2
lines changed

vortex-array/src/array/display/tree.rs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,18 @@ impl<'a, 'b: 'a> TreeFormatter<'a, 'b> {
3232
fn format(&mut self, name: &str, array: ArrayRef) -> fmt::Result {
3333
let nbytes = array.nbytes();
3434
let total_size = self.total_size.unwrap_or(nbytes);
35+
let percent = if total_size == 0 {
36+
0.0
37+
} else {
38+
100_f64 * nbytes as f64 / total_size as f64
39+
};
3540
writeln!(
3641
self,
3742
"{}: {} nbytes={} ({:.2}%)",
3843
name,
3944
array.display_as(DisplayOptions::MetadataOnly),
4045
format_size(nbytes, DECIMAL),
41-
100_f64 * nbytes as f64 / total_size as f64
46+
percent
4247
)?;
4348

4449
self.indent(|i| {
@@ -47,12 +52,17 @@ impl<'a, 'b: 'a> TreeFormatter<'a, 'b> {
4752
writeln!(i.fmt)?;
4853

4954
for buffer in array.buffers() {
55+
let buffer_percent = if nbytes == 0 {
56+
0.0
57+
} else {
58+
100_f64 * buffer.len() as f64 / nbytes as f64
59+
};
5060
writeln!(
5161
i,
5262
"buffer (align={}): {} ({:.2}%)",
5363
buffer.alignment(),
5464
format_size(buffer.len(), DECIMAL),
55-
100_f64 * buffer.len() as f64 / nbytes as f64
65+
buffer_percent
5666
)?;
5767
}
5868

0 commit comments

Comments
 (0)