Skip to content

Remove gctools Gem - #51590

Merged
Hamms merged 2 commits into
stagingfrom
speculatively-remove-gctools
May 24, 2023
Merged

Remove gctools Gem#51590
Hamms merged 2 commits into
stagingfrom
speculatively-remove-gctools

Conversation

@Hamms

@Hamms Hamms commented Apr 28, 2023

Copy link
Copy Markdown
Contributor

In advance of an update to Ruby 3.0; this gem is not compatible with that version of Ruby, and in fact is no longer being maintained. In addition to that, disabling our use of the gem via DCDO flag does not appear to have any impact on our memory usage now that we're running Ruby 2.7, and there's even some evidence to suggest it might actually improve performance.

Links

See threads at https://codedotorg.slack.com/archives/C03CK49G9/p1684263819084909 and https://codedotorg.slack.com/archives/C03CK49G9/p1683832254038709 for more context.
See test server memory usage here

Testing story

Set the DCDO oobgc_middleware_disabled flag to true on both test (via DynanoDB web ui) and production-console (via console). The test server's memory usage is quite noisy, but there were no obvious increases in subsequent builds. For production-console, I manually increased our auto-scaling group's target numbers to trigger a new server to be provisioned, and verified that its memory usage stabilized at the same level as the other servers which were still running the garbage collector. I then left the flag enabled and verified that when we scaled up with the next day's traffic, the newly-provisioned servers with the garbage collector disabled continued to perform under load the same as (or better than!) those servers that were still running the garbage collector.

Follow-up Work

Remove the oobgc_middleware_disabled flag from test and prod now that we're no longer using it.

In advance of an update to Ruby 3.0
@Hamms Hamms changed the title Speculatively Remove gctools Gem Remove gctools Gem May 19, 2023
@Hamms Hamms added the Ruby Update Everything related to work to update the version of Ruby our codebase runs on label May 19, 2023
@Hamms
Hamms marked this pull request as ready for review May 19, 2023 17:57
@Hamms
Hamms requested a review from a team May 19, 2023 17:58
@Hamms
Hamms merged commit 38e004f into staging May 24, 2023
@Hamms
Hamms deleted the speculatively-remove-gctools branch May 24, 2023 18:53
@Hamms Hamms mentioned this pull request Jun 29, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Ruby Update Everything related to work to update the version of Ruby our codebase runs on

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants