Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
Hello list,
the drbdmeta command states that the the dump-md command returns the
activity log also:
dump-md
Dumps the whole contents of the meta data storage including the stored
bit-map and activity-log, in a textual representation.
However, where can the AL be found in the output of dump-md ?
---
# DRBD meta data dump
# 2008-10-01 10:34:27 +0200 [1222850067]
# irdbt-vm02> drbdmeta --force /dev/drbd0 v08 /dev/vg00/drbd0 internal
dump-md
#
version "v08";
# md_size_sect 3856
# md_offset 63417872384
# al_offset 63417839616
# bm_offset 63415902208
uuid {
0xF16C42FEE61D07A2; 0x0000000000000000; 0x5E61E3733808DD22;
0x7DF4BC2E100D91ED;
flags 0x00000015;
}
la-size-sect 123859184;
bm-byte-per-bit 4096;
device-uuid 0x14DD281B87D190C0;
# bm-bytes 1935304;
bm {
# at 0kB
241920 times 0x0000000000000000;
}
# bits-set 0;
---
As far as I see this, bm is the quikc sync bitmap.
Where's the AL ?
And one more question regarding the AL:
The DRBD Manual states:
As DRBD detects write I/O on a disconnected device, and hence starts
setting bits in the quick-sync bitmap, it does so in RAM — thus avoiding
expensive synchronous metadata I/O operations. Only when the
corresponding blocks turn cold (that is, expire from the Activity Log
<http://www.drbd.org/users-guide/s-activity-log.html>), DRBD makes the
appropriate modifications in an on-disk representation of the quick-sync
bitmap. Likewise, if the resource happens to be manually shut down on
the remaining node while disconnected, DRBD flushes the /complete/
quick-sync bitmap out to persistent storage.
The interesting part is [...] Only when the corresponding blocks turn
cold (that is, expire from the Activity Log
<http://www.drbd.org/users-guide/s-activity-log.html>) [...]
Does the AL Extend turn cold ONLY if the nuber of open AL Extends is
reached and a AL Extend has to be reused (so to speak LRU) (I have
written so much data on disk, that all configured al-extend are used and
I have to write to a block that is not covered by a AL Extend yet) or
does the AL also expire AL Extend based on a timeout mechanism (so to
speak LRU+timeout) (e.g. a AL Extend not written to in 5 seconds is
expired).
Thanks,
Robert