mirror of
https://github.com/netbirdio/netbird.git
synced 2025-06-23 11:12:01 +02:00
refactor activity get queries to only consider 1 deleted user entry
This commit is contained in:
parent
9e8725618e
commit
53fb0a9754
@ -14,7 +14,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
//eventSinkDB is the default name of the events database
|
// eventSinkDB is the default name of the events database
|
||||||
eventSinkDB = "events.db"
|
eventSinkDB = "events.db"
|
||||||
createTableQuery = "CREATE TABLE IF NOT EXISTS events " +
|
createTableQuery = "CREATE TABLE IF NOT EXISTS events " +
|
||||||
"(id INTEGER PRIMARY KEY AUTOINCREMENT, " +
|
"(id INTEGER PRIMARY KEY AUTOINCREMENT, " +
|
||||||
@ -28,16 +28,32 @@ const (
|
|||||||
creatTableDeletedUsersQuery = `CREATE TABLE IF NOT EXISTS deleted_users (id TEXT NOT NULL, email TEXT NOT NULL, name TEXT);`
|
creatTableDeletedUsersQuery = `CREATE TABLE IF NOT EXISTS deleted_users (id TEXT NOT NULL, email TEXT NOT NULL, name TEXT);`
|
||||||
|
|
||||||
selectDescQuery = `SELECT events.id, activity, timestamp, initiator_id, i.name as "initiator_name", i.email as "initiator_email", target_id, t.name as "target_name", t.email as "target_email", account_id, meta
|
selectDescQuery = `SELECT events.id, activity, timestamp, initiator_id, i.name as "initiator_name", i.email as "initiator_email", target_id, t.name as "target_name", t.email as "target_email", account_id, meta
|
||||||
FROM events
|
FROM events
|
||||||
LEFT JOIN deleted_users i ON events.initiator_id = i.id
|
LEFT JOIN (
|
||||||
LEFT JOIN deleted_users t ON events.target_id = t.id
|
SELECT id, MAX(name) as name, MAX(email) as email
|
||||||
|
FROM deleted_users
|
||||||
|
GROUP BY id
|
||||||
|
) i ON events.initiator_id = i.id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT id, MAX(name) as name, MAX(email) as email
|
||||||
|
FROM deleted_users
|
||||||
|
GROUP BY id
|
||||||
|
) t ON events.target_id = t.id
|
||||||
WHERE account_id = ?
|
WHERE account_id = ?
|
||||||
ORDER BY timestamp DESC LIMIT ? OFFSET ?;`
|
ORDER BY timestamp DESC LIMIT ? OFFSET ?;`
|
||||||
|
|
||||||
selectAscQuery = `SELECT events.id, activity, timestamp, initiator_id, i.name as "initiator_name", i.email as "initiator_email", target_id, t.name as "target_name", t.email as "target_email", account_id, meta
|
selectAscQuery = `SELECT events.id, activity, timestamp, initiator_id, i.name as "initiator_name", i.email as "initiator_email", target_id, t.name as "target_name", t.email as "target_email", account_id, meta
|
||||||
FROM events
|
FROM events
|
||||||
LEFT JOIN deleted_users i ON events.initiator_id = i.id
|
LEFT JOIN (
|
||||||
LEFT JOIN deleted_users t ON events.target_id = t.id
|
SELECT id, MAX(name) as name, MAX(email) as email
|
||||||
|
FROM deleted_users
|
||||||
|
GROUP BY id
|
||||||
|
) i ON events.initiator_id = i.id
|
||||||
|
LEFT JOIN (
|
||||||
|
SELECT id, MAX(name) as name, MAX(email) as email
|
||||||
|
FROM deleted_users
|
||||||
|
GROUP BY id
|
||||||
|
) t ON events.target_id = t.id
|
||||||
WHERE account_id = ?
|
WHERE account_id = ?
|
||||||
ORDER BY timestamp ASC LIMIT ? OFFSET ?;`
|
ORDER BY timestamp ASC LIMIT ? OFFSET ?;`
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user