weakHashThresholdPct for dummies

I searched here in the forum, read the docs and the tuning guide but am still scratching my (dumb) head.

Can someone explain the weakHashThresholdPct config setting, with some real-world examples of when we’d want to set it to something other than the default 25%?

I see it can be set to -1 (always use) or 101% (never use). When should we do these things? Is there any way to benchmark it on our current data to see if there would be some benefit?

Do you have files where data shifts backwards of forwards sometimes? If so, the default will likely be fine. In many cases though the answer is “no” (frankly, almost always), and if the files are large then it’s actively harmful to have it enabled as it causes an extra read through the file to look for shifted data when syncing. The specific percentage value is just a knob for the tradeoff of when to put in the effort to scan for shifted data.

Thanks. The only files like that (large files where data shifts forward or backward within the file) that come to mind would be videos being edited or logfiles that get both appended to and truncated. I’m sure there are many other examples, but I can’t think of any right now. I don’t really have many of these. I just ran some stats on my Sync dir and only 0.19% of my files are even larger than 10Mb.

So would it be better to disable by setting it to 101%?