Index file: | |
magic: c103cac3 | |
version: 2.1 | |
entries: 3 | |
total bytes: 40 | |
last file number: 0 | |
current id: 4 | |
table length: 65536 | |
last crash: 0 | |
experiment: 0 | |
head 0: 0x90000002 | |
tail 0: 0x90000001 | |
size 0: 0x2 | |
head 1: 0x0 | |
tail 1: 0x0 | |
size 1: 0x0 | |
head 2: 0x0 | |
tail 2: 0x0 | |
size 2: 0x0 | |
head 3: 0x0 | |
tail 3: 0x0 | |
size 3: 0x0 | |
head 4: 0x90000000 | |
tail 4: 0x90000000 | |
size 4: 0x1 | |
transaction: 0x0 | |
operation: 0 | |
operation list: 0 | |
------------------------- | |
Block file: data_0 | |
magic: c104cac3 | |
version: 2.0 | |
file id: 0 | |
next file id: 0 | |
entry size: 36 | |
current entries: 3 | |
max entries: 1024 | |
updating: 0 | |
empty sz 1: 1 | |
empty sz 2: 0 | |
empty sz 3: 0 | |
empty sz 4: 255 | |
user 0: 0x0 | |
user 1: 0x0 | |
user 2: 0x0 | |
user 3: 0x0 | |
------------------------- | |
Block file: data_1 | |
magic: c104cac3 | |
version: 2.0 | |
file id: 1 | |
next file id: 0 | |
entry size: 256 | |
current entries: 4 | |
max entries: 1024 | |
updating: 0 | |
empty sz 1: 0 | |
empty sz 2: 0 | |
empty sz 3: 1 | |
empty sz 4: 254 | |
user 0: 0x0 | |
user 1: 0x0 | |
user 2: 0x0 | |
user 3: 0x0 | |
------------------------- | |
Block file: data_2 | |
magic: c104cac3 | |
version: 2.0 | |
file id: 2 | |
next file id: 0 | |
entry size: 1024 | |
current entries: 0 | |
max entries: 0 | |
updating: 0 | |
empty sz 1: 0 | |
empty sz 2: 0 | |
empty sz 3: 0 | |
empty sz 4: 0 | |
user 0: 0x0 | |
user 1: 0x0 | |
user 2: 0x0 | |
user 3: 0x0 | |
------------------------- | |
Block file: data_3 | |
magic: c104cac3 | |
version: 2.0 | |
file id: 3 | |
next file id: 0 | |
entry size: 4096 | |
current entries: 0 | |
max entries: 0 | |
updating: 0 | |
empty sz 1: 0 | |
empty sz 2: 0 | |
empty sz 3: 0 | |
empty sz 4: 0 | |
user 0: 0x0 | |
user 1: 0x0 | |
user 2: 0x0 | |
user 3: 0x0 | |
------------------------- | |
Entry at 0xa0010003 | |
hash: 0xb16af282 | |
next entry: 0xa0010004 | |
rankings: 0x90000001 | |
key length: 14 | |
key: "The Second key" | |
key addr: 0x0 | |
reuse count: 0 | |
refetch count: 0 | |
state: 0 | |
data size 0: 0 | |
data addr 0: 0x0 | |
data size 1: 0 | |
data addr 1: 0x0 | |
data size 2: 0 | |
data addr 2: 0x0 | |
data size 3: 0 | |
data addr 3: 0x0 | |
---------- | |
Rankings at 0x90000001 | |
next: 0x90000001 | |
prev: 0x90000002 | |
entry: 0xa0010003 | |
dirty: 0 | |
pointer: 0x0 | |
---------- | |
Entry at 0xa0010004 | |
hash: 0xc24ac438 | |
next entry: 0x0 | |
rankings: 0x90000002 | |
key length: 13 | |
key: "The first key" | |
key addr: 0x0 | |
reuse count: 0 | |
refetch count: 0 | |
state: 0 | |
data size 0: 0 | |
data addr 0: 0x0 | |
data size 1: 0 | |
data addr 1: 0x0 | |
data size 2: 0 | |
data addr 2: 0x0 | |
data size 3: 0 | |
data addr 3: 0x0 | |
---------- | |
Rankings at 0x90000002 | |
next: 0x90000001 | |
prev: 0x90000002 | |
entry: 0xa0010004 | |
dirty: 0 | |
pointer: 0x0 | |
================================ | |
Generated with: (see steps on the bug 69135) | |
SetMask(0x1); // 2-entry table. | |
SetMaxSize(0x3000); // 12 kB. | |
SetNewEviction(); | |
InitCache(); | |
std::string key1("The first key"); | |
std::string key2("The Second key"); | |
disk_cache::Entry* entry; | |
ASSERT_EQ(net::OK, CreateEntry(key1, &entry)); | |
entry->Close(); | |
ASSERT_EQ(net::OK, CreateEntry(key2, &entry)); | |
DoomAllEntries(); <--- First crash. Fix key2 dirty flag. | |
ASSERT_EQ(net::OK, OpenEntry(key1, &entry)); <--- Second crash | |
ASSERT_EQ(net::OK, CreateEntry(key1, &entry)); | |
entry->Close(); |