Merge "logd: worst uid record watermark part three"
This commit is contained in:
commit
6bb48f07db
1 changed files with 11 additions and 12 deletions
|
|
@ -413,6 +413,12 @@ void LogBuffer::prune(log_id_t id, unsigned long pruneRows, uid_t caller_uid) {
|
||||||
it = f->second;
|
it = f->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
static const timespec too_old = {
|
||||||
|
EXPIRE_HOUR_THRESHOLD * 60 * 60, 0
|
||||||
|
};
|
||||||
|
LogBufferElementCollection::iterator lastt;
|
||||||
|
lastt = mLogElements.end();
|
||||||
|
--lastt;
|
||||||
LogBufferElementLast last;
|
LogBufferElementLast last;
|
||||||
while (it != mLogElements.end()) {
|
while (it != mLogElements.end()) {
|
||||||
LogBufferElement *e = *it;
|
LogBufferElement *e = *it;
|
||||||
|
|
@ -464,6 +470,11 @@ void LogBuffer::prune(log_id_t id, unsigned long pruneRows, uid_t caller_uid) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((e->getRealTime() < ((*lastt)->getRealTime() - too_old))
|
||||||
|
|| (e->getRealTime() > (*lastt)->getRealTime())) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
// unmerged drop message
|
// unmerged drop message
|
||||||
if (dropped) {
|
if (dropped) {
|
||||||
last.add(e);
|
last.add(e);
|
||||||
|
|
@ -477,18 +488,6 @@ void LogBuffer::prune(log_id_t id, unsigned long pruneRows, uid_t caller_uid) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e->getUid() != worst) {
|
if (e->getUid() != worst) {
|
||||||
if (leading) {
|
|
||||||
static const timespec too_old = {
|
|
||||||
EXPIRE_HOUR_THRESHOLD * 60 * 60, 0
|
|
||||||
};
|
|
||||||
LogBufferElementCollection::iterator last;
|
|
||||||
last = mLogElements.end();
|
|
||||||
--last;
|
|
||||||
if ((e->getRealTime() < ((*last)->getRealTime() - too_old))
|
|
||||||
|| (e->getRealTime() > (*last)->getRealTime())) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
leading = false;
|
leading = false;
|
||||||
last.clear(e);
|
last.clear(e);
|
||||||
++it;
|
++it;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue