Files
web-hosts/domains/coppertone.tech/audit-reports/database-audit/query-performance-20251123-124312.txt
2025-12-26 13:38:04 +01:00

65 lines
9.1 KiB
Plaintext

# Query Performance Analysis - 20251123-124312
== SELECT * usage (fetch all columns - inefficient) ==
None found - good practice!
== Missing LIMIT on SELECT queries (potential memory issues) ==
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1321: SELECT invoice_id FROM payments
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1575: SELECT id, address FROM payment_wallets
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1626: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1652: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:2713: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:3235: SELECT invoice_id FROM payments
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:618: err := db.QueryRow("SELECT COUNT(*) FROM users").Scan(&userCount)
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:742: err := db.QueryRow("SELECT COUNT(*) FROM users").Scan(&userCount)
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:1926: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2042: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2128: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2210: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:658: query := `SELECT ` + blogSelectColumns + ` FROM blog_posts WHERE blog_type = $1`
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:858: err := db.QueryRow("SELECT author_id, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:961: err := db.QueryRow("SELECT author_id, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1004: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1058: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1092: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1356: err := db.QueryRow("SELECT author_id, blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1457: err := db.QueryRow("SELECT author_id, blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1500: query := `SELECT ` + blogSelectColumns + ` FROM blog_posts WHERE blog_type = $1`
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1548: err := db.QueryRow("SELECT blog_type, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1614: err := db.QueryRow("SELECT blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1649: err := db.QueryRow("SELECT blog_type, verified FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingVerified)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1689: err := db.QueryRow("SELECT blog_type, verified FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingVerified)
== N+1 Query Pattern (queries in loops) ==
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go-1452- db.QueryRow(`
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go-1828- roleRows, err := db.Query("SELECT role FROM user_roles WHERE user_id = $1", users[i].ID)
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go-1896- err := db.QueryRow(`
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go-2018- err := db.QueryRow(`
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go-299- if _, err := db.Exec(migration); err != nil {
== Missing ORDER BY (non-deterministic results) ==
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1321: SELECT invoice_id FROM payments
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1575: SELECT id, address FROM payment_wallets
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1626: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:1652: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:2713: SELECT rate FROM exchange_rates
/home/administrator/projects/coppertone.tech/backend/functions/payment-service/main.go:3235: SELECT invoice_id FROM payments
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:618: err := db.QueryRow("SELECT COUNT(*) FROM users").Scan(&userCount)
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:742: err := db.QueryRow("SELECT COUNT(*) FROM users").Scan(&userCount)
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:1926: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2042: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2128: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/auth-service/main.go:2210: SELECT id FROM user_roles
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:658: query := `SELECT ` + blogSelectColumns + ` FROM blog_posts WHERE blog_type = $1`
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:858: err := db.QueryRow("SELECT author_id, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:961: err := db.QueryRow("SELECT author_id, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1004: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1058: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1092: err := db.QueryRow("SELECT status FROM blog_posts WHERE slug = $1", slug).Scan(&existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1356: err := db.QueryRow("SELECT author_id, blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1457: err := db.QueryRow("SELECT author_id, blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingAuthorID, &existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1500: query := `SELECT ` + blogSelectColumns + ` FROM blog_posts WHERE blog_type = $1`
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1548: err := db.QueryRow("SELECT blog_type, status FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingStatus)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1614: err := db.QueryRow("SELECT blog_type FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1649: err := db.QueryRow("SELECT blog_type, verified FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingVerified)
/home/administrator/projects/coppertone.tech/backend/functions/blog-service/main.go:1689: err := db.QueryRow("SELECT blog_type, verified FROM blog_posts WHERE slug = $1", slug).Scan(&existingBlogType, &existingVerified)