less "PROBLEM"s, faster metadata
This commit is contained in:
Родитель
8f67b74df3
Коммит
8b169eef76
|
@ -668,7 +668,7 @@ class BugHistoryParser(object):
|
|||
existing_flag["previous_status"] = removed_flag["request_status"]
|
||||
existing_flag["request_status"] = "d"
|
||||
existing_flag["previous_value"] = removed_flag.value
|
||||
existing_flag["value"] = Null #SPECIAL INDICATOR
|
||||
existing_flag["value"] = Null # SPECIAL INDICATOR FOR DELETED FLAG
|
||||
# request_type stays the same.
|
||||
# requestee stays the same.
|
||||
|
||||
|
@ -690,7 +690,7 @@ class BugHistoryParser(object):
|
|||
unwrap(element)
|
||||
for element in target.flags
|
||||
if (
|
||||
element["value"] == None # SPECIAL INDICATOR
|
||||
element["value"] == None # SPECIAL INDICATOR FOR DELETED FLAG
|
||||
and added_flag["request_type"] == element["request_type"]
|
||||
and added_flag["request_status"] != element["previous_status"] # Skip "r?(dre@mozilla)" -> "r?(mark@mozilla)"
|
||||
)
|
||||
|
@ -725,12 +725,9 @@ class BugHistoryParser(object):
|
|||
]
|
||||
|
||||
if not matched_ts and not matched_req:
|
||||
Log.note(
|
||||
"[Bug {{bug_id}}]: PROBLEM: Can not match {{requestee}} in {{flags}}. Skipping match.",
|
||||
bug_id=self.currBugState.bug_id,
|
||||
flags=target.flags,
|
||||
requestee=added_flag
|
||||
)
|
||||
# No matching candidate. Totally new flag.
|
||||
target.flags.append(added_flag)
|
||||
continue
|
||||
elif len(matched_ts) == 1 or (not matched_req and matched_ts):
|
||||
chosen_one = matched_ts[0]
|
||||
if DEBUG_FLAG_MATCHES:
|
||||
|
|
|
@ -46,6 +46,7 @@
|
|||
1367671, // diff lost a colon in 'reports: https://goo.gl/70o6w6'
|
||||
1370314, // jumbled diff
|
||||
1379514, // pre and post start lines for hunks
|
||||
1386206, // review- added without review? first
|
||||
1388648, // order of the reversed diff application
|
||||
1388678, // interlaced + and - in diff
|
||||
1392967, // zero lines and \r correctness
|
||||
|
|
|
@ -135,13 +135,25 @@ class ColumnList(Table, jx_base.Container):
|
|||
command = wrap(command)
|
||||
eq = command.where.eq
|
||||
if eq.es_index:
|
||||
with self.locker:
|
||||
columns = [
|
||||
c
|
||||
for cs in self.data.get(eq.es_index, {}).values()
|
||||
for c in cs
|
||||
if all(c[k] == v for k, v in eq.items())
|
||||
]
|
||||
if eq.es_column and len(eq)==2:
|
||||
with self.locker:
|
||||
all_columns = self.data.get(eq.es_index, {}).values()
|
||||
columns = [
|
||||
c
|
||||
for cs in all_columns
|
||||
for c in cs
|
||||
if c.es_column == eq.es_column
|
||||
]
|
||||
|
||||
else:
|
||||
# SLOWER
|
||||
with self.locker:
|
||||
columns = [
|
||||
c
|
||||
for cs in self.data.get(eq.es_index, {}).values()
|
||||
for c in cs
|
||||
if all(c[k] == v for k, v in eq.items())
|
||||
]
|
||||
else:
|
||||
columns = list(self)
|
||||
columns = jx.filter(columns, command.where)
|
||||
|
|
Загрузка…
Ссылка в новой задаче