3.3 KiB
3.3 KiB
Руководство по устранению проблем
Проблемы с установкой
Nim не найден
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
echo 'export PATH=$HOME/.nimble/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
Ошибка компиляции SSL
Решение: Всегда компилируйте с -d:ssl:
nim c -d:ssl -d:release -o:build/baradadb src/baradadb.nim
Отсутствуют зависимости
nimble install -d -y
Проблемы с выполнением
Порт уже используется
BARADB_PORT=5433 ./build/baradadb
# или
lsof -ti:9472 | xargs kill -9
Permission denied
mkdir -p ./data
chmod 755 ./data
Недостаточно памяти
BARADB_MEMTABLE_SIZE_MB=32 \
BARADB_CACHE_SIZE_MB=128 \
BARADB_VECTOR_EF_CONSTRUCTION=100 \
./build/baradadb
Диск заполнен
curl -X POST http://localhost:9470/api/admin/compact
./build/baradadb --compact
Проблемы с запросами
Синтаксическая ошибка
-- Правильно
SELECT name, age FROM users WHERE age > 18;
-- Неправильно (пропущена запятая)
SELECT name age FROM users WHERE age > 18;
Таблица не найдена
CREATE TYPE User {
name: str,
age: int32
};
Несовпадение типов
-- Правильно
SELECT * FROM users WHERE age > 18;
-- Неправильно
SELECT * FROM users WHERE age > '18';
Проблемы с соединением
Connection refused
ps aux | grep baradadb
./build/baradadb
sudo ufw allow 9472
Ошибка аутентификации
BARADB_AUTH_ENABLED=true \
BARADB_JWT_SECRET="correct-secret" \
./build/baradadb
SSL/TLS ошибки
BARADB_TLS_ENABLED=false ./build/baradadb
Проблемы с производительностью
Медленные запросы
curl -X POST http://localhost:9470/api/explain \
-d '{"query": "SELECT * FROM large_table"}'
Решения:
- Добавить индексы:
CREATE INDEX idx_users_name ON users(name); - Использовать LIMIT:
SELECT * FROM users LIMIT 100; - Увеличить кэш:
BARADB_CACHE_SIZE_MB=1024
Высокая загрузка CPU
BARADB_COMPACTION_INTERVAL_MS=300000 ./build/baradadb
Высокое потребление памяти
BARADB_MEMTABLE_SIZE_MB=64
BARADB_CACHE_SIZE_MB=256
BARADB_VECTOR_M=8
Проблемы кластера
Raft split-brain
Убедитесь в нечётном количестве узлов (3, 5, 7).
Отставание репликации
BARADB_REPLICATION_MODE=async
Режим отладки
BARADB_LOG_LEVEL=debug \
BARADB_LOG_FILE=/tmp/baradb_debug.log \
./build/baradadb
Получение помощи
- Проверьте логи:
tail -f /var/log/baradb/baradb.log - Проверьте метрики:
curl http://localhost:9470/metrics - Запустите диагностику:
./build/baradadb --diagnose - Откройте issue с версией BaraDB и логами