Skip to content

Commit 3274736

Browse files
authored
Merge pull request #64 from gamesgamesgamesgamesgames/feat/prefix-db-tables
chore: prefix db tables
2 parents acb5c1e + cc1c82b commit 3274736

84 files changed

Lines changed: 674 additions & 473 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
ALTER TABLE IF EXISTS account_delegates RENAME TO happyview_account_delegates;
2+
ALTER TABLE IF EXISTS admin_api_keys RENAME TO happyview_admin_api_keys;
3+
ALTER TABLE IF EXISTS admins RENAME TO happyview_admins;
4+
ALTER TABLE IF EXISTS api_keys RENAME TO happyview_api_keys;
5+
ALTER TABLE IF EXISTS users RENAME TO happyview_users;
6+
ALTER TABLE IF EXISTS api_clients RENAME TO happyview_api_clients;
7+
ALTER TABLE IF EXISTS auth_login_redirects RENAME TO happyview_auth_login_redirects;
8+
ALTER TABLE IF EXISTS backfill_jobs RENAME TO happyview_backfill_jobs;
9+
ALTER TABLE IF EXISTS backfill_repos RENAME TO happyview_backfill_repos;
10+
ALTER TABLE IF EXISTS dead_letter_hooks RENAME TO happyview_dead_letter_hooks;
11+
ALTER TABLE IF EXISTS dead_letter_scripts RENAME TO happyview_dead_letter_scripts;
12+
ALTER TABLE IF EXISTS delegated_accounts RENAME TO happyview_delegated_accounts;
13+
ALTER TABLE IF EXISTS domains RENAME TO happyview_domains;
14+
ALTER TABLE IF EXISTS dpop_keys RENAME TO happyview_dpop_keys;
15+
ALTER TABLE IF EXISTS dpop_sessions RENAME TO happyview_dpop_sessions;
16+
ALTER TABLE IF EXISTS event_logs RENAME TO happyview_event_logs;
17+
ALTER TABLE IF EXISTS external_account_tokens RENAME TO happyview_external_account_tokens;
18+
ALTER TABLE IF EXISTS external_auth_state RENAME TO happyview_external_auth_state;
19+
ALTER TABLE IF EXISTS instance_settings RENAME TO happyview_instance_settings;
20+
ALTER TABLE IF EXISTS labeler_subscriptions RENAME TO happyview_labeler_subscriptions;
21+
ALTER TABLE IF EXISTS labels RENAME TO happyview_labels;
22+
ALTER TABLE IF EXISTS lexicons RENAME TO happyview_lexicons;
23+
ALTER TABLE IF EXISTS network_lexicons RENAME TO happyview_network_lexicons;
24+
ALTER TABLE IF EXISTS oauth_sessions RENAME TO happyview_oauth_sessions;
25+
ALTER TABLE IF EXISTS oauth_state RENAME TO happyview_oauth_state;
26+
ALTER TABLE IF EXISTS plugin_configs RENAME TO happyview_plugin_configs;
27+
ALTER TABLE IF EXISTS plugin_dedup_keys RENAME TO happyview_plugin_dedup_keys;
28+
ALTER TABLE IF EXISTS plugin_kv RENAME TO happyview_plugin_kv;
29+
ALTER TABLE IF EXISTS plugins RENAME TO happyview_plugins;
30+
ALTER TABLE IF EXISTS rate_limit_allowlist RENAME TO happyview_rate_limit_allowlist;
31+
ALTER TABLE IF EXISTS rate_limit_settings RENAME TO happyview_rate_limit_settings;
32+
ALTER TABLE IF EXISTS rate_limits RENAME TO happyview_rate_limits;
33+
ALTER TABLE IF EXISTS record_refs RENAME TO happyview_record_refs;
34+
ALTER TABLE IF EXISTS records RENAME TO happyview_records;
35+
ALTER TABLE IF EXISTS script_variables RENAME TO happyview_script_variables;
36+
ALTER TABLE IF EXISTS scripts RENAME TO happyview_scripts;
37+
ALTER TABLE IF EXISTS service_entries RENAME TO happyview_service_entries;
38+
ALTER TABLE IF EXISTS service_entry_xrpcs RENAME TO happyview_service_entry_xrpcs;
39+
ALTER TABLE IF EXISTS service_identity RENAME TO happyview_service_identity;
40+
ALTER TABLE IF EXISTS space_credentials RENAME TO happyview_space_credentials;
41+
ALTER TABLE IF EXISTS space_dids RENAME TO happyview_space_dids;
42+
ALTER TABLE IF EXISTS space_invites RENAME TO happyview_space_invites;
43+
ALTER TABLE IF EXISTS space_members RENAME TO happyview_space_members;
44+
ALTER TABLE IF EXISTS space_records RENAME TO happyview_space_records;
45+
ALTER TABLE IF EXISTS space_sync_state RENAME TO happyview_space_sync_state;
46+
ALTER TABLE IF EXISTS spaces RENAME TO happyview_spaces;
47+
ALTER TABLE IF EXISTS user_permissions RENAME TO happyview_user_permissions;
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
ALTER TABLE account_delegates RENAME TO happyview_account_delegates;
2+
ALTER TABLE admin_api_keys RENAME TO happyview_admin_api_keys;
3+
ALTER TABLE admins RENAME TO happyview_admins;
4+
ALTER TABLE api_keys RENAME TO happyview_api_keys;
5+
ALTER TABLE users RENAME TO happyview_users;
6+
ALTER TABLE api_clients RENAME TO happyview_api_clients;
7+
ALTER TABLE auth_login_redirects RENAME TO happyview_auth_login_redirects;
8+
ALTER TABLE backfill_jobs RENAME TO happyview_backfill_jobs;
9+
ALTER TABLE backfill_repos RENAME TO happyview_backfill_repos;
10+
ALTER TABLE dead_letter_hooks RENAME TO happyview_dead_letter_hooks;
11+
ALTER TABLE dead_letter_scripts RENAME TO happyview_dead_letter_scripts;
12+
ALTER TABLE delegated_accounts RENAME TO happyview_delegated_accounts;
13+
ALTER TABLE domains RENAME TO happyview_domains;
14+
ALTER TABLE dpop_keys RENAME TO happyview_dpop_keys;
15+
ALTER TABLE dpop_sessions RENAME TO happyview_dpop_sessions;
16+
ALTER TABLE event_logs RENAME TO happyview_event_logs;
17+
ALTER TABLE external_account_tokens RENAME TO happyview_external_account_tokens;
18+
ALTER TABLE external_auth_state RENAME TO happyview_external_auth_state;
19+
ALTER TABLE instance_settings RENAME TO happyview_instance_settings;
20+
ALTER TABLE labeler_subscriptions RENAME TO happyview_labeler_subscriptions;
21+
ALTER TABLE labels RENAME TO happyview_labels;
22+
ALTER TABLE lexicons RENAME TO happyview_lexicons;
23+
ALTER TABLE network_lexicons RENAME TO happyview_network_lexicons;
24+
ALTER TABLE oauth_sessions RENAME TO happyview_oauth_sessions;
25+
ALTER TABLE oauth_state RENAME TO happyview_oauth_state;
26+
ALTER TABLE plugin_configs RENAME TO happyview_plugin_configs;
27+
ALTER TABLE plugin_dedup_keys RENAME TO happyview_plugin_dedup_keys;
28+
ALTER TABLE plugin_kv RENAME TO happyview_plugin_kv;
29+
ALTER TABLE plugins RENAME TO happyview_plugins;
30+
ALTER TABLE rate_limit_allowlist RENAME TO happyview_rate_limit_allowlist;
31+
ALTER TABLE rate_limit_settings RENAME TO happyview_rate_limit_settings;
32+
ALTER TABLE rate_limits RENAME TO happyview_rate_limits;
33+
ALTER TABLE record_refs RENAME TO happyview_record_refs;
34+
ALTER TABLE records RENAME TO happyview_records;
35+
ALTER TABLE script_variables RENAME TO happyview_script_variables;
36+
ALTER TABLE scripts RENAME TO happyview_scripts;
37+
ALTER TABLE service_entries RENAME TO happyview_service_entries;
38+
ALTER TABLE service_entry_xrpcs RENAME TO happyview_service_entry_xrpcs;
39+
ALTER TABLE service_identity RENAME TO happyview_service_identity;
40+
ALTER TABLE space_credentials RENAME TO happyview_space_credentials;
41+
ALTER TABLE space_dids RENAME TO happyview_space_dids;
42+
ALTER TABLE space_invites RENAME TO happyview_space_invites;
43+
ALTER TABLE space_members RENAME TO happyview_space_members;
44+
ALTER TABLE space_records RENAME TO happyview_space_records;
45+
ALTER TABLE space_sync_state RENAME TO happyview_space_sync_state;
46+
ALTER TABLE spaces RENAME TO happyview_spaces;
47+
ALTER TABLE user_permissions RENAME TO happyview_user_permissions;

