Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Read from RDS #1060

Merged
merged 88 commits into from
Dec 12, 2024
Merged

Read from RDS #1060

merged 88 commits into from
Dec 12, 2024

Conversation

MinhxNguyen7
Copy link
Member

@MinhxNguyen7 MinhxNguyen7 commented Nov 25, 2024

Summary

  • Switch to read from RDS without changing the schema or deployment.
  • Remove legacy MongoDB users. This will only affect users that have not saved a schedule in over a year.
  • Still write to DDB without reading from it.
    • This allows us to revert this PR and retrieve all of the saved user data during the intervening period.

Testing

  • The test plan was designed by looking at ScheduleSaveState schema and making sure that we test the read and write
    of every attribute.
  • I have run through this, and everything looks good, but someone else should go through it as well as suggest more testing steps.

Test Plan

  • Create a schedule and add a section to it.
  • Create another schedule and add a different section as well as a custom event.
  • Save the user data.
  • Clear the site data and reload the page.
  • Load the previously-saved user.
  • Verify that the previously-added data populates, and the order of schedules is correct.
  • Delete a schedule, and repeat the reloading and verification procedures.

Issues

Future Follow-Up

  • Remove DDB and vestigial scripts once the we're 100% sure that prod is good.

@MinhxNguyen7 MinhxNguyen7 mentioned this pull request Nov 25, 2024
19 tasks
@MinhxNguyen7 MinhxNguyen7 mentioned this pull request Dec 6, 2024
4 tasks
@MinhxNguyen7 MinhxNguyen7 changed the title Migrate read Read from RDS Dec 6, 2024
@MinhxNguyen7 MinhxNguyen7 marked this pull request as ready for review December 7, 2024 05:25
@adcockdalton
Copy link
Collaborator

Code looks clean. Checking on staging now.

Copy link
Collaborator

@adcockdalton adcockdalton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Test Plan

  • Create a schedule and add a section to it.
  • Create another schedule and add a different section as well as a custom event.
  • Save the user data.
  • Clear the site data and reload the page.
  • Load the previously-saved user.
  • Verify that the previously-added data populates, and the order of schedules is correct.
  • Delete a schedule, and repeat the reloading and verification procedures.
    Additionally:
  • Create an additional user and mimic the prior process
  • Confirm that a 7-day custom event has intended behavior
  • Ensure that all facets of data persist for custom events (color, map location)
  • Ensure that "remember me" has intended functionality when using multiple users

Looks good to me. What an exciting PR! Cheers

@MinhxNguyen7 MinhxNguyen7 merged commit 67d9d36 into main Dec 12, 2024
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Migrate to RDS
7 participants