summaryrefslogtreecommitdiffstats
path: root/src/smtpstone/hashed-deferred
blob: 93f0e122c2dfcae1fbad3f9a28bb070cac2f78c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Delivering 1000 deferred messages over the loopback transport,
outbound concurrency 10. smtp-sink pipelining disabled. Machine is
P230, BSD/OS 3.1, 64MB memory.

hashing is 16 directories per level

flat deferred queue

    start: Sun Feb 21 16:42:37 EST 1999
    done: Feb 21 16:44:35
    time: 1:58 = 118 seconds

    start: Sun Feb 21 16:48:01 EST 1999
    done: Feb 21 16:49:51
    time: 1:50 = 110 seconds

hashed deferred queue, depth=1 (16 directories)

    start: Sun Feb 21 17:29:36 EST 1999
    done: Feb 21 17:31:32
    time: 1:56 = 116 seconds

    start: Sun Feb 21 17:33:36 EST 1999
    done: Feb 21 17:35:24
    time: 1:48 = 108 seconds

    start: Sun Feb 21 17:37:08 EST 1999
    done: Feb 21 17:39:02
    time: 1:52 = 112 seconds

Hashing does not slow down deliveries.

However the problem is scanning an empty deferred queue. On an idle
machine, it takes some 5 seconds to scan an empty depth=2 deferred
queue unless the blocks happen to be cached. During those 5 seconds
the queue manager will not pay attention to I/O from delivery
agents, which is bad.