BaseProcessor outputProcessor = responseWriter;
if (query.limit < 0) {
query.limit = Math.min(-query.limit, readLimit);
outputProcessor = new LastNLineProcessor(outputProcessor, query.limit);
} else if (query.limit == 0) {
query.limit = readLimit;
} else {
query.limit = Math.min(query.limit, readLimit);
}