Tune pebbledb a bit

This commit is contained in:
eleksir
2025-05-12 19:16:48 +03:00
parent cfb98fc0b3
commit 8542946a33
5 changed files with 73 additions and 15 deletions

63
.golangci.yml Normal file
View File

@@ -0,0 +1,63 @@
run:
tests: false
modules-download-mode: readonly
allow-parallel-runners: true
go: '1.24'
linters-settings:
gosec:
excludes:
# Оно не используется для повышения безопасности или каких-то таких секъюрых вещей, оно используется для выборки
# произвольного элемента из массива, так что ИДИ НАХУЙ с этой проверкой и не еби мозги липовой безопасностью.
- G404 # Insecure random number source (rand)
linters:
disable-all: true
enable:
- errcheck
- gosimple
- govet
- ineffassign
- staticcheck
- unused
- asasalint
- asciicheck
- bodyclose
- containedctx
- contextcheck
- decorder
- durationcheck
- errchkjson
- errorlint
- exhaustive
- exhaustruct
- gci
- ginkgolinter
- gocheckcompilerdirectives
- gocritic
- godot
- err113
- gofmt
- goimports
- gosec
- gosmopolitan
- grouper
- importas
- ireturn
- makezero
- mirror
- nakedret
- nilerr
- nilnil
- nlreturn
- noctx
- nolintlint
- nonamedreturns
- predeclared
- promlinter
- reassign
- revive
- rowserrcheck
- stylecheck
- unconvert
- wastedassign
- whitespace
- wsl

View File

@@ -26,9 +26,8 @@ func main() {
// Откроем все наши БД // Откроем все наши БД
var options pebble.Options var options pebble.Options
// По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками // По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками
// порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук, что нас не // порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук.
// устраивает, поэтому немного снизим эту цифру до более приемлемых значений options.L0CompactionFileThreshold = 300
options.L0CompactionFileThreshold = 8
lib.PebbleDB.Fortune.Name = "fortune_db" lib.PebbleDB.Fortune.Name = "fortune_db"
lib.PebbleDB.Fortune.DB, err = pebble.Open(lib.Config.DataDir+"/"+lib.PebbleDB.Fortune.Name, &options) lib.PebbleDB.Fortune.DB, err = pebble.Open(lib.Config.DataDir+"/"+lib.PebbleDB.Fortune.Name, &options)

View File

@@ -20,9 +20,8 @@ func main() {
// Откроем все нужные нам для работы базюльки // Откроем все нужные нам для работы базюльки
var options pebble.Options var options pebble.Options
// По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками // По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками
// порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук, что нас не // порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук.
// устраивает, поэтому немного снизим эту цифру до более приемлемых значений options.L0CompactionFileThreshold = 300
options.L0CompactionFileThreshold = 8
lib.PebbleDB.Monday.Name = "monday" lib.PebbleDB.Monday.Name = "monday"
lib.PebbleDB.Monday.DB, err = pebble.Open(lib.Config.DataDir+"/friday_db/"+lib.PebbleDB.Monday.Name, &options) lib.PebbleDB.Monday.DB, err = pebble.Open(lib.Config.DataDir+"/friday_db/"+lib.PebbleDB.Monday.Name, &options)

View File

@@ -37,9 +37,8 @@ func main() {
// Откроем все наши БД // Откроем все наши БД
var options pebble.Options var options pebble.Options
// По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками // По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными настройками
// порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук, что нас не // порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук.
// устраивает, поэтому немного снизим эту цифру до более приемлемых значений options.L0CompactionFileThreshold = 300
options.L0CompactionFileThreshold = 8
lib.PebbleDB.Proverb.Name = "proverb_db" lib.PebbleDB.Proverb.Name = "proverb_db"
lib.PebbleDB.Proverb.DB, err = pebble.Open(lib.Config.DataDir+"/"+lib.PebbleDB.Proverb.Name, &options) lib.PebbleDB.Proverb.DB, err = pebble.Open(lib.Config.DataDir+"/"+lib.PebbleDB.Proverb.Name, &options)

View File

@@ -29,9 +29,8 @@ func changeKarma(chatID string, phrase string, action string) string {
if _, ok := KarmaDB[database]; !ok { if _, ok := KarmaDB[database]; !ok {
var options pebble.Options var options pebble.Options
// По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными // По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными
// настройками порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук, // настройками порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук.
// что нас не устраивает, поэтому немного снизим эту цифру до более приемлемых значений options.L0CompactionFileThreshold = 300
options.L0CompactionFileThreshold = 8
KarmaDB[database], err = pebble.Open(Config.DataDir+"/"+database, &options) KarmaDB[database], err = pebble.Open(Config.DataDir+"/"+database, &options)
@@ -124,9 +123,8 @@ func getKarma(chatID string, phrase string) string {
if _, ok := KarmaDB[database]; !ok { if _, ok := KarmaDB[database]; !ok {
var options pebble.Options var options pebble.Options
// По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными // По дефолту ограничение ставится на мегабайты данных, а не на количество файлов, поэтому с дефолтными
// настройками порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук, // настройками порождается огромное количество файлов. Умолчальное ограничение на количество файлов - 500 штук.
// что нас не устраивает, поэтому немного снизим эту цифру до более приемлемых значений options.L0CompactionFileThreshold = 300
options.L0CompactionFileThreshold = 8
KarmaDB[database], err = pebble.Open(Config.DataDir+"/"+database, &options) KarmaDB[database], err = pebble.Open(Config.DataDir+"/"+database, &options)
if err != nil { if err != nil {