Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

integer overflow when trying to print result of subsequent benchmark #25

Open
tobijdc opened this issue Jun 19, 2023 · 1 comment
Open

Comments

@tobijdc
Copy link

tobijdc commented Jun 19, 2023

Hey, just tried poop for the first time and

I just wanted to check peak_rss of different zstd compression levels.

sudo /home/tobias/.local/bin/poop "zstd -3 -f java_error_in_idea_.hprof" "zstd -6 -f java_error_in_idea_.hprof" "zstd -9 -f java_error_in_idea_.hprof"

When finishing the second benchmark (after the 3rd run, when he should post the results), there was a panic with integer overflow.
Running it again (after some time) it got through the second benchmark but crashed on the third 🤷‍♂️

error

I am using x86_64-linux-poop 0.3.0 on Ubuntu 22.04.

Let me know if I can provide you any additional information.

@dweiller
Copy link

dweiller commented Jun 20, 2023

Here is an error trace (there could be other similar cases):

thread 717791 panic: integer overflow
/path/to/poop/src/main.zig:420:35: 0x22ff42 in printMeasurement__anon_5830 (poop)
    try w.writeByteNTimes(' ', 42 - ("  measurement      ".len + count + 3));
                                  ^
/path/to/poop/src/main.zig:297:37: 0x234aab in main (poop)
                try printMeasurement(tty_conf, stdout_w, measurement, field.name, first_measurement, commands.items.len);
                                    ^
/path/to/zig/zig-linux-x86_64-0.11.0-dev.3395+1e7dcaa3a/lib/std/start.zig:609:37: 0x22b46e in posixCallMainAndExit (poop)
            const result = root.main() catch |err| {
                                    ^
/path/to/zig/zig-linux-x86_64-0.11.0-dev.3395+1e7dcaa3a/lib/std/start.zig:368:5: 0x22aed1 in _start (poop)
    @call(.never_inline, posixCallMainAndExit, .{});
    ^

If all causes of overflows are similar to this, I think #24 probably fixes them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants