tcp.ac/db.go

40 lines
990 B
Go
Raw Normal View History

2021-02-15 20:52:35 +00:00
package main
import (
2021-09-01 07:19:10 +00:00
"git.tcp.direct/tcp.direct/bitcask-mirror"
2021-02-15 20:52:35 +00:00
"github.com/rs/zerolog/log"
)
func dbInit() {
2021-09-01 07:19:10 +00:00
megabyte := (float64)(1024 * 1024)
2021-02-15 20:52:35 +00:00
opts := []bitcask.Option{
2021-09-01 07:19:10 +00:00
bitcask.WithMaxValueSize(uint64(maxSize) * uint64(megabyte)),
2021-02-15 20:52:35 +00:00
}
hashDB, _ = bitcask.Open(dbDir+"hsh", opts...) // this will probably only be for images?
log.Info().Msg("Initializing checksum database")
keyDB, _ = bitcask.Open(dbDir+"key", opts...) // delete keys (maybe for all objects?)
log.Info().Msg("Initializing key database")
imgDB, _ = bitcask.Open(dbDir+"img", opts...) // literal image files
log.Info().Msg("Initializing img database")
2021-09-01 07:19:10 +00:00
txtDB, _ = bitcask.Open(dbDir+"txt", opts...) // pastebin
2021-02-15 20:52:35 +00:00
log.Info().Msg("Initializing txt database")
urlDB, _ = bitcask.Open(dbDir + "url") // url shortener entries
log.Info().Msg("Initializing url database")
}
func dbSync() {
2021-07-29 19:40:53 +00:00
hashDB.Merge()
keyDB.Merge()
imgDB.Merge()
urlDB.Merge()
hashDB.Sync()
keyDB.Sync()
imgDB.Sync()
urlDB.Sync()
}