]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
modules/predict: fixup
authorMarek Vavrusa <marek@vavrusa.com>
Tue, 31 May 2016 18:01:29 +0000 (11:01 -0700)
committerMarek Vavrusa <marek@vavrusa.com>
Tue, 31 May 2016 18:01:29 +0000 (11:01 -0700)
modules/predict/predict.lua

index 7b25497230d6c89035efcf5e5f7e260b618afee3..b570d7df0ea74cf0721a3a548902eb8a3edfafcd 100644 (file)
@@ -30,7 +30,8 @@ end
 function predict.drain(ev)
        local deleted = 0
        for key, val in pairs(predict.queue) do
-               worker.resolve(string.sub(key, 2), string.byte(key), 1, kres.query.NO_CACHE)
+               local qname, qtype = key:match('(%S*)%s(.*)')
+               worker.resolve(qname, kres.type[qtype], 1, kres.query.NO_CACHE)
                predict.queue[key] = nil
                deleted = deleted + 1
                if deleted >= predict.batch then
@@ -53,7 +54,7 @@ local function enqueue(queries)
        local nr_queries = #queries
        for i = 1, nr_queries do
                local entry = queries[i]
-               local key = string.char(entry.type)..entry.name
+               local key = string.format('%s %s', entry.type, entry.name)
                if not predict.queue[key] then
                        predict.queue[key] = 1
                        queued = queued + 1
@@ -85,7 +86,7 @@ function predict.sample(epoch_now)
        local nr_samples = #queries
        for i = 1, nr_samples do
                local entry = queries[i]
-               local key = string.char(entry.type)..entry.name
+               local key = string.format('%s %s', entry.type, entry.name)
                current[key] = 1
        end
        predict.log[epoch_now] = current