aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package-lock.json5
-rw-r--r--src/server/database.ts18
-rw-r--r--src/server/index.ts1
3 files changed, 16 insertions, 8 deletions
diff --git a/package-lock.json b/package-lock.json
index 72f6122d6..0f0384625 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6900,13 +6900,14 @@
"resolved": "https://registry.npmjs.org/image-size-stream/-/image-size-stream-1.1.0.tgz",
"integrity": "sha1-Ivou2mbG31AQh0bacUkmSy0l+Gs=",
"requires": {
+ "image-size": "github:netroy/image-size#da2c863807a3e9602617bdd357b0de3ab4a064c1",
"readable-stream": "^1.0.33",
"tryit": "^1.0.1"
},
"dependencies": {
"image-size": {
- "version": "git+https://github.com/netroy/image-size.git#da2c863807a3e9602617bdd357b0de3ab4a064c1",
- "from": "git+https://github.com/netroy/image-size.git#da2c863807a3e9602617bdd357b0de3ab4a064c1"
+ "version": "github:netroy/image-size#da2c863807a3e9602617bdd357b0de3ab4a064c1",
+ "from": "github:netroy/image-size#da2c863807a3e9602617bdd357b0de3ab4a064c1"
},
"isarray": {
"version": "0.0.1",
diff --git a/src/server/database.ts b/src/server/database.ts
index 2d95e7e70..1da31c5ff 100644
--- a/src/server/database.ts
+++ b/src/server/database.ts
@@ -14,7 +14,7 @@ export namespace Database {
export let disconnect: Function;
const schema = 'Dash';
const port = 27017;
- export const url = `mongodb://localhost:${port}/${schema}`;
+ export const url = `mongodb://localhost:${port}/`;
enum ConnectionStates {
disconnected = 0,
@@ -35,7 +35,7 @@ export namespace Database {
console.log(`mongoose established default connection at ${url}`);
resolve();
});
- mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true });
+ mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true, dbName: schema });
});
}
} catch (e) {
@@ -46,17 +46,22 @@ export namespace Database {
}
}
- class Database implements IDatabase {
+ export class Database implements IDatabase {
public static DocumentsCollection = 'documents';
private MongoClient = mongodb.MongoClient;
private currentWrites: { [id: string]: Promise<void> } = {};
private db?: mongodb.Db;
private onConnect: (() => void)[] = [];
-
constructor() {
- this.MongoClient.connect(url, { connectTimeoutMS: 30000, socketTimeoutMS: 30000 }, (_err, client) => {
+ }
+
+ doConnect() {
+ console.error(`\nConnecting to Mongo with URL : ${url}\n`);
+ this.MongoClient.connect(url, { connectTimeoutMS: 30000, socketTimeoutMS: 30000, useUnifiedTopology: true }, (_err, client) => {
+ console.error("mongo connect response\n");
if (!client) {
- console.error("\nPlease start MongoDB by running 'mongod' in a terminal before continuing...\n");
+ console.error("\nMongo connect failed with the error:\n");
+ console.log(_err);
process.exit(0);
}
this.db = client.db();
@@ -65,6 +70,7 @@ export namespace Database {
}
public async update(id: string, value: any, callback: (err: mongodb.MongoError, res: mongodb.UpdateWriteOpResult) => void, upsert = true, collectionName = Database.DocumentsCollection) {
+
if (this.db) {
const collection = this.db.collection(collectionName);
const prom = this.currentWrites[id];
diff --git a/src/server/index.ts b/src/server/index.ts
index 8b040c926..1d7520b1c 100644
--- a/src/server/index.ts
+++ b/src/server/index.ts
@@ -148,5 +148,6 @@ export async function launchServer() {
if (process.env.RELEASE) {
(sessionAgent = new DashSessionAgent()).launch();
} else {
+ (Database.Instance as Database.Database).doConnect();
launchServer();
}