torognes / swarm

A robust and fast clustering method for amplicon-based studies
GNU Affero General Public License v3.0
123 stars 23 forks source link

Fastidious Bloom filter requires more memory than indicated in the help #127

Closed frederic-mahe closed 5 years ago

frederic-mahe commented 5 years ago
-c, --ceiling positive integer
    when using the option --fastidious (-f), define swarm's maximum 
    memory footprint (in megabytes). [...] The value must be at least 3.

Testing with the smallest possible example triggering a fastidious grafting:

swarm -f -c 7 <(printf ">s1_3\nAA\n>s2_1\nCC\n")

Error: Insufficient memory remaining for Bloom filter

swarm -f -c 8 <(printf ">s1_3\nAA\n>s2_1\nCC\n")

OK

I'll modify the manpage. Maybe a test can be added to swarm when parsing the command line arguments to check that the input for -c is at least 8?

frederic-mahe commented 5 years ago

manpage modified (https://github.com/torognes/swarm/commit/83280ba19cb900a847791c1d6279a9cb76e5cb35)

torognes commented 5 years ago

Fixed in d2ade53.

torognes commented 5 years ago

Now fixed in zobrist branch too: f16a45f33a9f8b2bc6c2f3cd72388bd7520b2843

frederic-mahe commented 5 years ago

All tests regarding the ceiling value are now up to date (https://github.com/frederic-mahe/swarm-tests/commit/a08390b2fab014bfbea3e6a6c537151a6d454039).