Reimplemented XFR handler to support queueing.
Requests are now scheduled in FCFS manner, while there can be a fixed amount of pending requests from N threads. Currently the limit is set to 10 parallel requests to honor BIND9 default setting, but should be configurable. To do: - Fetch pending request state for 'zonestatus' command - As of now, there can be a multiple NOTIFY tasks, would it be a problem? - Cleanup of the xfr_answer() - Check for bugs
Showing
- src/knot/ctl/remote.c 7 additions, 4 deletionssrc/knot/ctl/remote.c
- src/knot/server/notify.c 3 additions, 45 deletionssrc/knot/server/notify.c
- src/knot/server/notify.h 5 additions, 25 deletionssrc/knot/server/notify.h
- src/knot/server/server.c 20 additions, 3 deletionssrc/knot/server/server.c
- src/knot/server/server.h 10 additions, 0 deletionssrc/knot/server/server.h
- src/knot/server/tcp-handler.c 22 additions, 46 deletionssrc/knot/server/tcp-handler.c
- src/knot/server/udp-handler.c 7 additions, 16 deletionssrc/knot/server/udp-handler.c
- src/knot/server/xfr-handler.c 845 additions, 1209 deletionssrc/knot/server/xfr-handler.c
- src/knot/server/xfr-handler.h 41 additions, 50 deletionssrc/knot/server/xfr-handler.h
- src/knot/server/zones.c 99 additions, 618 deletionssrc/knot/server/zones.c
- src/knot/server/zones.h 6 additions, 21 deletionssrc/knot/server/zones.h
- src/libknot/nameserver/name-server.c 2 additions, 0 deletionssrc/libknot/nameserver/name-server.c
- src/libknot/nameserver/name-server.h 13 additions, 11 deletionssrc/libknot/nameserver/name-server.h
- src/libknot/packet/response.c 3 additions, 1 deletionsrc/libknot/packet/response.c
Loading
Please register or sign in to comment