2016-05-03 1 views
1

Я пытаюсь запустить хранимую процедуру в моей базе данных SQL с сервера узлов с помощью seriate. Однако я получаю следующую ошибку, и я не уверен, почему . Я очень ценю вашу помощь в этомseriate RequestError: SqlContext Error. Не удалось выполнить шаг «GetData» с: «Тайм-аут: запрос не выполнен в 15000ms

Ошибка:. {[RequestError:. SqlContext Ошибка Ошибка на шаге "GetData" с: "Тайм-аут: Запрос не удалось завершить I 15000ms"] имя: «RequestError », сообщение: 'SqlContext Ошибка на шаге "GetData" с: " Тайм-аут запрос не удалось завершить в 15000ms"', код: 'ETIMEOUT', номер: 'ETIMEOUT', LINENUM Бер не определен, состояния: неопределенное, класса не определен, имя_сервера не определен, PROCNAME не определенно, precedingErrors: [], шаг: 'GetData'}

Это мой код:

var sql = require("seriate"); 

var connection = { 
    name: "example-1", 
    user: "user", 
    password: "pass", 
    host: "host_ip", 
    database: "Test" 
};  

exports.getDataSql = function(req, res) { 
    var results = {}; 

    sql.execute(connection, { 
     procedure: "GetData", 
     params: { 
      Name: { 
       type: sql.NVARCHAR(50), 
       val: "user2" 
      }, 
      LName: { 
       type: sql.NVARCHAR(50), 
       val: "user1" 
      }, 
      finalName: { 
       type: sql.NVARCHAR(50), 
       val: "user3" 
      } 
     } 
    }).then(function(results) { 
     console.log("getting data: "); 
     res.json(results[0][0]); 

    }, function(err) { 
     console.log("Error", err); 
     res.status(500).send({ error: 'Something failed!' }); 
    }); 

}; 

ответ

2

Вы, вероятно, нужно поднять свой тайм-аут запроса следующим образом:

var connection = { 
    name: "example-1", 
    user: "user", 
    password: "pass", 
    host: "host_ip", 
    database: "Test", 
    requestTimeout: 300000 
};  

Существует также свойство ConnectionTimeOut что может повлиять и на вас. Но эта проблема, вероятно, requestTimeout

+0

Благодарим вас за ответ! Я добавил тайм-аут запроса, но все равно получаю ту же ошибку. Знаете ли вы, что еще может быть? – Nat

+0

Вы также можете попробовать установить connectionTimeout, но сообщение об ошибке, похоже, указывает на то, что время ожидания запроса является проблемой. По-прежнему ли ошибка указывает на то, что «Запрос не завершился в 15000 мсек», в отличие от нового значения тайм-аута 300000? И как долго сохраняется ваш сохраненный proc для запуска в SSMS? – ktam33

+0

Я добавил обе и по-прежнему получаю ту же ошибку, да, она все еще говорит: «Запрос не завершился за 15000мс», как если бы строка, которую мы добавили, не увеличила значение таймаута. он запускается через 1 минуту в SSMS. – Nat