mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-03-01 22:22:15 +00:00
Eliminate unnecessary observer and JOIN.
This commit is contained in:
@@ -66,7 +66,6 @@ class CallLogRepository(
|
||||
refresh()
|
||||
}
|
||||
|
||||
AppDependencies.databaseObserver.registerConversationListObserver(databaseObserver)
|
||||
AppDependencies.databaseObserver.registerCallUpdateObserver(databaseObserver)
|
||||
|
||||
emitter.setCancellable {
|
||||
|
||||
@@ -1274,6 +1274,12 @@ class CallTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTabl
|
||||
"p.$ID, p.$TIMESTAMP, $EVENT, $DIRECTION, $PEER, p.$TYPE, $CALL_ID, $MESSAGE_ID, $RINGER, $LOCAL_JOINED, $GROUP_CALL_ACTIVE, children, in_period, ${MessageTable.BODY},"
|
||||
}
|
||||
|
||||
val join = if (isCount) {
|
||||
""
|
||||
} else {
|
||||
"LEFT JOIN ${MessageTable.TABLE_NAME} ON ${MessageTable.TABLE_NAME}.${MessageTable.ID} = $MESSAGE_ID"
|
||||
}
|
||||
|
||||
// Group call events by those we consider missed or not missed to build out our call log aggregation.
|
||||
val eventTypeSubQuery = """
|
||||
($TABLE_NAME.$EVENT = c.$EVENT AND (
|
||||
@@ -1372,7 +1378,7 @@ class CallTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTabl
|
||||
cte
|
||||
) p
|
||||
INNER JOIN ${RecipientTable.TABLE_NAME} ON ${RecipientTable.TABLE_NAME}.${RecipientTable.ID} = $PEER
|
||||
LEFT JOIN ${MessageTable.TABLE_NAME} ON ${MessageTable.TABLE_NAME}.${MessageTable.ID} = $MESSAGE_ID
|
||||
$join
|
||||
LEFT JOIN ${GroupTable.TABLE_NAME} ON ${GroupTable.TABLE_NAME}.${GroupTable.RECIPIENT_ID} = ${RecipientTable.TABLE_NAME}.${RecipientTable.ID}
|
||||
WHERE true_parent = p.$ID
|
||||
AND CASE
|
||||
|
||||
Reference in New Issue
Block a user