parent
							
								
									16136c252a
								
							
						
					
					
						commit
						b62203b1f1
					
				
					 2 changed files with 21 additions and 4 deletions
				
			
		
							
								
								
									
										17
									
								
								src/index.ts
									
										
									
									
									
								
							
							
						
						
									
										17
									
								
								src/index.ts
									
										
									
									
									
								
							|  | @ -14,7 +14,7 @@ import * as portscanner from 'portscanner'; | |||
| import isRoot = require('is-root'); | ||||
| import Xev from 'xev'; | ||||
| import * as program from 'commander'; | ||||
| import mongo from './db/mongodb'; | ||||
| import mongo, { nativeDbConn } from './db/mongodb'; | ||||
| 
 | ||||
| import Logger from './misc/logger'; | ||||
| import EnvironmentInfo from './misc/environmentInfo'; | ||||
|  | @ -23,6 +23,7 @@ import serverStats from './daemons/server-stats'; | |||
| import notesStats from './daemons/notes-stats'; | ||||
| import loadConfig from './config/load'; | ||||
| import { Config } from './config/types'; | ||||
| import { lessThan } from './prelude/array'; | ||||
| 
 | ||||
| const clusterLog = debug('misskey:cluster'); | ||||
| const ev = new Xev(); | ||||
|  | @ -158,11 +159,19 @@ function checkMongoDb(config: Config) { | |||
| 	mongoDBLogger.info(`Connecting to ${uri}`); | ||||
| 
 | ||||
| 	mongo.then(() => { | ||||
| 		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)), [3, 6])) { | ||||
| 				mongoDBLogger.error(`MongoDB version is less than 3.6. Please upgrade it.`); | ||||
| 				process.exit(1); | ||||
| 			} | ||||
| 		}); | ||||
| 
 | ||||
| 		mongoDBLogger.succ('Connectivity confirmed'); | ||||
| 	}) | ||||
| 	.catch(err => { | ||||
| 		mongoDBLogger.error(err.message); | ||||
| 	}); | ||||
| 		.catch(err => { | ||||
| 			mongoDBLogger.error(err.message); | ||||
| 		}); | ||||
| } | ||||
| 
 | ||||
| function spawnWorkers(limit: number) { | ||||
|  |  | |||
|  | @ -49,3 +49,11 @@ export function groupBy<T>(f: (x: T, y: T) => boolean, xs: T[]): T[][] { | |||
| export function groupOn<T, S>(f: (x: T) => S, xs: T[]): T[][] { | ||||
| 	return groupBy((a, b) => f(a) === f(b), xs); | ||||
| } | ||||
| 
 | ||||
| export function lessThan(xs: number[], ys: number[]): boolean { | ||||
| 	for (let i = 0; i < Math.min(xs.length, ys.length); i++) { | ||||
| 		if (xs[i] < ys[i]) return true; | ||||
| 		if (xs[i] > ys[i]) return false; | ||||
| 	} | ||||
| 	return xs.length < ys.length; | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue