Error: old style datatstore config detected

Hi,
I’ve just installed IPFS for the first time. I installed v0.9.1 (so not the v0.10 rc1 yet).
I’ve installed it in a clean VPS from Digital Ocean (Ubuntu 20).

Now when I tried to set max datastore with command:
ipfs config Datastore.StorageMax 80GB

It gives me error: “Error: old style datatstore config detected”

Also when I try to start the daemon using: ipfs daemon I get:

Initializing daemon...
go-ipfs version: 0.9.1
Repo version: 11
System version: amd64/linux
Golang version: go1.16.6

Error: old style datatstore config detected

This is what the config looks like: https://dl.dropbox.com/s/xyt80sx3163u36p/shot_210911_231647.png

I tried searching the forum & google but didn’t find any results mentioning this same error…
Anybody can point me the right way to fix this pls?

Note that I successfully change storage path for IPFS to mounted volume (using DO’s separate volume) - you can also see this in the screenshot I linked above.

Thanks
Steven

The error comes from setting Path, not from the StorageMax thing (I tested).

I do not think the datastore location is configurable in the configuration anymore. Either place the full .ipfs folder in your mounted volume (you can use IPFS_PATH=/path/to/vol), or symlink that folder or the subfolders (blocks or badger etc).

Hey Hector,

Thank you for your response.
I just deleted the .ipfs folder and then ran the ipfs init command on the mounted volume.
That worked and its not giving that error anymore and I’ve increased size to 80GB.

Now when I run the daemon manually using ‘ipfs daemon’ all is good and its running. I do get this error:
Golang version: go1.16.6
2021/09/14 03:25:02 failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See {some-link} for details.

No idea what that is about however when I try to setup the daemon with systemd:

I run these commands:
sudo systemctl daemon-reload
sudo systemctl enable ipfs
sudo systemctl start ipfs

and none of these give me any error or anything. Then when I run
sudo systemctl status ipfs

I get this: https://dl.dropbox.com/s/j2f6ivgeiv21ftn/shot_210913_222831.png
Failed with result ‘exit-code’.

It’s the last step on getting IPFS fully working so any help would be much appreciated :slight_smile:

(I’m following this tutorial btw: How to Deploy an IPFS Node on Digital Ocean | by Matt Ober | Pinata | Medium)

fixed the buffer error from GO by running:

sysctl -w net.core.rmem_max=2500000

Did not make a difference for getting the daemon to run via systemd though

Yep, that is essentially the fix for that, as shown in the link in the error.

@hector any idea though why its still failing to run the daemon?
Even after the Go buffer fix I still get this:

when I run
sudo systemctl status ipfs

I get this: https://dl.dropbox.com/s/j2f6ivgeiv21ftn/shot_210913_222831.png
Failed with result ‘exit-code’.

what is in journalctl -u ipfs ?

It still seems to have issue:
Error: old style datatstore config detected

BUT when I start daemon manually (> ipfs daemon) it seems fine:

Almost starting to suspect I have 2 installations or something and when I start the daemon via:
sudo systemctl start ipfs

its pointing to the wrong one

I checked only have one binary on the system.
Content of: /etc/systemd/system/ipfs.service

[Unit]
Description=IPFS Daemon

[Service]
Type=simple
ExecStart=/home/kyvioipfs/go/bin/ipfs daemon --enable-gc
Group=kyvioipfs
Restart=always
Environment=“IPFS_PATH=/mnt/volume_nyc1_01/.ipfs”

[Install]
WantedBy=multi-user.target

When I start manually with the --enable-gc option is also just works fine:

I’m sure its something dumb & simple I’m missing here.

I think the systemd unit is using a different configuration folder as when you run manually. Check that you don’t have configs in both like /mnt/volume_nyc1_01/.ipfs and /mnt/volume_nyc1_01/

Thank you sir - that was indeed the problem.
Its all good and running now!