src/admin/api_clients.rs

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ pub(super) async fn create_api_client(
6666
.map(|origins| serde_json::to_string(origins).unwrap_or_else(|_| "[]".to_string()));
6767

6868
let insert_sql = adapt_sql(
69-
"INSERT INTO api_clients (id, client_key, client_secret_hash, name, client_id_url, client_uri, redirect_uris, scopes, rate_limit_capacity, rate_limit_refill_rate, client_type, allowed_origins, is_active, created_by, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, 1, ?, ?, ?)",
69+
"INSERT INTO happyview_api_clients (id, client_key, client_secret_hash, name, client_id_url, client_uri, redirect_uris, scopes, rate_limit_capacity, rate_limit_refill_rate, client_type, allowed_origins, is_active, created_by, created_at, updated_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, 1, ?, ?, ?)",
7070
state.db_backend,
7171
);
7272

@@ -173,15 +173,15 @@ pub(super) async fn list_api_clients(
173173
let (select_sql, parent_filter) = if let Some(ref parent_id) = query.parent_id {
174174
(
175175
adapt_sql(
176-
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM api_clients WHERE parent_client_id = ? ORDER BY created_at DESC",
176+
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM happyview_api_clients WHERE parent_client_id = ? ORDER BY created_at DESC",
177177
state.db_backend,
178178
),
179179
Some(parent_id.clone()),
180180
)
181181
} else {
182182
(
183183
adapt_sql(
184-
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM api_clients ORDER BY created_at DESC",
184+
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM happyview_api_clients ORDER BY created_at DESC",
185185
state.db_backend,
186186
),
187187
None,
@@ -245,7 +245,7 @@ pub(super) async fn get_api_client(
245245
auth.require(Permission::ApiClientsView).await?;
246246

247247
let select_sql = adapt_sql(
248-
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM api_clients WHERE id = ?",
248+
"SELECT id, client_key, name, client_id_url, client_uri, redirect_uris, scopes, client_type, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active, created_by, created_at, updated_at, parent_client_id, owner_did FROM happyview_api_clients WHERE id = ?",
249249
state.db_backend,
250250
);
251251

@@ -299,7 +299,7 @@ pub(super) async fn update_api_client(
299299

300300
// Read current values
301301
let select_sql = adapt_sql(
302-
"SELECT client_key, client_secret_hash, name, client_id_url, client_uri, redirect_uris, scopes, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active FROM api_clients WHERE id = ?",
302+
"SELECT client_key, client_secret_hash, name, client_id_url, client_uri, redirect_uris, scopes, allowed_origins, rate_limit_capacity, rate_limit_refill_rate, is_active FROM happyview_api_clients WHERE id = ?",
303303
state.db_backend,
304304
);
305305

@@ -362,7 +362,7 @@ pub(super) async fn update_api_client(
362362
let now = now_rfc3339();
363363

364364
let update_sql = adapt_sql(
365-
"UPDATE api_clients SET name = ?, client_uri = ?, redirect_uris = ?, scopes = ?, allowed_origins = ?, rate_limit_capacity = ?, rate_limit_refill_rate = ?, is_active = ?, updated_at = ? WHERE id = ?",
365+
"UPDATE happyview_api_clients SET name = ?, client_uri = ?, redirect_uris = ?, scopes = ?, allowed_origins = ?, rate_limit_capacity = ?, rate_limit_refill_rate = ?, is_active = ?, updated_at = ? WHERE id = ?",
366366
state.db_backend,
367367
);
368368

@@ -435,7 +435,7 @@ pub(super) async fn update_api_client(
435435

436436
// Cascade deactivation to child clients.
437437
let deactivate_children_sql = adapt_sql(
438-
"UPDATE api_clients SET is_active = 0, updated_at = ? WHERE parent_client_id = ? AND is_active = 1",
438+
"UPDATE happyview_api_clients SET is_active = 0, updated_at = ? WHERE parent_client_id = ? AND is_active = 1",
439439
state.db_backend,
440440
);
441441
let _ = sqlx::query(&deactivate_children_sql)
@@ -445,7 +445,7 @@ pub(super) async fn update_api_client(
445445
.await;
446446

447447
let children_sql = adapt_sql(
448-
"SELECT client_id_url, client_key FROM api_clients WHERE parent_client_id = ?",
448+
"SELECT client_id_url, client_key FROM happyview_api_clients WHERE parent_client_id = ?",
449449
state.db_backend,
450450
);
451451
if let Ok(children) = sqlx::query_as::<_, (String, String)>(&children_sql)
@@ -487,7 +487,7 @@ pub(super) async fn delete_api_client(
487487

488488
// Look up client_id_url and client_key before deleting so we can remove from registries.
489489
let lookup_sql = adapt_sql(
490-
"SELECT client_id_url, client_key FROM api_clients WHERE id = ?",
490+
"SELECT client_id_url, client_key FROM happyview_api_clients WHERE id = ?",
491491
state.db_backend,
492492
);
493493
let client_info: Option<(String, String)> = sqlx::query_as(&lookup_sql)
@@ -498,7 +498,7 @@ pub(super) async fn delete_api_client(
498498

499499
// Look up child clients before deleting (ON DELETE CASCADE will remove DB rows).
500500
let children_sql = adapt_sql(
501-
"SELECT client_id_url, client_key FROM api_clients WHERE parent_client_id = ?",
501+
"SELECT client_id_url, client_key FROM happyview_api_clients WHERE parent_client_id = ?",
502502
state.db_backend,
503503
);
504504
let children: Vec<(String, String)> = sqlx::query_as(&children_sql)
@@ -507,7 +507,10 @@ pub(super) async fn delete_api_client(
507507
.await
508508
.unwrap_or_default();
509509

510-
let delete_sql = adapt_sql("DELETE FROM api_clients WHERE id = ?", state.db_backend);
510+
let delete_sql = adapt_sql(
511+
"DELETE FROM happyview_api_clients WHERE id = ?",
512+
state.db_backend,
513+
);
511514

512515
let result = sqlx::query(&delete_sql)
513516
.bind(&id)

src/admin/api_keys.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ pub(super) async fn create_api_key(
5656
serde_json::to_string(&body.permissions).unwrap_or_else(|_| "[]".to_string());
5757

5858
let insert_sql = adapt_sql(
59-
"INSERT INTO api_keys (id, user_id, name, key_hash, key_prefix, permissions, created_at) VALUES (?, ?, ?, ?, ?, ?, ?)",
59+
"INSERT INTO happyview_api_keys (id, user_id, name, key_hash, key_prefix, permissions, created_at) VALUES (?, ?, ?, ?, ?, ?, ?)",
6060
state.db_backend,
6161
);
6262

@@ -105,7 +105,7 @@ pub(super) async fn list_api_keys(
105105
auth.require(Permission::ApiKeysRead).await?;
106106

107107
let select_sql = adapt_sql(
108-
"SELECT k.id, k.name, k.key_prefix, k.permissions, k.created_at, k.last_used_at, k.revoked_at FROM api_keys k JOIN users u ON u.id = k.user_id WHERE u.did = ? ORDER BY k.created_at DESC",
108+
"SELECT k.id, k.name, k.key_prefix, k.permissions, k.created_at, k.last_used_at, k.revoked_at FROM happyview_api_keys k JOIN happyview_users u ON u.id = k.user_id WHERE u.did = ? ORDER BY k.created_at DESC",
109109
state.db_backend,
110110
);
111111

@@ -156,7 +156,7 @@ pub(super) async fn revoke_api_key(
156156

157157
let now = now_rfc3339();
158158
let update_sql = adapt_sql(
159-
"UPDATE api_keys SET revoked_at = ? WHERE id = ? AND user_id = (SELECT id FROM users WHERE did = ?) AND revoked_at IS NULL",
159+
"UPDATE happyview_api_keys SET revoked_at = ? WHERE id = ? AND user_id = (SELECT id FROM happyview_users WHERE did = ?) AND revoked_at IS NULL",
160160
state.db_backend,
161161
);
162162

src/admin/auth.rs

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ impl UserAuth {
5454
backend: DatabaseBackend,
5555
) -> Result<HashSet<Permission>, AppError> {
5656
let sql = adapt_sql(
57-
"SELECT permission FROM user_permissions WHERE user_id = ?",
57+
"SELECT permission FROM happyview_user_permissions WHERE user_id = ?",
5858
backend,
5959
);
6060
let rows: Vec<(String,)> = sqlx::query_as(&sql)
@@ -110,7 +110,7 @@ impl FromRequestParts<AppState> for UserAuth {
110110
let did = claims.did().to_string();
111111
let backend = state.db_backend;
112112

113-
let count: (i64,) = sqlx::query_as("SELECT COUNT(*) FROM users")
113+
let count: (i64,) = sqlx::query_as("SELECT COUNT(*) FROM happyview_users")
114114
.fetch_one(&state.db)
115115
.await
116116
.map_err(|e| AppError::Internal(format!("user count query failed: {e}")))?;
@@ -121,7 +121,7 @@ impl FromRequestParts<AppState> for UserAuth {
121121
let now = now_rfc3339();
122122

123123
let insert_sql = adapt_sql(
124-
"INSERT INTO users (id, did, is_super, created_at) VALUES (?, ?, ?, ?)",
124+
"INSERT INTO happyview_users (id, did, is_super, created_at) VALUES (?, ?, ?, ?)",
125125
backend,
126126
);
127127

@@ -135,7 +135,7 @@ impl FromRequestParts<AppState> for UserAuth {
135135

136136
if result.is_ok() {
137137
let perm_sql = adapt_sql(
138-
"INSERT INTO user_permissions (user_id, permission, granted_at) VALUES (?, ?, ?)",
138+
"INSERT INTO happyview_user_permissions (user_id, permission, granted_at) VALUES (?, ?, ?)",
139139
backend,
140140
);
141141
for perm in Permission::all() {
@@ -164,7 +164,10 @@ impl FromRequestParts<AppState> for UserAuth {
164164
}
165165
}
166166

167-
let select_sql = adapt_sql("SELECT id, is_super FROM users WHERE did = ?", backend);
167+
let select_sql = adapt_sql(
168+
"SELECT id, is_super FROM happyview_users WHERE did = ?",
169+
backend,
170+
);
168171
let found: Option<(String, i32)> = sqlx::query_as(&select_sql)
169172
.bind(&did)
170173
.fetch_optional(&state.db)
@@ -185,7 +188,10 @@ impl FromRequestParts<AppState> for UserAuth {
185188
let db = state.db.clone();
186189
let uid = user_id.clone();
187190
let now = now_rfc3339();
188-
let update_sql = adapt_sql("UPDATE users SET last_used_at = ? WHERE id = ?", backend);
191+
let update_sql = adapt_sql(
192+
"UPDATE happyview_users SET last_used_at = ? WHERE id = ?",
193+
backend,
194+
);
189195
tokio::spawn(async move {
190196
let _ = sqlx::query(&update_sql)
191197
.bind(&now)
@@ -229,7 +235,7 @@ impl UserAuth {
229235
let backend = state.db_backend;
230236

231237
let select_sql = adapt_sql(
232-
"SELECT k.id, u.id, u.did, u.is_super, k.permissions FROM api_keys k JOIN users u ON u.id = k.user_id WHERE k.key_hash = ? AND k.revoked_at IS NULL",
238+
"SELECT k.id, u.id, u.did, u.is_super, k.permissions FROM happyview_api_keys k JOIN happyview_users u ON u.id = k.user_id WHERE k.key_hash = ? AND k.revoked_at IS NULL",
233239
backend,
234240
);
235241

@@ -256,7 +262,10 @@ impl UserAuth {
256262

257263
let db = state.db.clone();
258264
let now = now_rfc3339();
259-
let update_sql = adapt_sql("UPDATE api_keys SET last_used_at = ? WHERE id = ?", backend);
265+
let update_sql = adapt_sql(
266+
"UPDATE happyview_api_keys SET last_used_at = ? WHERE id = ?",
267+
backend,
268+
);
260269
tokio::spawn(async move {
261270
let _ = sqlx::query(&update_sql)
262271
.bind(&now)

0 commit comments

Comments
 (0)