Ver Fonte

Add indices to all models.

Lee Morgan há 5 anos atrás
pai
commit
72d72e414b
6 ficheiros alterados com 24 adições e 7 exclusões
  1. 6 1
      app.js
  2. 2 1
      models/archivedRecipe.js
  3. 2 1
      models/inventoryAdjustment.js
  4. 6 2
      models/merchant.js
  5. 4 1
      models/order.js
  6. 4 1
      models/transaction.js

+ 6 - 1
app.js

@@ -7,7 +7,12 @@ const fs = require("fs");
 
 const app = express();
 
-mongoose.connect(`${process.env.DB}/inventory-management`, {useNewUrlParser: true, useUnifiedTopology: true});
+mongoose.connect(`${process.env.DB}/inventory-management`, {
+    useNewUrlParser: true,
+    useUnifiedTopology: true,
+    useFindAndModify: false,
+    useCreateIndex: true
+});
 
 app.set("view engine", "ejs");
 

+ 2 - 1
models/archivedRecipe.js

@@ -4,7 +4,8 @@ const ArchivedRecipeSchema = new mongoose.Schema({
     merchant: {
         type: mongoose.Schema.Types.ObjectId,
         ref: "Merchant",
-        required: true
+        required: true,
+        index: true
     },
     name: {
         type: String,

+ 2 - 1
models/inventoryAdjustment.js

@@ -13,7 +13,8 @@ let inventoryAdjustmentSchema = new mongoose.Schema({
     ingredient: {
         type: mongoose.Schema.Types.ObjectId,
         ref: "Ingredient",
-        required: [true, "Must provide the ingredient"]
+        required: [true, "Must provide the ingredient"],
+        index: true
     },
     quantity: {
         type: Number,

+ 6 - 2
models/merchant.js

@@ -21,7 +21,8 @@ const MerchantSchema = new mongoose.Schema({
         validate: {
             validator: emailValid,
             message: "INVALID EMAIL ADDRESS"
-        }
+        },
+        index: true
     },
     password: {
         type: String,
@@ -63,7 +64,10 @@ const MerchantSchema = new mongoose.Schema({
         ref: "Recipe"
     }],
     session: {
-        sessionId: String,
+        sessionId: {
+            type: String,
+            index: true
+        },
         expiration: Date
     },
     verifyId: String

+ 4 - 1
models/order.js

@@ -6,7 +6,8 @@ const OrderSchema = new mongoose.Schema({
     merchant: {
         type: mongoose.Schema.Types.ObjectId,
         ref: "Merchant",
-        required: [true, "MUST PROVIDE THE MERCHANT"]
+        required: [true, "MUST PROVIDE THE MERCHANT"],
+        index: true
     },
     name: {
         type: String,
@@ -44,4 +45,6 @@ const OrderSchema = new mongoose.Schema({
     }]
 });
 
+OrderSchema.index({merchant: 1, date: 1});
+
 module.exports = mongoose.model("Order", OrderSchema);

+ 4 - 1
models/transaction.js

@@ -5,7 +5,8 @@ const TransactionSchema = new mongoose.Schema({
     merchant: {
         type: mongoose.Schema.Types.ObjectId,
         ref: "Merchant",
-        required: [true, "MERCHANT IS REQUIRED FOR A TRANSACTION"]
+        required: [true, "MERCHANT IS REQUIRED FOR A TRANSACTION"],
+        index: true
     },
     date: {
         type: Date,
@@ -29,4 +30,6 @@ const TransactionSchema = new mongoose.Schema({
     posId: String
 });
 
+TransactionSchema.index({merchant: 1, date: 1});
+
 module.exports = mongoose.model("Transaction", TransactionSchema);