| 1 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 2 | SELECT * FROM v_student_current_semester
|
|---|
| 3 | WHERE student_id = 12345; -- OK
|
|---|
| 4 |
|
|---|
| 5 |
|
|---|
| 6 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 7 | SELECT * FROM v_student_upcoming_deadlines
|
|---|
| 8 | WHERE student_id = 12345; -- OK
|
|---|
| 9 |
|
|---|
| 10 |
|
|---|
| 11 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 12 | SELECT * FROM v_student_transcript
|
|---|
| 13 | WHERE student_id = 12345; -- OK
|
|---|
| 14 |
|
|---|
| 15 |
|
|---|
| 16 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 17 | SELECT * FROM v_course_announcements
|
|---|
| 18 | WHERE edition_id = 12345; -- OK
|
|---|
| 19 |
|
|---|
| 20 |
|
|---|
| 21 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 22 | SELECT * FROM v_exercise_grading_queue
|
|---|
| 23 | WHERE exercise_id = 12345; -- OK
|
|---|
| 24 |
|
|---|
| 25 |
|
|---|
| 26 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 27 | SELECT * FROM v_course_prerequisite_chain
|
|---|
| 28 | WHERE course_code = 'F23L3S138'; -- OK
|
|---|
| 29 |
|
|---|
| 30 |
|
|---|
| 31 |
|
|---|
| 32 |
|
|---|
| 33 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 34 | SELECT * FROM v_student_registration_state
|
|---|
| 35 | WHERE student_id = 12345;
|
|---|
| 36 |
|
|---|
| 37 | CREATE INDEX CONCURRENTLY idx_pe_student_active ON Program_Enrollment(student_id)
|
|---|
| 38 | WHERE date_disenrollment IS NULL AND finished IS NOT TRUE;
|
|---|
| 39 |
|
|---|
| 40 | CREATE INDEX CONCURRENTLY idx_se_pe_year_sem ON Semester_Enrollment(program_enrollment_id, academic_year, semester);
|
|---|
| 41 |
|
|---|
| 42 | CREATE INDEX CONCURRENTLY idx_ce_semester ON Course_Enrollment(semester_enrollment_id);
|
|---|
| 43 | CREATE INDEX CONCURRENTLY idx_ce_edition ON Course_Enrollment(course_edition_id);
|
|---|
| 44 |
|
|---|
| 45 | CREATE INDEX CONCURRENTLY idx_sg_ce ON Student_Grade(course_enrollment_id);
|
|---|
| 46 |
|
|---|
| 47 | CREATE INDEX CONCURRENTLY idx_course_equiv_course1 ON Course_Equivalence(course1_code);
|
|---|
| 48 | CREATE INDEX CONCURRENTLY idx_course_equiv_course2 ON Course_Equivalence(course2_code);
|
|---|
| 49 |
|
|---|
| 50 | -- INDICES STILL DON'T HELP --> USE FUNCTION fn_student_registration_state
|
|---|
| 51 | SELECT * FROM fn_student_registration_state(12345);
|
|---|
| 52 |
|
|---|
| 53 | --------------------------------------------------
|
|---|
| 54 |
|
|---|
| 55 | EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING, FORMAT TEXT)
|
|---|
| 56 | SELECT * FROM v_teaching_assistant_eligibility
|
|---|
| 57 | WHERE edition_id = 13139;
|
|---|
| 58 |
|
|---|
| 59 | CREATE INDEX CONCURRENTLY IF NOT EXISTS idx_ce_edition ON Course_Enrollment(course_edition_id);
|
|---|
| 60 | CREATE INDEX CONCURRENTLY idx_teaches_edition ON Teaches(course_edition_id);
|
|---|
| 61 | CREATE INDEX CONCURRENTLY idx_exercise_edition ON Exercise(course_edition_id);
|
|---|
| 62 | CREATE INDEX CONCURRENTLY idx_exam_edition ON Exam(course_edition_id);
|
|---|
| 63 | CREATE INDEX CONCURRENTLY idx_survey_edition ON Survey(course_edition_id);
|
|---|
| 64 |
|
|---|
| 65 | CREATE INDEX CONCURRENTLY idx_se_year_sem ON Semester_Enrollment(academic_year, semester);
|
|---|
| 66 |
|
|---|
| 67 | CREATE INDEX CONCURRENTLY idx_teaching_assistant_student ON Teaching_Assistant(student_id);
|
|---|
| 68 | CREATE INDEX CONCURRENTLY idx_teaches_teacher_edition ON Teaches(teacher_id, course_edition_id);
|
|---|
| 69 |
|
|---|
| 70 | -- INDICES STILL DON'T HELP --> USE FUNCTION fn_teaching_assistant_eligibility
|
|---|
| 71 | SELECT DISTINCT id FROM Teacher WHERE id >= 10000 LIMIT 1;
|
|---|
| 72 | SELECT DISTINCT id FROM Course_Edition ORDER BY id DESC;
|
|---|
| 73 | SELECT * FROM fn_teaching_assistant_eligibility(13139);
|
|---|
| 74 |
|
|---|
| 75 | -- DROP INDEX idx_teaches_edition;
|
|---|
| 76 | -- DROP INDEX idx_exercise_edition;
|
|---|
| 77 | -- DROP INDEX idx_exam_edition;
|
|---|
| 78 | -- DROP INDEX idx_survey_edition;
|
|---|
| 79 | --
|
|---|
| 80 | -- DROP INDEX idx_se_year_sem;
|
|---|
| 81 | --
|
|---|
| 82 | -- DROP INDEX idx_teaching_assistant_student;
|
|---|
| 83 | -- DROP INDEX idx_teaches_teacher_edition; |
|---|