Skip to content

Commit ae06711

Browse files
authored
optimize utils.box_is_configured (#375)
There is no reason to check box.cfg type for each call. Once box was configured it will return true. So let's just replace module function with dummy implementation that will return always true after it returned `true` once.
1 parent 16ae3d0 commit ae06711

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

metrics/utils.lua

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
11
local metrics = require('metrics')
22

33
local TNT_PREFIX = 'tnt_'
4+
local utils = {}
45

5-
local function set_gauge(name, description, value, labels, prefix)
6+
function utils.set_gauge(name, description, value, labels, prefix)
67
prefix = prefix or TNT_PREFIX
78
local gauge = metrics.gauge(prefix .. name, description)
89
gauge:set(value, labels or {})
910
return gauge
1011
end
1112

12-
local function set_counter(name, description, value, labels, prefix)
13+
function utils.set_counter(name, description, value, labels, prefix)
1314
prefix = prefix or TNT_PREFIX
1415
local counter = metrics.counter(prefix .. name, description)
1516
counter:reset(labels or {})
1617
counter:inc(value, labels or {})
1718
return counter
1819
end
1920

20-
local function box_is_configured()
21-
return type(box.cfg) ~= 'function'
21+
function utils.box_is_configured()
22+
local is_configured = type(box.cfg) ~= 'function'
23+
if is_configured then
24+
utils.box_is_configured = function() return true end
25+
end
26+
return is_configured
2227
end
2328

24-
return {
25-
set_gauge = set_gauge,
26-
set_counter = set_counter,
27-
box_is_configured = box_is_configured,
28-
}
29+
return utils

0 commit comments

Comments
 (0)