From 1bb761542e7e918c5d4273c8a1fe4108462f540c Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 6 Jun 2018 14:34:05 -0600 Subject: [PATCH 1/4] set timeout for timelion search requests --- .../timelion/server/series_functions/es/lib/build_request.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js b/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js index 63754cde61976..40d186fae7cf7 100644 --- a/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js +++ b/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js @@ -66,9 +66,9 @@ export default function buildRequest(config, tlConfig, scriptedFields) { _.assign(aggCursor, createDateAgg(config, tlConfig, scriptedFields)); - return { index: config.index, + timeout: tlConfig.request.server.config().get('elasticsearch.shardTimeout') + 'ms', body: { query: { bool: bool From 551c8329a012944463cee803f250c42d2b301c26 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 6 Jun 2018 17:28:46 -0600 Subject: [PATCH 2/4] stub out server.config for mocha testing --- .../server/series_functions/__tests__/fixtures/tlConfig.js | 7 +++++++ .../server/series_functions/es/lib/build_request.js | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js index 0ea88724892f7..619966ef6551d 100644 --- a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js +++ b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js @@ -40,6 +40,13 @@ export default function () { } }) } + }, + config: function () { + return { + get: function () { + return 30000; + } + }; } }; diff --git a/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js b/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js index 40d186fae7cf7..a7ff47697d639 100644 --- a/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js +++ b/src/core_plugins/timelion/server/series_functions/es/lib/build_request.js @@ -68,7 +68,7 @@ export default function buildRequest(config, tlConfig, scriptedFields) { return { index: config.index, - timeout: tlConfig.request.server.config().get('elasticsearch.shardTimeout') + 'ms', + timeout: tlConfig.server.config().get('elasticsearch.shardTimeout') + 'ms', body: { query: { bool: bool From 1e9b7ce3b44bbe2f0bbdb9b522376b82bd9dd2f0 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 6 Jun 2018 18:08:18 -0600 Subject: [PATCH 3/4] test timeout set --- .../timelion/server/series_functions/__tests__/es.js | 7 +++++++ .../series_functions/__tests__/fixtures/tlConfig.js | 9 +++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/core_plugins/timelion/server/series_functions/__tests__/es.js b/src/core_plugins/timelion/server/series_functions/__tests__/es.js index d5e0ca80047b1..9802a1abb10d0 100644 --- a/src/core_plugins/timelion/server/series_functions/__tests__/es.js +++ b/src/core_plugins/timelion/server/series_functions/__tests__/es.js @@ -181,6 +181,13 @@ describe(filename, () => { expect(request.index).to.equal('beer'); }); + it('sets the timeout on the request', () => { + config.index = 'beer'; + const request = fn(config, tlConfig, emptyScriptedFields); + + expect(request.timeout).to.equal('30000ms'); + }); + it('always sets body.size to 0', () => { const request = fn(config, tlConfig, emptyScriptedFields); diff --git a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js index 619966ef6551d..2ac1e54eb4d5e 100644 --- a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js +++ b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js @@ -43,8 +43,13 @@ export default function () { }, config: function () { return { - get: function () { - return 30000; + get: function (key) { + switch (key) { + case 'elasticsearch.shardTimeout': + return 30000; + default: + throw new Error(`unexpected config ${key}`); + } } }; } From bebe5ee95535741c965d7176dddc9293a54626e1 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Mon, 11 Jun 2018 16:35:47 -0600 Subject: [PATCH 4/4] arrow functions --- .../server/series_functions/__tests__/fixtures/tlConfig.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js index 2ac1e54eb4d5e..a33c8845dd58a 100644 --- a/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js +++ b/src/core_plugins/timelion/server/series_functions/__tests__/fixtures/tlConfig.js @@ -41,9 +41,9 @@ export default function () { }) } }, - config: function () { + config: () => { return { - get: function (key) { + get: (key) => { switch (key) { case 'elasticsearch.shardTimeout': return 30000;