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

Revert workaround for puma 4.1.0 output bug #48

Merged
merged 1 commit into from Sep 9, 2019

Conversation

@mattbrictson
Copy link
Owner

commented Sep 2, 2019

Puma 4.1.0 had a bug (puma/puma#1906) where its output was not properly detached prior to daemonizing. To work around this, I added output redirection to the bundle exec puma command to force the output to be detached from the console (see #39).

Now that puma has fixed this bug, I am removing the output redirection. The redirection had a downside: it hid messages from the console that were valuable for troubleshooting. For example if puma had an invalid config file that prevented it from starting, the error would have been hidden.

To avoid a breaking change, I am keeping the :puma_stdout_path and :puma_stderr_path tomo settings around. But rather than using them for output direction, they will be passed to puma's --redirect-stdout and --redirect-stderr options. These also redirect puma's output, but after puma has successfully been started and daemonized (i.e after tomo's deploy has finished).

Puma 4.1.0 had a bug where its output was not properly detached prior to
daemonizing. To work around this, I added output redirection to the
`bundle exec puma` command to force the output to be detached from the
console.

Now that puma has fixed this bug, I am removing the output redirection.
The redirection had a downside: it hid messages from the console that
were valuable for troubleshooting. For example if puma had an invalid
config file that prevented it from starting, the error would have been
hidden.

To avoid a breaking change, I am keeping the `:puma_stdout_path` and
`:puma_stderr_path` tomo settings around. But rather than using them
for output direction, they will be passed to puma's `--redirect-stdout`
and `--redirect-stderr` options. These also redirect puma's output, but
_after_ puma has successfully been started and daemonized (i.e after
tomo's deploy has finished).
@mattbrictson

This comment has been minimized.

Copy link
Owner Author

commented Sep 2, 2019

Waiting for puma 4.1.1 to be released before merging.

@mattbrictson mattbrictson merged commit 7e4818d into master Sep 9, 2019
7 checks passed
7 checks passed
Draft Release
Details
ci/circleci: mkdocs_build Your tests passed on CircleCI!
Details
ci/circleci: rubocop Your tests passed on CircleCI!
Details
ci/circleci: test_docker Your tests passed on CircleCI!
Details
ci/circleci: test_e2e Your tests passed on CircleCI!
Details
ci/circleci: test_unit Your tests passed on CircleCI!
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@mattbrictson mattbrictson deleted the features/remove-workaround-for-puma-4.1.0 branch Sep 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.