/* Copyright (c) 2011-2018 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "array.h"
#include "llist.h"
#include "hash.h"
#include "indexer-queue.h"
struct indexer_queue {
/* username+mailbox -> indexer_request */
};
static unsigned int
{
}
const struct indexer_request *r2)
{
}
struct indexer_queue *
{
return queue;
}
{
}
void (*callback)(struct indexer_queue *))
{
}
static struct indexer_request *
{
}
{
return;
}
static struct indexer_request *
const char *session_id,
unsigned int max_recent_msgs, void *context)
{
} else {
/* we're already indexing this mailbox. */
if (append)
else
return request;
}
if (append) {
/* keep the request in its old position */
return request;
}
/* move request to beginning of the queue */
}
if (append)
else
return request;
}
{
}
const char *session_id, unsigned int max_recent_msgs,
void *context)
{
context);
}
void *context)
{
}
{
}
{
}
struct indexer_request *request,
int percentage)
{
void *const *contextp;
unsigned int i;
for (i = 0; i < request->working_context_idx; i++) {
}
}
struct indexer_request *request,
int percentage)
{
}
{
}
struct indexer_request **_request,
bool success)
{
if (request->working_context_idx > 0) {
}
if (request->reindex_head)
else
return;
}
}
{
/* remove all reindex-markers so when the current requests finish
(or are cancelled) we don't try to retry them (especially during
deinit where it crashes) */
}
}
{
}
{
}