mirror of
https://github.com/bootandy/dust.git
synced 2026-06-08 11:29:05 +03:00
[GH-ISSUE #197] Aborted (core dumped) #89
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @taqtiqa-mark on GitHub (Nov 16, 2021).
Original GitHub issue: https://github.com/bootandy/dust/issues/197
@bootandy commented on GitHub (Nov 20, 2021):
ok, what were you running that on ?
@taqtiqa-mark commented on GitHub (Nov 21, 2021):
System: Ubuntu 18.04
Folder: ~/
@bootandy commented on GitHub (Nov 28, 2021):
Does it happens with old versions of dust ?
if you 'cd' into one of the directories inside ~ do each of them work - if not which one fails?
Does du work ?
Do you have any suspicious directories that symlink to interesting places ?
Aprox how big is '~' ?
@BobIsOnFire commented on GitHub (Aug 9, 2022):
Hi! I got exact same issue today. It reproduces kinda randomly and could be related to having a huge number of path components.
I was trying to
dustmy working directory, as usual. But this time, I had 500 directories one inside another I previously generated for tests (mkdir -p $(for i in {1..500}; do echo -n "qwe/"; done))OS: RHEL 8.4
Backtrace (collected on 0.8.1):
Reproduces with 0.6.0 and above. dust 0.5.4 works without any issues.
Yup, all of them work individually (even the generated one) and together if I remove the generated directory:
It does, every time:
Nothing suspicious outside of the one I described.
@bootandy commented on GitHub (Aug 12, 2022):
Thanks@Bobisonfire , for a very detailed and interesting bug report.
Sadly I can't reproduce the failure on Ubuntu, however the clue is given with the stackoverflow so I'll try experimenting with figuring out how to increase & decrease stack-size.
Interesting that it worked with 'dust 0.5.4 '.
@bootandy commented on GitHub (Aug 13, 2022):
I've been able to reproduce it now - its something to do with how Rayon handles its number of threads and/or stack size. I'm investigating.
@kyoheiu commented on GitHub (Aug 18, 2022):
FYI, I had the same issue in 0.8.1 (arch package ver) and was told the following:
However, this no longer occurs in the latest version of the master branch. Thank you for the fix.
@kritma commented on GitHub (Nov 12, 2023):
Same issue, 0.8.6, macos m1, folder is 73G,
@bootandy commented on GitHub (Nov 16, 2023):
So this can happen if the stack size is too low.
Conversely if the stack size is too big, dust wont run on low powered machines. (eg small linode servers).
I'm surprised it is happening on a mac with a 73G folder.
If you are comfortable hacking dust yourself - The stack allocation is here: https://github.com/bootandy/dust/blob/master/src/main.rs#L229 if you increase it I'd be curious to know if that fixes your issue.
Perhaps I should let the user specify stack size in a later version.
@kritma commented on GitHub (Nov 16, 2023):
Can you just get rid of recursion? There may be significant speed increase.
@kritma commented on GitHub (Nov 16, 2023):
Did you tried single thread with async fs?
@bootandy commented on GitHub (Nov 18, 2023):
I have not tried that no. That would probably be a significant re-write.
@bootandy commented on GitHub (Nov 18, 2023):
We've been through several iterations, this is as fast as we have been able to make. Introducing Rayon gave large speed increases.
By nature file walking tends to be recursive. Especially if you are running with lots of threads.
I did have a version that assigned a thread to each subdirectory and ran without recursion but I couldn't allocate the threads well and the performance was poor.
@matthewblott commented on GitHub (Jan 3, 2024):
I'm afraid I have this issue. I'm on an M1 MacBook Pro with 16GB and I have the latest version of Dust installed :-)
@bootandy commented on GitHub (Jan 4, 2024):
I'm returning the '-stack-size' parameter and providing better defaults with the next version.
@bootandy commented on GitHub (Jan 10, 2024):
@matthewblott - I have pushed a new version of dust 0.9.0 - does it still have this issue - if yes can you try running dust with different stack sizes like this:
dust -S 1048576
dust -S 1073741824
// Increase the stack size if the error is still seen - thanks
@matthewblott commented on GitHub (Jan 30, 2024):
@bootandy That works a treat, thanks :-)