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

Remove multiple restart feature #10345

Merged
merged 3 commits into from Dec 18, 2019

Conversation

@klaussner
Copy link
Member

klaussner commented Nov 20, 2018

Removes the logic that restarts a crashing Meteor server twice if there is a runtime error.
Fixes meteor/meteor-feature-requests#335.

@benjamn benjamn added this to the Release 1.8.1 milestone Nov 20, 2018
var runResult = self._runOnce({
onListen: function () {
if (! self.noRestartBanner && ! firstRun) {
runLog.logRestart();
Console.enableProgressDisplay(false);
}
},
beforeRun: resetCrashCount,

This comment has been minimized.

Copy link
@klaussner

klaussner Nov 20, 2018

Author Member

Should the beforeRun option be removed from AppRunner? It's only used here.

@klaussner klaussner changed the title Remove multiple restart feature [wip] Remove multiple restart feature Nov 24, 2018
@klaussner

This comment has been minimized.

Copy link
Member Author

klaussner commented Nov 25, 2018

This change uncovered a bug in the launchOneMongoAndWaitForReadyForInitiate function, which waits until the database is ready by checking MongoDB's stdout for certain status messages. Under the conditions in the mongo with multiple --port numbers test, this function returns too early, leading to the MongoError: not master and slaveOk=false error shown in Test Group 7.

You can reproduce this with a Meteor app that accesses the database immediately after it started:

import { Meteor } from "meteor/meteor";
import { Mongo } from "meteor/mongo";

const Collection = new Mongo.Collection("collection");

Meteor.startup(() => {
  Collection.findOne();
});

First, run the app with meteor, then stop it and run it again with a different port: meteor --port 4321.

@benjamn benjamn modified the milestones: Release 1.8.1, Release 1.9.0 Mar 15, 2019
@klaussner klaussner force-pushed the klaussner:remove-multiple-restart-feature branch from 47dc3d5 to a027fcc Mar 20, 2019
@klaussner klaussner changed the title [wip] Remove multiple restart feature Remove multiple restart feature Mar 20, 2019
@klaussner

This comment has been minimized.

Copy link
Member Author

klaussner commented Mar 20, 2019

The failing test in Test Group 8 (mongo with multiple --port numbers) will pass when 2b21a90 is merged into devel.

@klaussner klaussner force-pushed the klaussner:remove-multiple-restart-feature branch 3 times, most recently from 93d4f01 to 0b8b1f5 Apr 6, 2019
@stale

This comment was marked as off-topic.

Copy link

stale bot commented Dec 10, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale-bot label Dec 10, 2019
@klaussner klaussner removed the stale-bot label Dec 10, 2019
klaussner added 2 commits Nov 20, 2018
@benjamn benjamn force-pushed the klaussner:remove-multiple-restart-feature branch from 0b8b1f5 to a922990 Dec 18, 2019
@benjamn benjamn changed the base branch from devel to release-1.9 Dec 18, 2019
@benjamn benjamn merged commit 92013e3 into meteor:release-1.9 Dec 18, 2019
17 of 18 checks passed
17 of 18 checks passed
continuous-integration/appveyor/pr Waiting for AppVeyor build to complete
Details
ci/circleci: Clean Up Your tests passed on CircleCI!
Details
ci/circleci: Docs Your tests passed on CircleCI!
Details
ci/circleci: Get Ready Your tests passed on CircleCI!
Details
ci/circleci: Isolated Tests Your tests passed on CircleCI!
Details
ci/circleci: Test Group 0 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 1 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 10 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 2 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 3 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 4 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 5 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 6 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 7 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 8 Your tests passed on CircleCI!
Details
ci/circleci: Test Group 9 Your tests passed on CircleCI!
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
license/cla Contributor License Agreement is signed.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants
You can’t perform that action at this time.