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

upgrade mongo to 4.2 #1519

Merged
merged 1 commit into from
Oct 10, 2022
Merged

upgrade mongo to 4.2 #1519

merged 1 commit into from
Oct 10, 2022

Conversation

longrunningprocess
Copy link
Contributor

@longrunningprocess longrunningprocess commented Oct 7, 2022

Fixes #1173

Description

There is a desire to utilize aggregation pipelines and take advantage of possible perf improvements.

Type of Change

  • infrastructure upgrade

Screenshots

N/A

Checklist

  • I have performed a self-review of my own code
  • I have reviewed the title/description of this PR which will be used as the squashed PR commit message
  • I have commented my code, particularly in hard-to-understand areas
  • I have added tests that prove my fix is effective or that my feature works

How to test

Please describe how to test and/or verify your changes. Provide instructions so we can reproduce. Please also provide relevant test data as necessary. These instructions will be used for QA testing below.

  • A general smoke test in addition to successful automated tests should be enough to move forward with this one.
  • verify the mongo db was upgraded to 4.2 🤦🏻

qa.languageforge.org testing

Testers: Check the box and put in a date/time to sign-off/attest the feature works as expected on qa.languageforge.org

  • Lainey Miller (2022-10-11 15:27)
  • Tester2 (YYYY-MM-DD HH:MM)

@longrunningprocess longrunningprocess added the engineering Tasks which do not directly relate to a user-facing feature or fix label Oct 7, 2022
@longrunningprocess longrunningprocess self-assigned this Oct 7, 2022
@github-actions
Copy link

github-actions bot commented Oct 7, 2022

Unit Test Results

368 tests   368 ✔️  10s ⏱️
    1 suites      0 💤
    1 files        0

Results for commit 368e067.

@longrunningprocess longrunningprocess marked this pull request as draft October 7, 2022 19:36
@longrunningprocess
Copy link
Contributor Author

longrunningprocess commented Oct 7, 2022

https://www.mongodb.com/docs/manual/release-notes/4.2-upgrade-standalone

smoke test ✅

Automated tests ran and some basic local testing did not uncover any issues.

driver compat ✅

We're currently running driver: { name: "mongoc / ext-mongodb:PHP ", version: "1.22.1 / 1.14.1 " } and according to https://www.mongodb.com/docs/drivers/php/#compatibility-table-legend, we should be good. With that info as well as good automated tests and good local smoke testing, this one looks good.

storage engine compat ✅

  • need to ensure our storage engine is WiredTiger (thank you @megahirt )

see comments below for verification

api compat ✅

https://www.mongodb.com/docs/manual/release-notes/4.2-compatibility

  • need to ensure we don't use any of these changed APIs in our code, e.g., $group in particular. (thank you @megahirt )

see comments below for verification

config ✅

https://www.mongodb.com/docs/manual/release-notes/4.2-upgrade-standalone/#feature-compatibility-version

  • need to ensure this config is correct (thank you @megahirt )

see comments below for verification

@megahirt
Copy link
Collaborator

megahirt commented Oct 9, 2022

need to ensure our storage engine is WiredTiger

chris@MacBook docker % docker exec lf-db mongo --eval "db.serverStatus().storageEngine;"
MongoDB shell version v4.0.28
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("ccabba5d-de99-4e88-912f-25f062eb293e") }
MongoDB server version: 4.0.28
{
	"name" : "wiredTiger",
	"supportsCommittedReads" : true,
	"supportsSnapshotReadConcern" : true,
	"readOnly" : false,
	"persistent" : true
}

yup

@megahirt
Copy link
Collaborator

megahirt commented Oct 9, 2022

need to ensure we don't use any of these changed APIs in our code, e.g., $group in particular.

I searched through our code base and could not find any usage of the mongo $group

@megahirt
Copy link
Collaborator

chris@MacBook docker % docker exec lf-db mongo --eval "db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )"
MongoDB shell version v4.0.28
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("61b32da1-e5cb-48e2-9508-82d2e64aa1e8") }
MongoDB server version: 4.0.28
{ "featureCompatibilityVersion" : { "version" : "4.0" }, "ok" : 1 }

The config is set to 4.0, so we are good there

@longrunningprocess longrunningprocess marked this pull request as ready for review October 10, 2022 15:01
@longrunningprocess longrunningprocess enabled auto-merge (squash) October 10, 2022 15:02
Copy link
Collaborator

@megahirt megahirt left a comment

Choose a reason for hiding this comment

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

LGTM

I think the general idea here is to ship 4.2, let it go for a few weeks, and then upgrade to 4.4 a few weeks from now.

@longrunningprocess longrunningprocess merged commit 8a13be3 into develop Oct 10, 2022
@longrunningprocess longrunningprocess deleted the chore/upgrade-mongo branch October 10, 2022 15:04
@laineyhm
Copy link
Collaborator

Tested this today. I clicked around on the site, added an entry, and did a Send/Receive. I didn't notice any problems

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
engineering Tasks which do not directly relate to a user-facing feature or fix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade Mongo to 4.2 or later
3 participants