]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Marek Vavruša [Tue, 26 May 2015 22:51:14 +0000 (00:51 +0200)]
daemon/bindings: metatable wasn’t called on cache.{storage|size}
the bindings wrote the keys on completion, so they existed
and __newindex was never called - now current {storage|size}
are saved as cache.current_{storage|size}
Marek Vavruša [Tue, 26 May 2015 07:37:22 +0000 (09:37 +0200)]
modules/kmemcached: memcached backend for resolver cache
memcached is a distributed caching system, it is a good fit
for building resolvers with shared and replicated cache
Marek Vavruša [Mon, 25 May 2015 13:54:26 +0000 (15:54 +0200)]
daemon/engine: compat for Lua < 5.2
Marek Vavruša [Mon, 25 May 2015 12:26:31 +0000 (14:26 +0200)]
modules/stats: compat for Lua < 5.2
Marek Vavruša [Mon, 25 May 2015 11:36:51 +0000 (13:36 +0200)]
tests: fixed integration tests
Marek Vavruša [Mon, 25 May 2015 11:26:12 +0000 (13:26 +0200)]
doc: updated doc for new modules
Marek Vavruša [Mon, 25 May 2015 10:19:30 +0000 (12:19 +0200)]
scripts: bootstrap lua with dlopen
Marek Vavruša [Mon, 25 May 2015 10:19:14 +0000 (12:19 +0200)]
modules/graphite: fixed missing prefix
Marek Vavruša [Mon, 25 May 2015 10:15:05 +0000 (12:15 +0200)]
daemon/bindings: fixed event callback not clearing the stack
Marek Vavruša [Sun, 24 May 2015 21:29:01 +0000 (23:29 +0200)]
modules: fixed module unload touching freed memory
the module memory not be moved (reallocd), turned array of modules to array of pointers to modules
Marek Vavruša [Sun, 24 May 2015 21:05:27 +0000 (23:05 +0200)]
modules/graphite: push metrics to graphite server(s)
Marek Vavruša [Sun, 24 May 2015 21:04:38 +0000 (23:04 +0200)]
stats: use json objects for output
Marek Vavruša [Sun, 24 May 2015 21:04:21 +0000 (23:04 +0200)]
modules/hints: use json arrays for output
Marek Vavruša [Sun, 24 May 2015 21:03:43 +0000 (23:03 +0200)]
daemon/engine: unpack JSON strings from modules to Lua tables
Marek Vavruša [Sun, 24 May 2015 20:57:46 +0000 (22:57 +0200)]
contrib: added ccan/json (BSD-MIT)
Marek Vavruša [Sun, 24 May 2015 20:56:47 +0000 (22:56 +0200)]
build: bootstrap-depends.sh appends to PKG_CONFIG_PATH
Marek Vavruša [Thu, 21 May 2015 17:55:54 +0000 (19:55 +0200)]
modules/stats: updated doc on statistics
Marek Vavruša [Thu, 21 May 2015 17:51:12 +0000 (19:51 +0200)]
lib/resolve: set rcode before finishing overlay
this fixes a bug where resolution failed, but the finish callbacks thought the answer is noerror
Marek Vavruša [Thu, 21 May 2015 17:50:32 +0000 (19:50 +0200)]
lib/generic: replace value on map insert if exists
Marek Vavruša [Wed, 20 May 2015 15:07:20 +0000 (17:07 +0200)]
module/stats: collect various metrics for statistics
this hooks into query resolution and collects counters on answers, queries and iterator
Marek Vavruša [Fri, 22 May 2015 14:58:13 +0000 (16:58 +0200)]
build: rebased Dockerfile to AlpineLinux
Marek Vavruša [Fri, 22 May 2015 14:57:56 +0000 (16:57 +0200)]
lib: fixed include
Marek Vavruša [Fri, 22 May 2015 13:59:23 +0000 (15:59 +0200)]
build: git clone fails with commit hashes
Marek Vavruša [Fri, 22 May 2015 13:43:31 +0000 (15:43 +0200)]
build: pin to last working version of libknot
Marek Vavruša [Thu, 21 May 2015 16:30:55 +0000 (18:30 +0200)]
daemon/worker: uv_connect_t lifetime max exceed qr_task
Marek Vavruša [Wed, 20 May 2015 13:33:48 +0000 (15:33 +0200)]
Merge branch 'prefer-ipv6-nsrep'
Marek Vavruša [Wed, 20 May 2015 12:24:55 +0000 (14:24 +0200)]
lib/utils: made mm_reserve generic in library
Marek Vavruša [Wed, 20 May 2015 11:05:59 +0000 (13:05 +0200)]
daemon/ffimodule: fixed variable shadowing
Marek Vavruša [Wed, 20 May 2015 10:36:33 +0000 (12:36 +0200)]
lib/zonecut: resolve zone cut addresses on-demand
Marek Vavruša [Tue, 19 May 2015 21:57:06 +0000 (23:57 +0200)]
daemon/worker: estimate pktbuf sizes for tasks
Marek Vavruša [Tue, 19 May 2015 21:56:44 +0000 (23:56 +0200)]
lib/zonecut: use mempool for nsset pack
Marek Vavruša [Tue, 19 May 2015 20:58:24 +0000 (22:58 +0200)]
daemon/worker: enforce iteration limit for cached answers
Marek Vavruša [Tue, 19 May 2015 17:07:56 +0000 (19:07 +0200)]
lib/resolve: resolve AAAA first, A second
Marek Vavruša [Tue, 19 May 2015 17:07:39 +0000 (19:07 +0200)]
lib/rrcache: break caching if target already exists (catches loops)
Marek Vavruša [Tue, 19 May 2015 20:54:52 +0000 (22:54 +0200)]
Revert "build: link symbols as needed"
This reverts commit
3f4d8cbe1a57d27243eff61356751b54d9d1f933 .
Marek Vavruša [Tue, 19 May 2015 16:02:00 +0000 (18:02 +0200)]
Merge branch 'connect-timeout-cleanup'
Marek Vavruša [Tue, 19 May 2015 15:54:38 +0000 (17:54 +0200)]
lib/rrcache: mark cached answers as authoritative
Marek Vavruša [Tue, 19 May 2015 15:43:44 +0000 (17:43 +0200)]
docker: link with --as-needed
Marek Vavruša [Tue, 19 May 2015 15:39:07 +0000 (17:39 +0200)]
lib/layer: lookup unminimised answer in the cache first
this fixes a regression when a final name has a dependency with a short
TTL in the search path, but has longer TTL itself
in another words - if there's a CDN in the middle and the name doesn't
exist, answer it from the cache without requerying the CDN
Marek Vavruša [Tue, 19 May 2015 12:54:14 +0000 (14:54 +0200)]
daemon/io: cleanup for connect, always stop read on close
Marek Vavruša [Tue, 19 May 2015 12:24:01 +0000 (14:24 +0200)]
build: link symbols as needed
this saves space for both library and daemon
Grigorii Demidov [Tue, 19 May 2015 09:43:52 +0000 (11:43 +0200)]
tests: avoiding compiler warnings
Marek Vavruša [Mon, 18 May 2015 19:14:12 +0000 (21:14 +0200)]
doc: improved Lua modules doc
Marek Vavruša [Mon, 18 May 2015 19:02:58 +0000 (21:02 +0200)]
scripts: embed/minify scripts in C code
Marek Vavruša [Mon, 18 May 2015 18:19:08 +0000 (20:19 +0200)]
build: added bsdmaintools to dockerfile
Marek Vavruša [Mon, 18 May 2015 17:49:07 +0000 (19:49 +0200)]
build: use hexdump instead of xxd, optional libdl
Marek Vavruša [Sat, 16 May 2015 16:06:15 +0000 (18:06 +0200)]
daemon/lua: bad multiplier for GB
Marek Vavruša [Fri, 15 May 2015 10:30:18 +0000 (12:30 +0200)]
modules/lua: module API functions may return coroutines
this allows for continuation of a function in the background,
a good use case for this is loading of chunks of data or I/O
Grigorii Demidov [Mon, 18 May 2015 12:21:14 +0000 (14:21 +0200)]
tests: modification of cache insertion test
Grigorii Demidov [Fri, 15 May 2015 09:20:52 +0000 (11:20 +0200)]
tests: simulation of cache storage engine commit failure
Grigorii Demidov [Fri, 15 May 2015 06:27:56 +0000 (08:27 +0200)]
tests: simulation of cache storage engine initialization failure at kr_cache_open()
Marek Vavruša [Thu, 14 May 2015 12:01:33 +0000 (14:01 +0200)]
scripts: no debug in Dockerfile, /data and luajit
Marek Vavruša [Wed, 13 May 2015 14:10:22 +0000 (16:10 +0200)]
modules/hints: don't minimize, replace full queries
Marek Vavruša [Wed, 13 May 2015 10:16:37 +0000 (12:16 +0200)]
Revert "lib/layer: answer both m12n/full names from cache"
This reverts commit
3d1ee64186c8f29c98df143b992660dfd95d4805 .
Marek Vavruša [Wed, 13 May 2015 10:16:32 +0000 (12:16 +0200)]
Revert "lib/iterate: pair stype/m12n stype as well"
This reverts commit
ee2cce4d56d66f183ef48feb232e4fe37eb090cf .
Marek Vavruša [Wed, 13 May 2015 10:04:58 +0000 (12:04 +0200)]
lib/iterate: pair stype/m12n stype as well
Marek Vavruša [Wed, 13 May 2015 09:54:52 +0000 (11:54 +0200)]
Merge branch 'master' of gitlab.labs.nic.cz:knot/resolver
Marek Vavruša [Wed, 13 May 2015 09:52:16 +0000 (11:52 +0200)]
lib/layer: answer both m12n/full names from cache
previously only queried names were resolved from cache, this meant that if the target name was present in cache but a server on the search path dropped from it, it would refetch it - this is a problem when a loadbalancer with very short TTL was in search path
Ondřej Surý [Wed, 13 May 2015 09:50:55 +0000 (11:50 +0200)]
First try autotools then cmake
Marek Vavruša [Wed, 13 May 2015 09:36:57 +0000 (11:36 +0200)]
lib/rrcache: commit after cache prune
Marek Vavruša [Wed, 13 May 2015 05:24:19 +0000 (07:24 +0200)]
daemon/worker: synchronous send
Marek Vavruša [Tue, 12 May 2015 22:29:02 +0000 (00:29 +0200)]
build: bumped libuv version
Marek Vavruša [Tue, 12 May 2015 22:08:58 +0000 (00:08 +0200)]
Merge branch 'uv-closefail-cache-errors'
Marek Vavruša [Tue, 12 May 2015 22:05:32 +0000 (00:05 +0200)]
lib/pktcache: base ttl (fallback), cache IN only
Marek Vavruša [Tue, 12 May 2015 22:03:41 +0000 (00:03 +0200)]
lib/resolve: clear ‘cached’ flag on requery
if the flag is left on, it prevents further caching
Marek Vavruša [Tue, 12 May 2015 22:02:35 +0000 (00:02 +0200)]
daemon/worker: set ioreq-data early, cancel on timeout
Marek Vavruša [Tue, 12 May 2015 11:43:42 +0000 (13:43 +0200)]
build: added -ldl for some platforms
Marek Vavruša [Mon, 11 May 2015 07:37:34 +0000 (09:37 +0200)]
tests: fixed typo
Marek Vavruša [Mon, 11 May 2015 07:36:13 +0000 (09:36 +0200)]
tests: soamin test is already fixed
Marek Vavruša [Mon, 11 May 2015 07:31:58 +0000 (09:31 +0200)]
tests: moved integration deps
Marek Vavruša [Sun, 10 May 2015 19:44:55 +0000 (21:44 +0200)]
scripts: fixed dockerfile
Marek Vavruša [Sun, 10 May 2015 19:40:33 +0000 (21:40 +0200)]
tests: preload mock calls on Linux
Marek Vavruša [Sun, 10 May 2015 19:38:00 +0000 (21:38 +0200)]
lib/resolve: fixed good cached ns expired, only bad remain
the resolution has to start from the root for zonecut resolution, otherwise it might stall resolution if the only good NS drops out of cache and only the bad remain
Marek Vavruša [Sun, 10 May 2015 19:35:38 +0000 (21:35 +0200)]
tests: added ncache tests, fixed ‘time elapsed’
Marek Vavruša [Sun, 10 May 2015 17:55:35 +0000 (19:55 +0200)]
lib/pktcache: fixed too long cache times
Marek Vavruša [Sun, 10 May 2015 09:45:57 +0000 (11:45 +0200)]
pktcache: adjust ttl in records
Marek Vavruša [Sat, 9 May 2015 20:05:07 +0000 (22:05 +0200)]
tests: use edns=1 for queries
Marek Vavruša [Sat, 9 May 2015 19:48:49 +0000 (21:48 +0200)]
tests: added pktcache
Marek Vavruša [Sat, 9 May 2015 19:44:16 +0000 (21:44 +0200)]
daemon/io: check for bad udp reads
Marek Vavruša [Sat, 9 May 2015 17:18:54 +0000 (19:18 +0200)]
build: update brew
Marek Vavruša [Sat, 9 May 2015 17:18:19 +0000 (19:18 +0200)]
pktcache: maximum time limit, cache only nodata/nxdomain
Marek Vavruša [Sat, 9 May 2015 16:47:08 +0000 (18:47 +0200)]
build: added libtasn1 brew dependency
Marek Vavruša [Sat, 9 May 2015 16:20:40 +0000 (18:20 +0200)]
doc: updated ketcd
Marek Vavruša [Sat, 9 May 2015 16:18:23 +0000 (18:18 +0200)]
doc: added ketcd
Marek Vavruša [Thu, 7 May 2015 19:42:49 +0000 (21:42 +0200)]
doc: documented Lua modules
Marek Vavruša [Thu, 7 May 2015 19:42:38 +0000 (21:42 +0200)]
modules/ketcd: cleanup, added some documentation
Marek Vavruša [Thu, 7 May 2015 19:42:05 +0000 (21:42 +0200)]
modules: fixed install target of Lua modules
Marek Vavruša [Thu, 7 May 2015 19:41:46 +0000 (21:41 +0200)]
doc: daemon doc cleanup
Marek Vavruša [Thu, 7 May 2015 19:41:16 +0000 (21:41 +0200)]
daemon/lua: syntactic sugar for ‘net’
this allows list-like declaration of bound interfaces
e.g. net = { ‘127.0.0.1’, net.eth0 }
Marek Vavruša [Thu, 7 May 2015 19:39:50 +0000 (21:39 +0200)]
daemon/bindings: syntactic sugar for cache
the cache can be setup declaratively with:
cache.size = 10 * MB
the cache storage backend can be changed with:
cache.storage = ‘lmdb://.'
Marek Vavruša [Thu, 7 May 2015 13:49:02 +0000 (15:49 +0200)]
build: fixed build rule for modules
Marek Vavruša [Thu, 7 May 2015 13:42:57 +0000 (15:42 +0200)]
modules/ketcd: added polling
Marek Vavruša [Thu, 7 May 2015 13:42:43 +0000 (15:42 +0200)]
build: Lua modules with multiple source files
Marek Vavruša [Thu, 7 May 2015 13:42:16 +0000 (15:42 +0200)]
daemon/ffimodule: support for main thread/coroutine
Marek Vavruša [Thu, 7 May 2015 08:36:30 +0000 (10:36 +0200)]
modules/ketcd: Etcd module
Marek Vavruša [Thu, 7 May 2015 08:36:16 +0000 (10:36 +0200)]
daemon/bindings: report errors in events
Marek Vavruša [Thu, 7 May 2015 08:35:53 +0000 (10:35 +0200)]
daemon/ffimodule: support for Lua modules (including layers)
Marek Vavruša [Thu, 7 May 2015 08:35:09 +0000 (10:35 +0200)]
build: modules/lua, added clean rule
Marek Vavruša [Wed, 6 May 2015 08:28:21 +0000 (10:28 +0200)]
daemon/engine: support for Lua modules, stub etcd module
Marek Vavruša [Wed, 6 May 2015 08:27:47 +0000 (10:27 +0200)]
lib/modules: layer() api now accept module name
module api can now store userdata, e.g. owner