Commands¶
This page describes the various subcommands supported by the lightningstream command.
lightningstream¶
This tool syncs one or more LMDB databases with an S3 bucket
Synopsis¶
This tool syncs one or more LMDB databases with an S3 bucket
lightningstream [flags]
Options¶
  -c, --config string          Config file (default "lightningstream.yaml")
      --debug                  Enable debug logging
  -h, --help                   help for lightningstream
  -i, --instance string        Instance name, defaults to hostname. MUST be unique for each instance
      --log-config             Log the evaluated configuration on startup
      --log-format string      Log format (default: human; options: human, logfmt, json)
      --log-level string       Log level (default: info; options: debug, info, warning, error, fatal)
      --log-timestamp string   Log timestamp (default: short; options: short, disable, full)
      --minimum-pid int        Try to fork processes until we reach a minimum PID to avoid LMDB lock PID clashes when running in a container. The maximum allowed value is 200
      --timeout duration       Timeout for command execution (exit code 75)
lightningstream docs¶
Generate markdown documentation for all commands to stdout
lightningstream docs [flags]
Options¶
  -h, --help   help for docs
lightningstream drop-shadow¶
Drop all shadow dbs and other sync metadata. This can potentially cause data loss.
lightningstream drop-shadow [flags]
Options¶
  -h, --help   help for drop-shadow
lightningstream dump¶
Dump LMDB contents
lightningstream dump [flags]
Options¶
  -h, --help          help for dump
  -H, --hide          Hide private lightningstream databases
  -n, --name string   Only dump given database name
lightningstream experimental¶
Experimental commands, may disappear or change in any future version
lightningstream experimental [flags]
Options¶
  -h, --help   help for experimental
lightningstream experimental help¶
Help about any command
Synopsis¶
Help provides help for any command in the application. Simply type experimental help [path to command] for full details.
lightningstream experimental help [command] [flags]
Options¶
  -h, --help   help for help
lightningstream experimental migrate-timestamps¶
Migrate timestamps from one DBI to another DBI
Synopsis¶
Migrate timestamps from one DBI to a target DBI by key.
Requirements:
- The keys must match between source and destination without any transformation.
 - The DBIs must not use special DBI flags.
 - The destination DBI must use the new 24+ byte native headers.
 - The source DBI must use the new header, or the old (v0.2.0) 8 byte timestamp-only headers.
 
This command can be used for both native DBIs, and for shadow DBIs. If the target timestamp is higher than the source, it will not be updated.
The actual values are not compared, it blindly copies the timestamps. This is only useful during a migration where no new data is written.
This command will abort the transaction and exit with an error if any value shorter than expected is encountered.
Example to migrate shard records when moving from PowerDNS Auth 4.7 to 4.8:
... migrate-timestamps --add-delete-entries --database shard --src-dbi _sync_shadow_records --dst-dbi records_v5
lightningstream experimental migrate-timestamps [flags]
Options¶
      --add-delete-entries           Create 24-byte deletion headers for entries marked as deleted in the source database.
  -d, --database string              Named database to operate on
      --dst-dbi string               Destination DBI
  -h, --help                         help for migrate-timestamps
      --ignore-src-dbi-not-present   Do not exit with an error if the source DBI does not exist, ignore it.
      --src-dbi string               Source DBI
lightningstream experimental pdns-v5-fix-duplicate-domains¶
Fix duplicate domain entries for PowerDNS Auth 4.8 with schema version 5
Synopsis¶
The PowerDNS Auth 4.8 schema version 5 makes it possible to create duplicate domain entries on different instances, which can cause an error in early version of Auth. This command allows you to remove those duplicate entries.
lightningstream experimental pdns-v5-fix-duplicate-domains [flags]
Options¶
      --dangerous-do-rename   Automatically rename the newer duplicate domain name to fix
  -d, --database string       Named database to operate on (must be the main database for pdns auth)
  -h, --help                  help for pdns-v5-fix-duplicate-domains
lightningstream help¶
Help about any command
Synopsis¶
Help provides help for any command in the application. Simply type lightningstream help [path to command] for full details.
lightningstream help [command] [flags]
Options¶
  -h, --help   help for help
lightningstream receive¶
Like sync, but never write snapshots
lightningstream receive [flags]
Options¶
  -h, --help                          help for receive
      --only-once                     Only do a single run and exit
      --wait-for-marker-file string   Marker file to wait for in storage before starting syncers
lightningstream snapshots¶
Remote snapshot operations (list, dump, remove, etc)
lightningstream snapshots [flags]
Options¶
  -h, --help   help for snapshots
lightningstream snapshots dump¶
Dump snapshot contents for debugging
lightningstream snapshots dump [flags]
Options¶
  -d, --dbi string      Only output DBI with this exact name
  -f, --format string   Output format, one of: 'debug' (default), 'text' (same) (default "debug")
  -h, --help            help for dump
  -l, --local           Dump a local file instead of a remote snapshot
lightningstream snapshots get¶
Download a snapshot
lightningstream snapshots get [flags]
Options¶
  -h, --help            help for get
  -o, --output string   Output filename, if not the same as the remote name
lightningstream snapshots help¶
Help about any command
Synopsis¶
Help provides help for any command in the application. Simply type snapshots help [path to command] for full details.
lightningstream snapshots help [command] [flags]
Options¶
  -h, --help   help for help
lightningstream snapshots list¶
List snapshots
lightningstream snapshots list [flags]
Options¶
  -h, --help            help for list
  -l, --long            Add extra information, like size
  -p, --prefix string   Prefix filter
  -t, --time            Sort by snapshot time
lightningstream snapshots put¶
Upload a snapshot
lightningstream snapshots put [flags]
Options¶
      --force         Force the use of an invalid snapshot name
  -h, --help          help for put
  -n, --name string   Name to store the snapshot as, if different from the local name
lightningstream snapshots remove¶
Remove snapshot
lightningstream snapshots remove [flags]
Options¶
  -h, --help   help for remove
lightningstream stats¶
Print LMDB stats
lightningstream stats [flags]
Options¶
  -h, --help   help for stats
lightningstream sync¶
Continuous bidirectional syncing
lightningstream sync [flags]
Options¶
  -h, --help                          help for sync
      --only-once                     Only do a single run and exit
      --wait-for-marker-file string   Marker file to wait for in storage before starting syncers
lightningstream version¶
Print the version number
lightningstream version [flags]
Options¶
  -h, --help   help for version