Performance issue: Failure to use buffered write - Part 1: Collect file seek position information.
Categories
(MailNews Core :: Database, defect)
Tracking
(Not tracked)
People
(Reporter: ishikawa, Assigned: ishikawa)
References
(Blocks 8 open bugs)
Details
(Keywords: perf)
Attachments
(4 files, 21 obsolete files)
Assignee | ||
Updated•10 years ago
|
Assignee | ||
Updated•10 years ago
|
Assignee | ||
Comment 1•10 years ago
|
||
Assignee | ||
Comment 2•10 years ago
|
||
Assignee | ||
Comment 3•10 years ago
|
||
Updated•10 years ago
|
Comment 5•10 years ago
|
||
Comment 6•10 years ago
|
||
Assignee | ||
Comment 7•10 years ago
|
||
Comment 8•10 years ago
|
||
Comment 9•10 years ago
|
||
Comment 10•10 years ago
|
||
Comment 11•10 years ago
|
||
Assignee | ||
Comment 12•10 years ago
|
||
Assignee | ||
Comment 13•10 years ago
|
||
Assignee | ||
Comment 14•10 years ago
|
||
Assignee | ||
Comment 15•10 years ago
|
||
Comment 16•10 years ago
|
||
Assignee | ||
Comment 17•10 years ago
|
||
Comment 18•10 years ago
|
||
Comment 19•10 years ago
|
||
Assignee | ||
Comment 20•10 years ago
|
||
Assignee | ||
Comment 21•10 years ago
|
||
Assignee | ||
Comment 22•10 years ago
|
||
Assignee | ||
Comment 23•10 years ago
|
||
Assignee | ||
Comment 24•10 years ago
|
||
Comment 25•10 years ago
|
||
Assignee | ||
Comment 26•10 years ago
|
||
Assignee | ||
Comment 27•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Comment 28•10 years ago
|
||
Assignee | ||
Comment 29•10 years ago
|
||
Comment 30•10 years ago
|
||
Assignee | ||
Comment 31•10 years ago
|
||
Comment 32•10 years ago
|
||
Comment 33•10 years ago
|
||
Assignee | ||
Comment 34•10 years ago
|
||
Comment 35•10 years ago
|
||
Comment 36•10 years ago
|
||
Comment 37•10 years ago
|
||
Comment 38•10 years ago
|
||
Comment 39•10 years ago
|
||
Comment 40•10 years ago
|
||
Comment 41•10 years ago
|
||
Comment 42•10 years ago
|
||
Comment 43•10 years ago
|
||
Comment 44•10 years ago
|
||
Comment 45•10 years ago
|
||
Comment 46•10 years ago
|
||
Assignee | ||
Comment 47•10 years ago
|
||
Assignee | ||
Comment 48•10 years ago
|
||
Comment 49•10 years ago
|
||
Assignee | ||
Comment 50•10 years ago
|
||
Assignee | ||
Comment 51•10 years ago
|
||
Assignee | ||
Comment 52•10 years ago
|
||
Comment 53•10 years ago
|
||
Comment 54•10 years ago
|
||
Comment 55•10 years ago
|
||
Comment 56•10 years ago
|
||
Assignee | ||
Comment 57•10 years ago
|
||
Comment 58•10 years ago
|
||
Comment 59•10 years ago
|
||
Assignee | ||
Comment 60•10 years ago
|
||
Assignee | ||
Comment 61•10 years ago
|
||
Comment 62•10 years ago
|
||
Assignee | ||
Updated•10 years ago
|
Assignee | ||
Comment 63•10 years ago
|
||
Assignee | ||
Comment 64•10 years ago
|
||
Assignee | ||
Comment 65•10 years ago
|
||
Comment 66•10 years ago
|
||
Comment 67•10 years ago
|
||
Assignee | ||
Comment 68•10 years ago
|
||
Assignee | ||
Comment 69•10 years ago
|
||
Assignee | ||
Comment 70•9 years ago
|
||
Comment 71•9 years ago
|
||
Comment 72•9 years ago
|
||
Assignee | ||
Comment 73•9 years ago
|
||
Assignee | ||
Comment 74•9 years ago
|
||
Assignee | ||
Updated•9 years ago
|
Assignee | ||
Comment 75•9 years ago
|
||
Assignee | ||
Comment 76•9 years ago
|
||
Assignee | ||
Comment 77•9 years ago
|
||
Comment 78•9 years ago
|
||
Assignee | ||
Comment 79•9 years ago
|
||
Comment 80•9 years ago
|
||
Assignee | ||
Comment 81•9 years ago
|
||
Comment 82•9 years ago
|
||
Comment 83•9 years ago
|
||
Assignee | ||
Comment 84•9 years ago
|
||
Comment 85•9 years ago
|
||
Assignee | ||
Comment 86•9 years ago
|
||
Comment 87•9 years ago
|
||
Assignee | ||
Comment 88•9 years ago
|
||
Comment 89•9 years ago
|
||
Comment 90•9 years ago
|
||
Comment 91•9 years ago
|
||
Comment 92•9 years ago
|
||
Comment 93•9 years ago
|
||
Comment 94•9 years ago
|
||
Comment 95•9 years ago
|
||
Comment 96•9 years ago
|
||
Comment 97•9 years ago
|
||
Assignee | ||
Comment 98•9 years ago
|
||
Assignee | ||
Comment 99•9 years ago
|
||
Assignee | ||
Comment 100•9 years ago
|
||
Assignee | ||
Comment 101•9 years ago
|
||
Assignee | ||
Comment 102•9 years ago
|
||
Comment 103•9 years ago
|
||
Comment 105•9 years ago
|
||
Assignee | ||
Comment 106•9 years ago
|
||
Assignee | ||
Comment 107•9 years ago
|
||
Assignee | ||
Comment 108•9 years ago
|
||
Assignee | ||
Updated•9 years ago
|
Comment 109•9 years ago
|
||
Assignee | ||
Comment 110•9 years ago
|
||
Comment 111•9 years ago
|
||
Comment 112•9 years ago
|
||
Comment 113•9 years ago
|
||
Assignee | ||
Comment 114•9 years ago
|
||
Comment 115•9 years ago
|
||
Assignee | ||
Comment 116•9 years ago
|
||
Comment 117•9 years ago
|
||
Comment 118•9 years ago
|
||
Assignee | ||
Comment 119•9 years ago
|
||
Comment 120•9 years ago
|
||
Assignee | ||
Comment 121•8 years ago
|
||
Assignee | ||
Comment 122•8 years ago
|
||
Comment 123•8 years ago
|
||
Assignee | ||
Comment 124•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Assignee | ||
Comment 125•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Comment 126•8 years ago
|
||
Assignee | ||
Comment 127•8 years ago
|
||
Comment 128•8 years ago
|
||
Assignee | ||
Comment 129•8 years ago
|
||
Comment 130•8 years ago
|
||
Comment 131•8 years ago
|
||
Assignee | ||
Comment 132•8 years ago
|
||
Comment 133•8 years ago
|
||
Comment 134•8 years ago
|
||
Comment 135•8 years ago
|
||
Comment 136•8 years ago
|
||
Comment 137•8 years ago
|
||
Comment 138•8 years ago
|
||
Comment 139•8 years ago
|
||
Comment 140•8 years ago
|
||
Comment 141•8 years ago
|
||
Assignee | ||
Comment 142•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Assignee | ||
Comment 143•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Assignee | ||
Comment 144•8 years ago
|
||
Comment 145•8 years ago
|
||
Updated•8 years ago
|
Updated•8 years ago
|
Comment 146•8 years ago
|
||
Comment 147•8 years ago
|
||
Assignee | ||
Comment 148•8 years ago
|
||
Assignee | ||
Updated•8 years ago
|
Comment 149•8 years ago
|
||
Updated•8 years ago
|
Assignee | ||
Comment 150•8 years ago
|
||
Comment 151•8 years ago
|
||
Comment 152•8 years ago
|
||
Comment 153•8 years ago
|
||
Assignee | ||
Comment 155•8 years ago
|
||
Comment 156•8 years ago
|
||
Comment 157•8 years ago
|
||
Assignee | ||
Comment 158•8 years ago
|
||
Comment 159•8 years ago
|
||
Comment 160•8 years ago
|
||
Comment 161•8 years ago
|
||
Comment 162•8 years ago
|
||
Comment 163•8 years ago
|
||
Comment 164•8 years ago
|
||
Comment 165•8 years ago
|
||
Comment 166•8 years ago
|
||
Assignee | ||
Comment 167•8 years ago
|
||
Comment 168•8 years ago
|
||
Comment 169•8 years ago
|
||
Assignee | ||
Comment 170•8 years ago
|
||
Assignee | ||
Comment 171•8 years ago
|
||
Comment 172•8 years ago
|
||
Comment 173•8 years ago
|
||
Comment 174•8 years ago
|
||
Assignee | ||
Comment 175•8 years ago
|
||
Assignee | ||
Comment 176•4 years ago
|
||
I will update the patches in mentioned bugzilla esp. comment 170 with the latest patches.
(I needed to take of the bitrot due to clang-format reformating , directory layout changes over the last 18 months or so.)
Comment 177•4 years ago
|
||
One thing I do not understand is that the bug is marked as closed (but still ndoes not work on Linux with stored archived mail stored on a filer) and now you push new patches. Could you explain why the bug has been closed?
Assignee | ||
Comment 178•4 years ago
|
||
(In reply to Eric Valette from comment #177)
One thing I do not understand is that the bug is marked as closed (but still ndoes not work on Linux with stored archived mail stored on a filer) and now you push new patches. Could you explain why the bug has been closed?
I am not sure whether closed was the right choice.
But as in comment 171, this patch is only the first part of the series of patches to enable buffering write during mail download, copy, move, etc.
The series.
bug 1116055 (this bugzilla that enables the check)
=> bug 939548 (could be split into two, one being merged into bug 1242030)
-> bug 1242030
(extra |Seek()| is removed)
-> bug 1242042 Enabling buffering for file stream to write message for C-C TB
(This enables buffering).
Note: We will start to see the necessity of one |Seek()| in IncorporateBegin only here or
after the next patch.
-> bug 1176857 C-C TB Enabling buffering for pop3 download (and possibly part of imap file operation)
Note: this may be also the reason why we need one |Seek()| in IncorporateBegin.
So we may start to see the warning here.
============== up to here =============
-> bug 1242046 Removing unnecessary |Seek| that caused the C-C TB to operate slowly in terms of I/O
(seek position check is removed finally here.)
-> bug 1242050 (already landed)
-> bug 1170606 (this can wait) <=========== THIS IS THE PATCH TO MAKE IT POSSIBLE
TO USE PROFILE ON REMOTE FILE SYSTEM.
And unfortunately, because of historical reasons, the patches for bug 1170606 (C-C T-B fixes to take care of short read (part of [META] Failure to deal with short read) depend on the changes in the preceding patches for enabling buffered write.
So in hindsight, I probably should have renamed this bugzilla entry as something like "[META] Performance issue: Failure to use buffered write"
and let this bugzilla depend on all the patches mentioned:
bug 1242030
bug 1242042
bug 1176857
bug 1242046
bug 1242050 (already landed)
And let bug 1170606 depend on such a META entry (either this one, or a newly created META entry.) simply because of textual patch issues.
Since this bugzilla is about buffered WRITE,
and bug 1170606 is about SHORT READ,
they are orthogonal in nature and can be applied in parallel IN PRINCIPLE, but
since they are sprinkled together in many files with not-well-checked return values,
practically there are so many overlaps when we create patches, then one set MUST come before the other for successful compilation and
for historical reasons, patch set for buffered WRITE was created first.
Thus bug 1170606 have to wait.
So this bugzilla is closed but the rest of the patches are still pending to enable buffered write.
And the patches for short read depend on the patches for buffered write. There is a fixed ordering dictated by my patch sets.
Because of the directory laytout changes and clang-format formating changes, I need to update the patches with the ones that compile locally and on tryserver as well.
So that is the long answer.
Now, due to the size of the patch(es), it took a long time to check and review, and then
modify to accommodate various changes in M-C, C-C including the change of directory layout, and change of semantics of some I/O routines.
It has been an uphill battle to settle on a stable patch set.
But I think the time is ripe for installing a stable patch set now that
automatic c++ formating in place (no manual variation of layout or coding style),
I have been running mochitest and xpcshel tests using the TB binary with the local patch set, which now works again after accommodating the changes in the last 26 months or so.
So I am clearing my local patch queue one by one right now to get these series of patches landed in C-C.
Description
•