lilydjwg / ncdu-diff

ncdu fork that can compare and diff results
MIT License
27 stars 4 forks source link

Sizes not correctly sorted #3

Open mdehollander opened 5 years ago

mdehollander commented 5 years ago

Thanks for providing this ncdu-diff tool. It makes it more easy to monitor differences in disk usage.

When we load the json file produced with the ncdu-diff python script with the patched ncdu (1.14), we see this:

   20,8 GiB [##########] ****
    2,8 GiB [#         ] ****
  139,2 MiB [          ] ****
   19,3 GiB [          ] ****

As you can see this is not correctly sorted on size. Pressing s also does not produce a correctly sorted output.

Pressing g to show the percentages shows a negative value:

 20,8 GiB [475,1%] ****
    2,8 GiB [ 63,9%] ****
  139,2 MiB [  3,1%] ****
   19,3 GiB [-442,1%]****   

Any idea why this happens? In the folder with the negative percentage there is new data added

lilydjwg commented 4 years ago

Some of your sizes are out of range of a 32-bit integer. The same problem should happen without my patch, because the relevant code is in the dirlist_sort function which uses int instead of int64_t for sizes.

mdehollander commented 4 years ago

Thanks for your reply. Actually we don't see this behavior with the normal ncdu. Any suggestions how to can further test/debug this?

lilydjwg commented 4 years ago

I've done some update with regard to integer signs. Could you give the master code a try?