4store
Installation
Installed (suspiciously?) easily via homebrew
sudo -i -u hugh /opt/homebrew/bin/brew install fourstore
Storage & Configs
Data storage is in /opt/homebrew/var/fourstore
Config in /etc/4store.conf
Operation
Note that in order to use 4s-admin utility, there must be a running instance of 4s-boss daemon.
If pgrep 4s-boss doesn’t return any output, run sudo /opt/homebrew/bin/4s-boss to start it.
Remember also that you can only use one of 4s-httpd and 4s-import concurrently on the same store.
It’s less than ideal, but things seem to work best if 4s-boss and
4s-httpd are run as root.
You can run 4s-admin commands as any user, as they are actioned by
4s-boss which should be running as root.
List store status
4s-admin --verbose list-stores
Creating stores
The number of segments must be a power of 2. General rule-of-thumb is 2x number of cores, so suggest on this 12-core machine use 8 or 16 segments for any new stores (copying across from bytemark will be two segment stores).
4s-admin create-store foo --segments=8
Start/Stop/Delete store(s)
You can end the following commands with multiple store names or --all
4s-admin start-stores foo
4s-admin stop-stores foo
4s-admin delete-stores foo
Start/stop httpd
Each 4s-httpd daemon is started on a specific port. See config in /etc/4store.conf
sudo 4s-httpd foo
To specify a different port, or if not in /etc/4store.conf use 4s-http -p 9876 foo
As far as I recall, there isn’t a good way to stop 4s-httpd processes… use
sudo pkill -f '4s-httpd libmus_A'