|
|
@@ -16,16 +16,17 @@ async function up(knex) {
|
|
|
// using MySQL you should make sure you don't have these indexes already
|
|
|
const ifNotExists = isMySQL ? "" : "IF NOT EXISTS";
|
|
|
|
|
|
- await knex.raw(`
|
|
|
- CREATE INDEX ${ifNotExists} links_domain_id_index ON links (domain_id);
|
|
|
- CREATE INDEX ${ifNotExists} links_user_id_index ON links (user_id);
|
|
|
- CREATE INDEX ${ifNotExists} links_address_index ON links (address);
|
|
|
- CREATE INDEX ${ifNotExists} links_expire_in_index ON links (expire_in);
|
|
|
- CREATE INDEX ${ifNotExists} domains_address_index ON domains (address);
|
|
|
- CREATE INDEX ${ifNotExists} domains_user_id_index ON domains (user_id);
|
|
|
- CREATE INDEX ${ifNotExists} hosts_address_index ON hosts (address);
|
|
|
- CREATE INDEX ${ifNotExists} visits_link_id_index ON visits (link_id);
|
|
|
- `);
|
|
|
+ // create them separately because one string with break lines didn't work on MySQL
|
|
|
+ await Promise.all([
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} links_domain_id_index ON links (domain_id);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} links_user_id_index ON links (user_id);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} links_address_index ON links (address);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} links_expire_in_index ON links (expire_in);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} domains_address_index ON domains (address);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} domains_user_id_index ON domains (user_id);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} hosts_address_index ON hosts (address);`),
|
|
|
+ knex.raw(`CREATE INDEX ${ifNotExists} visits_link_id_index ON visits (link_id);`),
|
|
|
+ ]);
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
@@ -37,16 +38,16 @@ async function down(knex) {
|
|
|
table.dropUnique(["apikey"]);
|
|
|
});
|
|
|
|
|
|
- await knex.raw(`
|
|
|
- DROP INDEX links_domain_id_index;
|
|
|
- DROP INDEX links_user_id_index;
|
|
|
- DROP INDEX links_address_index;
|
|
|
- DROP INDEX links_expire_in_index;
|
|
|
- DROP INDEX domains_address_index;
|
|
|
- DROP INDEX domains_user_id_index;
|
|
|
- DROP INDEX hosts_address_index;
|
|
|
- DROP INDEX visits_link_id_index;
|
|
|
- `);
|
|
|
+ await Promise.all([
|
|
|
+ knex.raw(`DROP INDEX links_domain_id_index;`),
|
|
|
+ knex.raw(`DROP INDEX links_user_id_index;`),
|
|
|
+ knex.raw(`DROP INDEX links_address_index;`),
|
|
|
+ knex.raw(`DROP INDEX links_expire_in_index;`),
|
|
|
+ knex.raw(`DROP INDEX domains_address_index;`),
|
|
|
+ knex.raw(`DROP INDEX domains_user_id_index;`),
|
|
|
+ knex.raw(`DROP INDEX hosts_address_index;`),
|
|
|
+ knex.raw(`DROP INDEX visits_link_id_index;`),
|
|
|
+ ]);
|
|
|
};
|
|
|
|
|
|
module.exports = {
|