summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMeiMei <30769358+mei23@users.noreply.github.com>2018-11-21 12:45:40 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2018-11-21 12:45:40 +0900
commitb7b36973f7785146a8ca786202a0c751abfdfffc (patch)
tree24f9404458a9895093d86530350536eeb81177a8
parent10.56.2 (diff)
downloadsharkey-b7b36973f7785146a8ca786202a0c751abfdfffc.tar.gz
sharkey-b7b36973f7785146a8ca786202a0c751abfdfffc.tar.bz2
sharkey-b7b36973f7785146a8ca786202a0c751abfdfffc.zip
Fix: stop in DB check (#3356)
-rw-r--r--src/index.ts24
1 files changed, 10 insertions, 14 deletions
diff --git a/src/index.ts b/src/index.ts
index 01b9d2944b..b61283b4e9 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -23,7 +23,6 @@ import notesStats from './daemons/notes-stats';
import loadConfig from './config/load';
import { Config } from './config/types';
import { lessThan } from './prelude/array';
-import { Db } from 'mongodb';
const clusterLog = debug('misskey:cluster');
const ev = new Xev();
@@ -192,38 +191,35 @@ async function init(): Promise<Config> {
}
// Try to connect to MongoDB
- //await checkMongoDB(config);
+ await checkMongoDB(config);
return config;
}
const requiredMongoDBVersion = [3, 6];
-function checkMongoDB(config: Config): Promise<void> {
+function checkMongoDB(config: Config) {
const mongoDBLogger = new Logger('MongoDB');
const u = config.mongodb.user ? encodeURIComponent(config.mongodb.user) : null;
const p = config.mongodb.pass ? encodeURIComponent(config.mongodb.pass) : null;
const uri = `mongodb://${u && p ? `${u}:****@` : ''}${config.mongodb.host}:${config.mongodb.port}/${config.mongodb.db}`;
mongoDBLogger.info(`Connecting to ${uri}`);
- return mongo.then(async () => {
+ mongo.then(() => {
mongoDBLogger.succ('Connectivity confirmed');
- const runningMongoDBVersion = (await nativeDbConn().then(getMongoDBVersion)).split('.').map(x => parseInt(x, 10));
- mongoDBLogger.info(`Version: ${runningMongoDBVersion.join('.')}`);
- if (lessThan(runningMongoDBVersion, requiredMongoDBVersion)) {
- mongoDBLogger.error(`MongoDB version is less than ${requiredMongoDBVersion.join('.')}. Please upgrade it.`);
- process.exit(1);
- }
+ nativeDbConn().then(db => db.admin().serverInfo()).then(x => x.version).then((version: string) => {
+ mongoDBLogger.info(`Version: ${version}`);
+ if (lessThan(version.split('.').map(x => parseInt(x, 10)), requiredMongoDBVersion)) {
+ mongoDBLogger.error(`MongoDB version is less than ${requiredMongoDBVersion.join('.')}. Please upgrade it.`);
+ process.exit(1);
+ }
+ });
}).catch(err => {
mongoDBLogger.error(err.message);
});
}
-async function getMongoDBVersion(db: Db): Promise<string> {
- return (await db.admin().serverInfo()).version;
-}
-
async function spawnWorkers(limit: number = Infinity) {
const workers = Math.min(limit, os.cpus().length);
Logger.info(`Starting ${workers} worker${workers === 1 ? '' : 's'}...`);