From 74e6436814a120f3aee802d89cc52bd3f798771d Mon Sep 17 00:00:00 2001 From: Marcin Rataj Date: Fri, 28 Jan 2022 23:39:10 +0100 Subject: [PATCH] go-ipfs-config: docs: updated flatfs/badger profile helptext (#167) This is copy-paste from https://github.com/ipfs/go-ipfs/pull/8662 to ensure consistency. --- config/profile.go | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/config/profile.go b/config/profile.go index 1d379d97db0..cbc7c976453 100644 --- a/config/profile.go +++ b/config/profile.go @@ -123,18 +123,16 @@ This profile may only be applied when first initializing the node. "flatfs": { Description: `Configures the node to use the flatfs datastore. -This is the most battle-tested and reliable datastore, but it's significantly -slower than the badger datastore. You should use this datastore if: +This is the most battle-tested and reliable datastore. +You should use this datastore if: -* You need a very simple and very reliable datastore and you trust your +* You need a very simple and very reliable datastore, and you trust your filesystem. This datastore stores each block as a separate file in the underlying filesystem so it's unlikely to loose data unless there's an issue with the underlying file system. -* You need to run garbage collection on a small (<= 10GiB) datastore. The - default datastore, badger, can leave several gigabytes of data behind when - garbage collecting. -* You're concerned about memory usage. In its default configuration, badger can - use up to several gigabytes of memory. +* You need to run garbage collection in a way that reclaims free space as soon as possible. +* You want to minimize memory usage. +* You are ok with the default speed of data import, or prefer to use --nocopy. This profile may only be applied when first initializing the node. `, @@ -146,17 +144,21 @@ This profile may only be applied when first initializing the node. }, }, "badgerds": { - Description: `Configures the node to use the badger datastore. + Description: `Configures the node to use the experimental badger datastore. -This is the fastest datastore. Use this datastore if performance, especially -when adding many gigabytes of files, is critical. However: +Use this datastore if some aspects of performance, +especially the speed of adding many gigabytes of files, are critical. +However, be aware that: * This datastore will not properly reclaim space when your datastore is - smaller than several gigabytes. If you run IPFS with '--enable-gc' (you have - enabled block-level garbage collection), you plan on storing very little data in - your IPFS node, and disk usage is more critical than performance, consider using - flatfs. -* This datastore uses up to several gigabytes of memory. + smaller than several gigabytes. If you run IPFS with --enable-gc, you plan + on storing very little data in your IPFS node, and disk usage is more + critical than performance, consider using flatfs. +* This datastore uses up to several gigabytes of memory. +* Good for medium-size datastores, but may run into performance issues + if your dataset is bigger than a terabyte. +* The current implementation is based on old badger 1.x + which is no longer supported by the upstream team. This profile may only be applied when first initializing the node.`,