fix: MSSQL - adds IDENTITY_INSERT in rebuild-tree.js #1125 (#1130)

Fixes issue when tree is being rebuilt with mssql backend
This commit is contained in:
AchimHentschel 2019-10-26 00:28:41 +02:00 committed by Nicolas Giard
parent 8000ebec8f
commit 44a1c8699f

View File

@ -53,7 +53,16 @@ module.exports = async (pageId) => {
await WIKI.models.knex.table('pageTree').truncate()
if (tree.length > 0) {
await WIKI.models.knex.table('pageTree').insert(tree)
const { bindings, sql } = WIKI.models.knex.table('pageTree').insert(tree).toSQL();
if (WIKI.config.db.type === 'mssql') {
await WIKI.models.knex.raw(sql, bindings).wrap(
'SET IDENTITY_INSERT pageTree ON;',
'SET IDENTITY_INSERT pageTree OFF;',
)
} else {
await WIKI.models.knex.raw(sql, bindings)
}
// await WIKI.models.knex.table('pageTree').insert(tree)
}
await WIKI.models.knex.destroy()