summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Chan <jason.chan@mongodb.com>2020-07-14 20:50:12 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-07-23 12:26:49 +0000
commit1c28b3cf02d42f3d3135560dddc43a851ccd801b (patch)
tree4549ad2cd3e19a0cec2483bc10c989805d297a78
parente1f9d520c85c65b1fcf1d3affb067e4935c04c71 (diff)
downloadmongo-1c28b3cf02d42f3d3135560dddc43a851ccd801b.tar.gz
SERVER-49064 Update references of "last-stable" to use "last-continuous" and "last-lts"
-rwxr-xr-xbuildscripts/evergreen_gen_multiversion_tests.py51
-rw-r--r--buildscripts/resmokeconfig/suites/multiversion.yml2
-rw-r--r--buildscripts/resmokeconfig/suites/no_passthrough.yml2
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_last_lts_mongos_and_mixed_shards.yml (renamed from buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml)8
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_multiversion.yml2
-rw-r--r--buildscripts/resmokelib/core/programs.py36
-rw-r--r--buildscripts/resmokelib/multiversionconstants.py10
-rw-r--r--buildscripts/resmokelib/run/__init__.py2
-rw-r--r--buildscripts/resmokelib/testing/fixtures/interface.py4
-rw-r--r--buildscripts/resmokelib/testing/fixtures/replicaset.py14
-rw-r--r--buildscripts/resmokelib/testing/fixtures/shardedcluster.py6
-rw-r--r--buildscripts/tests/test_burn_in_tests_multiversion.py8
-rw-r--r--etc/backports_required_for_multiversion_tests.yml8
-rw-r--r--etc/evergreen.yml2
-rw-r--r--jstests/core/mixed_version_replica_set.js4
-rw-r--r--jstests/core/txns/abort_unprepared_transactions_on_FCV_downgrade.js4
-rw-r--r--jstests/core/txns/await_prepared_transactions_on_FCV_downgrade.js9
-rw-r--r--jstests/libs/chunk_manipulation_util.js6
-rw-r--r--jstests/multiVersion/1_test_launching_replset.js2
-rw-r--r--jstests/multiVersion/2_test_launching_cluster.js4
-rw-r--r--jstests/multiVersion/3_upgrade_replset.js2
-rw-r--r--jstests/multiVersion/add_invalid_shard.js6
-rw-r--r--jstests/multiVersion/allow_system_views_user_writes_in_fcv_44.js2
-rw-r--r--jstests/multiVersion/balancer_multiVersion_detect.js2
-rw-r--r--jstests/multiVersion/delete_orphans_on_upgrade.js7
-rw-r--r--jstests/multiVersion/delete_pending_range_deletions_on_downgrade.js7
-rw-r--r--jstests/multiVersion/genericChangeStreams/change_streams_feature_compatibility_version.js10
-rw-r--r--jstests/multiVersion/genericChangeStreams/change_streams_multi_version_cluster.js14
-rw-r--r--jstests/multiVersion/genericChangeStreams/change_streams_multi_version_transaction.js4
-rw-r--r--jstests/multiVersion/genericChangeStreams/change_streams_read_oplog_after_downgrade.js15
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/crash_mongos_against_upgraded_cluster.js35
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js64
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/downgrade_after_rollback_via_refetch.js12
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/downgrade_replset.js10
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/feature_compatibility_version_lagging_secondary.js4
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/initial_sync_last_lts_from_latest.js (renamed from jstests/multiVersion/genericSetFCVUsage/initial_sync_last_stable_from_latest.js)8
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_lts.js (renamed from jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_stable.js)8
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/major_version_upgrade.js2
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/migration_between_mixed_FCV_mixed_version_mongods.js10
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/repair_feature_compatibility_version.js4
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/rollback_last_lts_to_latest.js12
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/rollback_last_stable_to_latest.js12
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_lts.js12
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_stable.js12
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/rsm_topology_change_fcv.js6
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/set_feature_compatibility_version.js148
-rw-r--r--jstests/multiVersion/genericSetFCVUsage/upgrade_downgrade_while_creating_collection.js2
-rw-r--r--jstests/multiVersion/index_signature_fcv.js4
-rw-r--r--jstests/multiVersion/initialize_from_old_node.js2
-rw-r--r--jstests/multiVersion/keystring_index.js27
-rw-r--r--jstests/multiVersion/libs/multi_rs.js2
-rw-r--r--jstests/multiVersion/migration_between_mixed_version_mongods.js32
-rw-r--r--jstests/multiVersion/migration_with_mixed_version_shards_and_disable_resumable_range_deleter.js4
-rw-r--r--jstests/multiVersion/migrations_with_mixed_fcv.js56
-rw-r--r--jstests/multiVersion/minor_version_tags_new_old_new.js2
-rw-r--r--jstests/multiVersion/minor_version_tags_old_new_old.js2
-rw-r--r--jstests/multiVersion/minor_version_upgrade_replset.js2
-rw-r--r--jstests/multiVersion/mixed_replica_set_with_latest_primary.js10
-rw-r--r--jstests/multiVersion/pending_chunk.js3
-rw-r--r--jstests/multiVersion/rename_across_dbs_last_lts_primary.js (renamed from jstests/multiVersion/rename_across_dbs_last_stable_secondary.js)4
-rw-r--r--jstests/multiVersion/rename_across_dbs_last_lts_primary_drop_target.js (renamed from jstests/multiVersion/rename_across_dbs_last_stable_primary_drop_target.js)4
-rw-r--r--jstests/multiVersion/rename_across_dbs_last_lts_secondary.js (renamed from jstests/multiVersion/rename_across_dbs_last_stable_primary.js)4
-rw-r--r--jstests/multiVersion/rename_across_dbs_last_lts_secondary_drop_target.js (renamed from jstests/multiVersion/rename_across_dbs_last_stable_secondary_drop_target.js)4
-rw-r--r--jstests/multiVersion/skip_level_upgrade.js4
-rw-r--r--jstests/multiVersion/upgrade_downgrade_cluster.js16
-rw-r--r--jstests/multiVersion/verify_versions_test.js12
-rw-r--r--jstests/noPassthrough/apply_ops_mode.js2
-rw-r--r--jstests/noPassthrough/feature_compatibility_version.js23
-rw-r--r--jstests/noPassthrough/index_downgrade_fcv.js4
-rw-r--r--jstests/noPassthrough/resumable_index_build_downgrade.js2
-rw-r--r--jstests/noPassthrough/validate_hook_resume_fcv_upgrade.js40
-rw-r--r--jstests/noPassthroughWithMongod/isMaster_feature_compatibility_version.js6
-rw-r--r--jstests/replsets/awaitable_ismaster_fcv_change.js16
-rw-r--r--jstests/replsets/fcv_retryable_write_concern.js6
-rw-r--r--jstests/replsets/initial_sync_fcv.js6
-rw-r--r--jstests/replsets/initial_sync_fcv_downgrade.js20
-rw-r--r--jstests/replsets/initial_sync_fcv_upgrade.js2
-rw-r--r--jstests/replsets/noop_writes_wait_for_write_concern_fcv.js4
-rw-r--r--jstests/replsets/quiesce_mode_turned_off_in_fcv_44.js2
-rw-r--r--jstests/replsets/reconfig_prohibits_w0.js2
-rw-r--r--jstests/replsets/rollback_set_fcv.js18
-rw-r--r--jstests/replsets/trigger_initial_stable_checkpoint.js2
-rw-r--r--jstests/sharding/autodiscover_config_rs_from_secondary.js6
-rw-r--r--jstests/sharding/autosplit_include.js2
-rw-r--r--jstests/sharding/config_rs_change.js6
-rw-r--r--jstests/sharding/convert_to_and_from_sharded.js6
-rw-r--r--jstests/sharding/database_versioning_all_commands.js2
-rw-r--r--jstests/sharding/empty_cluster_init.js2
-rw-r--r--jstests/sharding/kill_sessions.js2
-rw-r--r--jstests/sharding/libs/last_lts_mongod_commands.js (renamed from jstests/sharding/libs/last_stable_mongod_commands.js)0
-rw-r--r--jstests/sharding/libs/last_lts_mongos_commands.js (renamed from jstests/sharding/libs/last_stable_mongos_commands.js)2
-rw-r--r--jstests/sharding/max_time_ms_sharded_new_commands.js6
-rw-r--r--jstests/sharding/mongos_wait_csrs_initiate.js6
-rw-r--r--jstests/sharding/read_write_concern_defaults_application.js2
-rw-r--r--jstests/sharding/safe_secondary_reads_drop_recreate.js2
-rw-r--r--jstests/sharding/safe_secondary_reads_single_migration_suspend_range_deletion.js2
-rw-r--r--jstests/sharding/safe_secondary_reads_single_migration_waitForDelete.js2
-rw-r--r--jstests/sharding/shard_existing_coll_chunk_count.js4
-rw-r--r--jstests/sharding/test_stacked_migration_cleanup.js2
-rw-r--r--jstests/sharding/transient_txn_error_labels_with_write_concern.js2
-rw-r--r--src/mongo/db/repl/initial_syncer.cpp2
-rw-r--r--src/mongo/db/repl/initial_syncer_test.cpp90
-rw-r--r--src/mongo/rpc/protocol_test.cpp24
-rw-r--r--src/mongo/shell/feature_compatibility_version.js14
-rw-r--r--src/mongo/shell/replsettest.js28
-rw-r--r--src/mongo/shell/servers.js4
-rw-r--r--src/mongo/shell/shardingtest.js38
-rw-r--r--src/mongo/shell/utils.js4
108 files changed, 599 insertions, 624 deletions
diff --git a/buildscripts/evergreen_gen_multiversion_tests.py b/buildscripts/evergreen_gen_multiversion_tests.py
index 8687cc617a9..888b3c00c90 100755
--- a/buildscripts/evergreen_gen_multiversion_tests.py
+++ b/buildscripts/evergreen_gen_multiversion_tests.py
@@ -19,8 +19,7 @@ from evergreen.api import RetryingEvergreenApi, EvergreenApi
from shrub.v2 import ShrubProject, FunctionCall, Task, TaskDependency, BuildVariant, ExistingTask
from buildscripts.resmokelib import config as _config
-from buildscripts.resmokelib.multiversionconstants import (LAST_STABLE_MONGO_BINARY,
- REQUIRES_FCV_TAG)
+from buildscripts.resmokelib.multiversionconstants import (LAST_LTS_MONGO_BINARY, REQUIRES_FCV_TAG)
import buildscripts.resmokelib.parser
import buildscripts.util.taskname as taskname
from buildscripts.util.fileops import write_file_to_dir
@@ -88,11 +87,11 @@ def get_multiversion_resmoke_args(is_sharded: bool) -> str:
return "--numReplSetNodes=3 --linearChain=on "
-def get_backports_required_last_stable_hash(task_path_suffix: str):
- """Parse the last-stable shell binary to get the commit hash."""
- last_stable_shell_exec = os.path.join(task_path_suffix, LAST_STABLE_MONGO_BINARY)
- shell_version = check_output([last_stable_shell_exec, "--version"]).decode('utf-8')
- last_stable_commit_hash = ""
+def get_backports_required_last_lts_hash(task_path_suffix: str):
+ """Parse the last-lts shell binary to get the commit hash."""
+ last_lts_shell_exec = os.path.join(task_path_suffix, LAST_LTS_MONGO_BINARY)
+ shell_version = check_output([last_lts_shell_exec, "--version"]).decode('utf-8')
+ last_lts_commit_hash = ""
for line in shell_version.splitlines():
if "gitVersion" in line:
version_line = line.split(':')[1]
@@ -101,31 +100,29 @@ def get_backports_required_last_stable_hash(task_path_suffix: str):
if result:
commit_hash = result.group().strip('"')
if not commit_hash.isalnum():
- raise ValueError(f"Error parsing last-stable commit hash. Expected an "
+ raise ValueError(f"Error parsing last-lts commit hash. Expected an "
f"alpha-numeric string but got: {commit_hash}")
return commit_hash
else:
break
- raise ValueError("Could not find a valid commit hash from the last-stable mongo binary.")
+ raise ValueError("Could not find a valid commit hash from the last-lts mongo binary.")
-def get_last_stable_yaml(last_stable_commit_hash, suite_name):
- """Download BACKPORTS_REQUIRED_FILE from the last stable commit and return the yaml."""
- LOGGER.info(
- f"Downloading file from commit hash of last-stable branch {last_stable_commit_hash}")
+def get_last_lts_yaml(last_lts_commit_hash, suite_name):
+ """Download BACKPORTS_REQUIRED_FILE from the last LTS commit and return the yaml."""
+ LOGGER.info(f"Downloading file from commit hash of last-lts branch {last_lts_commit_hash}")
response = requests.get(
- f'{BACKPORTS_REQUIRED_BASE_URL}/{last_stable_commit_hash}/{ETC_DIR}/{BACKPORTS_REQUIRED_FILE}'
- )
+ f'{BACKPORTS_REQUIRED_BASE_URL}/{last_lts_commit_hash}/{ETC_DIR}/{BACKPORTS_REQUIRED_FILE}')
# If the response was successful, no exception will be raised.
response.raise_for_status()
- last_stable_file = f"{last_stable_commit_hash}_{BACKPORTS_REQUIRED_FILE}"
+ last_lts_file = f"{last_lts_commit_hash}_{BACKPORTS_REQUIRED_FILE}"
temp_dir = tempfile.mkdtemp()
- with open(os.path.join(temp_dir, last_stable_file), "w") as fileh:
+ with open(os.path.join(temp_dir, last_lts_file), "w") as fileh:
fileh.write(response.text)
- backports_required_last_stable = generate_resmoke.read_yaml(temp_dir, last_stable_file)
- return backports_required_last_stable[suite_name]
+ backports_required_last_lts = generate_resmoke.read_yaml(temp_dir, last_lts_file)
+ return backports_required_last_lts[suite_name]
def get_exclude_files(suite_name, task_path_suffix):
@@ -141,18 +138,18 @@ def get_exclude_files(suite_name, task_path_suffix):
LOGGER.info(f"No tests need to be excluded from suite '{suite_name}'.")
return set()
- # Get the state of the backports_required_for_multiversion_tests.yml file for the last-stable
- # binary we are running tests against. We do this by using the commit hash from the last-stable
+ # Get the state of the backports_required_for_multiversion_tests.yml file for the last-lts
+ # binary we are running tests against. We do this by using the commit hash from the last-lts
# mongo shell executable.
- last_stable_commit_hash = get_backports_required_last_stable_hash(task_path_suffix)
+ last_lts_commit_hash = get_backports_required_last_lts_hash(task_path_suffix)
- # Get the yaml contents under the 'suite_name' key from the last-stable commit.
- last_stable_suite_yaml = get_last_stable_yaml(last_stable_commit_hash, suite_name)
- if last_stable_suite_yaml is None:
+ # Get the yaml contents under the 'suite_name' key from the last-lts commit.
+ last_lts_suite_yaml = get_last_lts_yaml(last_lts_commit_hash, suite_name)
+ if last_lts_suite_yaml is None:
return set(elem["test_file"] for elem in latest_suite_yaml)
else:
return set(
- elem["test_file"] for elem in latest_suite_yaml if elem not in last_stable_suite_yaml)
+ elem["test_file"] for elem in latest_suite_yaml if elem not in last_lts_suite_yaml)
def _generate_resmoke_args(suite_file: str, mixed_version_config: str, is_sharded: bool, options,
@@ -414,7 +411,7 @@ def generate_exclude_yaml(suite: str, task_path_suffix: str, is_generated_suite:
Update the given multiversion suite configuration yaml to exclude tests.
Compares the BACKPORTS_REQUIRED_FILE on the current branch with the same file on the
- last-stable branch to determine which tests should be blacklisted.
+ last-lts branch to determine which tests should be blacklisted.
"""
enable_logging()
diff --git a/buildscripts/resmokeconfig/suites/multiversion.yml b/buildscripts/resmokeconfig/suites/multiversion.yml
index 54cf938c662..94653715e7d 100644
--- a/buildscripts/resmokeconfig/suites/multiversion.yml
+++ b/buildscripts/resmokeconfig/suites/multiversion.yml
@@ -3,7 +3,7 @@ test_kind: js_test
selector:
roots:
- jstests/multiVersion/**/*.js
- - src/mongo/db/modules/*/jstests/hot_backups/*last_stable*.js
+ - src/mongo/db/modules/*/jstests/hot_backups/*last_lts*.js
exclude_files:
# Do not execute files with helper functions.
- jstests/multiVersion/libs/*.js
diff --git a/buildscripts/resmokeconfig/suites/no_passthrough.yml b/buildscripts/resmokeconfig/suites/no_passthrough.yml
index 6697b427266..aea44a144a9 100644
--- a/buildscripts/resmokeconfig/suites/no_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/no_passthrough.yml
@@ -11,7 +11,7 @@ selector:
# Disable inmem_full as per SERVER-27014
- jstests/noPassthrough/inmem_full.js
# Multiversion backup-restore tests must run in the multiversion suite.
- - src/mongo/db/modules/*/jstests/hot_backups/*last_stable*.js
+ - src/mongo/db/modules/*/jstests/hot_backups/*last_lts*.js
# noPassthrough tests start their own mongod's.
executor:
diff --git a/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml b/buildscripts/resmokeconfig/suites/sharding_last_lts_mongos_and_mixed_shards.yml
index e5ab6977777..5decbc32f9c 100644
--- a/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_last_lts_mongos_and_mixed_shards.yml
@@ -15,13 +15,13 @@ selector:
# SERVER-33683: We added a restriction on using an aggregation within a transaction against
# mongos. This should be removed and the test can be adjusted and re-added to this passthrough.
- jstests/sharding/aggregations_in_session.js
- # Enable when SERVER-43860 is backported by BACKPORT-5471 or 4.4 becomes last-stable
+ # Enable when SERVER-43860 is backported by BACKPORT-5471 or 4.4 becomes last-lts
- jstests/sharding/agg_merge_hashed.js
- jstests/sharding/merge_from_stale_mongos.js
- jstests/sharding/query/merge_stale_on_fields.js
- jstests/sharding/refresh_sessions.js
- jstests/sharding/query/lookup.js
- # Enable when 4.4 becomes last stable
+ # Enable when 4.4 becomes last-lts
- jstests/sharding/query/out_fails_to_replace_sharded_collection.js
- jstests/sharding/merge_from_stale_mongos.js
- jstests/sharding/migration_coordinator_basic.js
@@ -30,7 +30,7 @@ selector:
- jstests/sharding/test_stacked_migration_cleanup.js
- jstests/sharding/kill_pinned_cursor.js
- jstests/sharding/killop.js
- # Enable when 4.6 becomes last stable
+ # Enable when 4.6 becomes last-lts
- jstests/sharding/mongos_dataSize.js
# Enable when SERVER-44733 is backported
- jstests/sharding/change_streams_update_lookup_shard_metadata_missing.js
@@ -49,7 +49,7 @@ executor:
shell_options:
global_vars:
TestData:
- mongosBinVersion: 'last-stable'
+ mongosBinVersion: 'last-lts'
shardMixedBinVersions: true
skipCheckingUUIDsConsistentAcrossCluster: true
nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/sharding_multiversion.yml b/buildscripts/resmokeconfig/suites/sharding_multiversion.yml
index 51b319ab900..112ac51f24b 100644
--- a/buildscripts/resmokeconfig/suites/sharding_multiversion.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_multiversion.yml
@@ -20,4 +20,4 @@ executor:
global_vars:
TestData:
useRandomBinVersionsWithinReplicaSet: true
- mongosBinVersion: 'last-stable'
+ mongosBinVersion: 'last-lts'
diff --git a/buildscripts/resmokelib/core/programs.py b/buildscripts/resmokelib/core/programs.py
index d18f5d9ac70..094fbf89d2a 100644
--- a/buildscripts/resmokelib/core/programs.py
+++ b/buildscripts/resmokelib/core/programs.py
@@ -12,8 +12,8 @@ from buildscripts.resmokelib import config
from buildscripts.resmokelib import utils
from buildscripts.resmokelib.core import jasper_process
from buildscripts.resmokelib.core import process
-from buildscripts.resmokelib.multiversionconstants import LAST_STABLE_MONGOD_BINARY
-from buildscripts.resmokelib.multiversionconstants import LAST_STABLE_MONGOS_BINARY
+from buildscripts.resmokelib.multiversionconstants import LAST_LTS_MONGOD_BINARY
+from buildscripts.resmokelib.multiversionconstants import LAST_LTS_MONGOS_BINARY
# The below parameters define the default 'logComponentVerbosity' object passed to mongod processes
# started either directly via resmoke or those that will get started by the mongo shell. We allow
@@ -27,9 +27,7 @@ DEFAULT_MONGOD_LOG_COMPONENT_VERBOSITY = {
"replication": {"rollback": 2}, "sharding": {"migration": 2}, "transaction": 4
}
-DEFAULT_LAST_STABLE_MONGOD_LOG_COMPONENT_VERBOSITY = {
- "replication": {"rollback": 2}, "transaction": 4
-}
+DEFAULT_LAST_LTS_MONGOD_LOG_COMPONENT_VERBOSITY = {"replication": {"rollback": 2}, "transaction": 4}
# The default verbosity setting for any mongod processes running in Evergreen i.e. started with an Evergreen
# task id.
@@ -38,9 +36,9 @@ DEFAULT_EVERGREEN_MONGOD_LOG_COMPONENT_VERBOSITY = {
"sharding": {"migration": 2}, "storage": {"recovery": 2}, "transaction": 4
}
-# The default verbosity setting for any last stable mongod processes running in Evergreen i.e. started
+# The default verbosity setting for any last-lts mongod processes running in Evergreen i.e. started
# with an Evergreen task id.
-DEFAULT_EVERGREEN_LAST_STABLE_MONGOD_LOG_COMPONENT_VERBOSITY = {
+DEFAULT_EVERGREEN_LAST_LTS_MONGOD_LOG_COMPONENT_VERBOSITY = {
"replication": {"election": 4, "heartbeats": 2, "initialSync": 2, "rollback": 2},
"storage": {"recovery": 2}, "transaction": 4
}
@@ -86,11 +84,11 @@ def default_mongod_log_component_verbosity():
return DEFAULT_MONGOD_LOG_COMPONENT_VERBOSITY
-def default_last_stable_mongod_log_component_verbosity():
- """Return the default 'logComponentVerbosity' value to use for last stable mongod processes."""
+def default_last_lts_mongod_log_component_verbosity():
+ """Return the default 'logComponentVerbosity' value to use for last-lts mongod processes."""
if config.EVERGREEN_TASK_ID:
- return DEFAULT_EVERGREEN_LAST_STABLE_MONGOD_LOG_COMPONENT_VERBOSITY
- return DEFAULT_LAST_STABLE_MONGOD_LOG_COMPONENT_VERBOSITY
+ return DEFAULT_EVERGREEN_LAST_LTS_MONGOD_LOG_COMPONENT_VERBOSITY
+ return DEFAULT_LAST_LTS_MONGOD_LOG_COMPONENT_VERBOSITY
def default_mongos_log_component_verbosity():
@@ -102,8 +100,8 @@ def default_mongos_log_component_verbosity():
def get_default_log_component_verbosity_for_mongod(executable):
"""Return the correct default 'logComponentVerbosity' value for the executable version."""
- if executable == LAST_STABLE_MONGOD_BINARY:
- return default_last_stable_mongod_log_component_verbosity()
+ if executable == LAST_LTS_MONGOD_BINARY:
+ return default_last_lts_mongod_log_component_verbosity()
return default_mongod_log_component_verbosity()
@@ -157,7 +155,7 @@ def mongod_program( # pylint: disable=too-many-branches,too-many-statements
# Set coordinateCommitReturnImmediatelyAfterPersistingDecision to false so that tests do
# not need to rely on causal consistency or explicity wait for the transaction to finish
# committing.
- if executable != LAST_STABLE_MONGOD_BINARY and \
+ if executable != LAST_LTS_MONGOD_BINARY and \
"coordinateCommitReturnImmediatelyAfterPersistingDecision" not in suite_set_parameters:
suite_set_parameters["coordinateCommitReturnImmediatelyAfterPersistingDecision"] = False
@@ -189,7 +187,7 @@ def mongod_program( # pylint: disable=too-many-branches,too-many-statements
# TODO(SERVER-47797): Remove reference to waitForStepDownOnNonCommandShutdown.
if ("replSet" in kwargs and "waitForStepDownOnNonCommandShutdown" not in suite_set_parameters
and "shutdownTimeoutMillisForSignaledShutdown" not in suite_set_parameters):
- if executable == LAST_STABLE_MONGOD_BINARY:
+ if executable == LAST_LTS_MONGOD_BINARY:
suite_set_parameters["waitForStepDownOnNonCommandShutdown"] = False
else:
suite_set_parameters["shutdownTimeoutMillisForSignaledShutdown"] = 100
@@ -203,8 +201,8 @@ def mongod_program( # pylint: disable=too-many-branches,too-many-statements
"mode": "alwaysOn", "data": {"numTickets": config.FLOW_CONTROL_TICKETS}
}
- # TODO(SERVER-48645): Only keep the else block once v4.4 is not longer the last stable version
- if executable == LAST_STABLE_MONGOD_BINARY:
+ # TODO(SERVER-48645): Only keep the else block once v4.4 is not longer the last-lts version
+ if executable == LAST_LTS_MONGOD_BINARY:
suite_set_parameters.setdefault("enableTestCommands", True)
else:
_add_testing_set_parameters(suite_set_parameters)
@@ -285,8 +283,8 @@ def mongos_program(logger, executable=None, process_kwargs=None, **kwargs):
if "logComponentVerbosity" not in suite_set_parameters:
suite_set_parameters["logComponentVerbosity"] = default_mongos_log_component_verbosity()
- # TODO(SERVER-48645): Only keep the else block once v4.4 is not longer the last stable version
- if executable == LAST_STABLE_MONGOS_BINARY:
+ # TODO(SERVER-48645): Only keep the else block once v4.4 is not longer the last-lts version
+ if executable == LAST_LTS_MONGOS_BINARY:
suite_set_parameters.setdefault("enableTestCommands", True)
else:
_add_testing_set_parameters(suite_set_parameters)
diff --git a/buildscripts/resmokelib/multiversionconstants.py b/buildscripts/resmokelib/multiversionconstants.py
index 4a524c5f0b4..8932219038c 100644
--- a/buildscripts/resmokelib/multiversionconstants.py
+++ b/buildscripts/resmokelib/multiversionconstants.py
@@ -1,10 +1,10 @@
"""FCV and Server binary version constants used for multiversion testing."""
-LAST_STABLE_BIN_VERSION = "4.4"
-LAST_STABLE_FCV = "4.4"
+LAST_LTS_BIN_VERSION = "4.4"
+LAST_LTS_FCV = "4.4"
LATEST_FCV = "4.5.1"
-LAST_STABLE_MONGO_BINARY = "mongo-" + LAST_STABLE_BIN_VERSION
-LAST_STABLE_MONGOD_BINARY = "mongod-" + LAST_STABLE_BIN_VERSION
-LAST_STABLE_MONGOS_BINARY = "mongos-" + LAST_STABLE_BIN_VERSION
+LAST_LTS_MONGO_BINARY = "mongo-" + LAST_LTS_BIN_VERSION
+LAST_LTS_MONGOD_BINARY = "mongod-" + LAST_LTS_BIN_VERSION
+LAST_LTS_MONGOS_BINARY = "mongos-" + LAST_LTS_BIN_VERSION
REQUIRES_FCV_TAG = "requires_fcv_46"
diff --git a/buildscripts/resmokelib/run/__init__.py b/buildscripts/resmokelib/run/__init__.py
index 874b9c7beb9..f85cd431782 100644
--- a/buildscripts/resmokelib/run/__init__.py
+++ b/buildscripts/resmokelib/run/__init__.py
@@ -804,7 +804,7 @@ class RunPlugin(PluginInterface):
metavar="version1-version2-..-versionN",
help="Runs the test with the provided replica set"
" binary version configuration. Specify 'old-new' to configure a replica set with a"
- " 'last-stable' version primary and 'latest' version secondary. For a sharded cluster"
+ " 'last-lts' version primary and 'latest' version secondary. For a sharded cluster"
" with two shards and two replica set nodes each, specify 'old-new-old-new'.")
parser.add_argument(
diff --git a/buildscripts/resmokelib/testing/fixtures/interface.py b/buildscripts/resmokelib/testing/fixtures/interface.py
index 3bff66d76c3..b0daebfd415 100644
--- a/buildscripts/resmokelib/testing/fixtures/interface.py
+++ b/buildscripts/resmokelib/testing/fixtures/interface.py
@@ -45,9 +45,9 @@ class Fixture(object, metaclass=registry.make_registry_metaclass(_FIXTURES)):
# is defined for all subclasses of Fixture.
REGISTERED_NAME = "Fixture"
- _LAST_STABLE_FCV = multiversion.LAST_STABLE_FCV
+ _LAST_LTS_FCV = multiversion.LAST_LTS_FCV
_LATEST_FCV = multiversion.LATEST_FCV
- _LAST_STABLE_BIN_VERSION = multiversion.LAST_STABLE_BIN_VERSION
+ _LAST_LTS_BIN_VERSION = multiversion.LAST_LTS_BIN_VERSION
def __init__(self, logger, job_num, dbpath_prefix=None):
"""Initialize the fixture with a logger instance."""
diff --git a/buildscripts/resmokelib/testing/fixtures/replicaset.py b/buildscripts/resmokelib/testing/fixtures/replicaset.py
index c9f0da849cc..0dc25d9c0cd 100644
--- a/buildscripts/resmokelib/testing/fixtures/replicaset.py
+++ b/buildscripts/resmokelib/testing/fixtures/replicaset.py
@@ -11,7 +11,7 @@ from buildscripts.resmokelib import config
from buildscripts.resmokelib import errors
from buildscripts.resmokelib import logging
from buildscripts.resmokelib import utils
-from buildscripts.resmokelib.multiversionconstants import LAST_STABLE_MONGOD_BINARY
+from buildscripts.resmokelib.multiversionconstants import LAST_LTS_MONGOD_BINARY
from buildscripts.resmokelib.testing.fixtures import interface
from buildscripts.resmokelib.testing.fixtures import replicaset_utils
from buildscripts.resmokelib.testing.fixtures import standalone
@@ -64,13 +64,13 @@ class ReplicaSetFixture(interface.ReplFixture): # pylint: disable=too-many-inst
mongod_executable = utils.default_if_none(config.MONGOD_EXECUTABLE,
config.DEFAULT_MONGOD_EXECUTABLE)
latest_mongod = mongod_executable
- # The last-stable binary is currently expected to live in '/data/multiversion', which is
+ # The last-lts binary is currently expected to live in '/data/multiversion', which is
# part of the PATH.
is_config_svr = "configsvr" in self.replset_config_options and self.replset_config_options[
"configsvr"]
if not is_config_svr:
self.mixed_bin_versions = [
- latest_mongod if (x == "new") else LAST_STABLE_MONGOD_BINARY
+ latest_mongod if (x == "new") else LAST_LTS_MONGOD_BINARY
for x in self.mixed_bin_versions
]
else:
@@ -122,7 +122,7 @@ class ReplicaSetFixture(interface.ReplFixture): # pylint: disable=too-many-inst
for i in range(self.num_nodes):
steady_state_constraint_param = "oplogApplicationEnforcesSteadyStateConstraints"
- # TODO (SERVER-47813): Set steady state constraint parameters on last-stable nodes.
+ # TODO (SERVER-47813): Set steady state constraint parameters on last-lts nodes.
if (steady_state_constraint_param not in self.nodes[i].mongod_options["set_parameters"]
and self.mixed_bin_versions is not None
and self.mixed_bin_versions[i] == "new"):
@@ -222,12 +222,12 @@ class ReplicaSetFixture(interface.ReplFixture): # pylint: disable=too-many-inst
raise errors.ServerFailure(msg)
# Initiating a replica set with a single node will use "latest" FCV. This will
- # cause IncompatibleServerVersion errors if additional "last-stable" binary version
+ # cause IncompatibleServerVersion errors if additional "last-lts" binary version
# nodes are subsequently added to the set, since such nodes cannot set their FCV to
- # "latest". Therefore, we make sure the primary is "last-stable" FCV before adding in
+ # "latest". Therefore, we make sure the primary is "last-lts" FCV before adding in
# nodes of different binary versions to the replica set.
client.admin.command(
- {"setFeatureCompatibilityVersion": ReplicaSetFixture._LAST_STABLE_FCV})
+ {"setFeatureCompatibilityVersion": ReplicaSetFixture._LAST_LTS_FCV})
if self.nodes[1:]:
# Wait to connect to each of the secondaries before running the replSetReconfig
diff --git a/buildscripts/resmokelib/testing/fixtures/shardedcluster.py b/buildscripts/resmokelib/testing/fixtures/shardedcluster.py
index b5549ad9abc..4957f462b6b 100644
--- a/buildscripts/resmokelib/testing/fixtures/shardedcluster.py
+++ b/buildscripts/resmokelib/testing/fixtures/shardedcluster.py
@@ -11,7 +11,7 @@ from buildscripts.resmokelib import core
from buildscripts.resmokelib import errors
from buildscripts.resmokelib import logging
from buildscripts.resmokelib import utils
-from buildscripts.resmokelib.multiversionconstants import LAST_STABLE_MONGOS_BINARY
+from buildscripts.resmokelib.multiversionconstants import LAST_LTS_MONGOS_BINARY
from buildscripts.resmokelib.testing.fixtures import interface
from buildscripts.resmokelib.testing.fixtures import replicaset
from buildscripts.resmokelib.testing.fixtures import standalone
@@ -343,9 +343,9 @@ class ShardedClusterFixture(interface.Fixture): # pylint: disable=too-many-inst
mongos_options = self.mongos_options.copy()
mongos_options["configdb"] = self.configsvr.get_internal_connection_string()
- # The last-stable binary is currently expected to live in '/data/multiversion', which is
+ # The last-lts binary is currently expected to live in '/data/multiversion', which is
# part of the PATH.
- mongos_executable = self.mongos_executable if self.mixed_bin_versions is None else LAST_STABLE_MONGOS_BINARY
+ mongos_executable = self.mongos_executable if self.mixed_bin_versions is None else LAST_LTS_MONGOS_BINARY
return _MongoSFixture(mongos_logger, self.job_num, dbpath_prefix=self._dbpath_prefix,
mongos_executable=mongos_executable, mongos_options=mongos_options)
diff --git a/buildscripts/tests/test_burn_in_tests_multiversion.py b/buildscripts/tests/test_burn_in_tests_multiversion.py
index d23e19b906b..3a334a7fce0 100644
--- a/buildscripts/tests/test_burn_in_tests_multiversion.py
+++ b/buildscripts/tests/test_burn_in_tests_multiversion.py
@@ -128,7 +128,7 @@ class TestCreateMultiversionGenerateTasksConfig(unittest.TestCase):
# We should not generate any tasks that are not part of the burn_in_multiversion suite.
self.assertEqual(0, len(evg_config_dict["tasks"]))
- @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_stable_hash")
+ @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_lts_hash")
def test_one_task_one_test(self, mock_hash):
mock_hash.return_value = MONGO_4_2_HASH
n_tasks = 1
@@ -145,7 +145,7 @@ class TestCreateMultiversionGenerateTasksConfig(unittest.TestCase):
tasks = evg_config_dict["tasks"]
self.assertEqual(len(tasks), NUM_REPL_MIXED_VERSION_CONFIGS * n_tests)
- @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_stable_hash")
+ @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_lts_hash")
def test_n_task_one_test(self, mock_hash):
mock_hash.return_value = MONGO_4_2_HASH
n_tasks = 2
@@ -164,7 +164,7 @@ class TestCreateMultiversionGenerateTasksConfig(unittest.TestCase):
len(tasks),
(NUM_REPL_MIXED_VERSION_CONFIGS + NUM_SHARDED_MIXED_VERSION_CONFIGS) * n_tests)
- @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_stable_hash")
+ @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_lts_hash")
def test_one_task_n_test(self, mock_hash):
mock_hash.return_value = MONGO_4_2_HASH
n_tasks = 1
@@ -181,7 +181,7 @@ class TestCreateMultiversionGenerateTasksConfig(unittest.TestCase):
tasks = evg_config_dict["tasks"]
self.assertEqual(len(tasks), NUM_REPL_MIXED_VERSION_CONFIGS * n_tests)
- @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_stable_hash")
+ @patch("buildscripts.evergreen_gen_multiversion_tests.get_backports_required_last_lts_hash")
def test_n_task_m_test(self, mock_hash):
mock_hash.return_value = MONGO_4_2_HASH
n_tasks = 2
diff --git a/etc/backports_required_for_multiversion_tests.yml b/etc/backports_required_for_multiversion_tests.yml
index b65a00a46e5..ec17e667f54 100644
--- a/etc/backports_required_for_multiversion_tests.yml
+++ b/etc/backports_required_for_multiversion_tests.yml
@@ -1,11 +1,11 @@
# This file is intended to track tests that should be blacklisted from multiversion testing due to
-# changes that have not yet been backported to the last-stable development branch.
+# changes that have not yet been backported to the last-lts development branch.
#
# Usage:
# Add the server ticket number and the path to the test file for the test you intend to blacklist
# under the appropriate suite. Any test in a (ticket, test_file) pair that appears in this file but
-# not in the last-stable branch version of this file indicates that a commit has not yet been
-# backported to the last-stable branch and will be excluded from the multiversion suite
+# not in the last-lts branch version of this file indicates that a commit has not yet been
+# backported to the last-lts branch and will be excluded from the multiversion suite
# corresponding to the root level suite key.
#
# Example:
@@ -15,7 +15,7 @@
#
# The above example will blacklist jstests/core/my_test_file.js from the
# 'replica_sets_multiversion_gen' task until this file has been updated with the same
-# (ticket, test_file) pair on the last-stable branch.
+# (ticket, test_file) pair on the last-lts branch.
#
# Note:
# For tests that need to be blacklisted for the 'replica_sets_multiversion' and
diff --git a/etc/evergreen.yml b/etc/evergreen.yml
index fd411e34731..d3cd6bc06aa 100644
--- a/etc/evergreen.yml
+++ b/etc/evergreen.yml
@@ -6772,7 +6772,7 @@ tasks:
resmoke_args: --storageEngine=wiredTiger
fallback_num_sub_suites: 31
-- name: sharding_last_stable_mongos_and_mixed_shards_gen
+- name: sharding_last_lts_mongos_and_mixed_shards_gen
tags: ["sharding", "common", "multiversion"]
commands:
- func: "generate resmoke tasks"
diff --git a/jstests/core/mixed_version_replica_set.js b/jstests/core/mixed_version_replica_set.js
index a370ab52333..9fcf07a621b 100644
--- a/jstests/core/mixed_version_replica_set.js
+++ b/jstests/core/mixed_version_replica_set.js
@@ -8,7 +8,7 @@
"use strict";
const latestBinVersion = MongoRunner.getBinVersionFor("latest");
-const lastStableBinVersion = MongoRunner.getBinVersionFor("last-stable");
+const lastLTSBinVersion = MongoRunner.getBinVersionFor("last-lts");
if (testingReplication && TestData && TestData.mixedBinVersions) {
const replSetStatus = db.adminCommand({"replSetGetStatus": 1});
@@ -20,7 +20,7 @@ if (testingReplication && TestData && TestData.mixedBinVersions) {
const serverStatus = admin.serverStatus();
const actualVersion = serverStatus["version"];
const expectedVersion =
- TestData.mixedBinVersions[i] === "new" ? latestBinVersion : lastStableBinVersion;
+ TestData.mixedBinVersions[i] === "new" ? latestBinVersion : lastLTSBinVersion;
assert(MongoRunner.areBinVersionsTheSame(actualVersion, expectedVersion));
}
} else {
diff --git a/jstests/core/txns/abort_unprepared_transactions_on_FCV_downgrade.js b/jstests/core/txns/abort_unprepared_transactions_on_FCV_downgrade.js
index 1a778cd69c2..bee856d5e62 100644
--- a/jstests/core/txns/abort_unprepared_transactions_on_FCV_downgrade.js
+++ b/jstests/core/txns/abort_unprepared_transactions_on_FCV_downgrade.js
@@ -31,8 +31,8 @@ try {
ErrorCodes.MaxTimeMSExpired);
jsTestLog("Downgrade the featureCompatibilityVersion.");
- assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(adminDB, lastStableFCV);
+ assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(adminDB, lastLTSFCV);
jsTestLog("Drop the collection. This should succeed, since the transaction was aborted.");
assert.commandWorked(testDB.runCommand({drop: collName}));
diff --git a/jstests/core/txns/await_prepared_transactions_on_FCV_downgrade.js b/jstests/core/txns/await_prepared_transactions_on_FCV_downgrade.js
index dd4e8cd21ee..4999ed1dfc8 100644
--- a/jstests/core/txns/await_prepared_transactions_on_FCV_downgrade.js
+++ b/jstests/core/txns/await_prepared_transactions_on_FCV_downgrade.js
@@ -34,9 +34,8 @@ try {
{configureFailPoint: "failNonIntentLocksIfWaitNeeded", mode: "alwaysOn"}));
jsTestLog("Attempt to downgrade the featureCompatibilityVersion.");
- assert.commandFailedWithCode(
- testDB.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}),
- ErrorCodes.LockTimeout);
+ assert.commandFailedWithCode(testDB.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}),
+ ErrorCodes.LockTimeout);
assert.commandWorked(
testDB.adminCommand({configureFailPoint: "failNonIntentLocksIfWaitNeeded", mode: "off"}));
@@ -45,8 +44,8 @@ try {
assert.commandWorked(PrepareHelpers.commitTransaction(session, prepareTimestamp));
jsTestLog("Rerun the setFCV command and let it complete successfully.");
- assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(adminDB, lastStableFCV);
+ assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(adminDB, lastLTSFCV);
} finally {
assert.commandWorked(
diff --git a/jstests/libs/chunk_manipulation_util.js b/jstests/libs/chunk_manipulation_util.js
index 94a9f786b19..8ad1e085030 100644
--- a/jstests/libs/chunk_manipulation_util.js
+++ b/jstests/libs/chunk_manipulation_util.js
@@ -144,7 +144,7 @@ function waitForMoveChunkStep(shardConnection, stepNumber) {
let op = in_progress.next();
inProgressStr += tojson(op);
- // TODO (SERVER-45993): Remove the 4.2 and prior branch once 4.4 becomes last-stable.
+ // TODO (SERVER-45993): Remove the 4.2 and prior branch once 4.4 becomes last-lts.
if ((op.desc && op.desc === "MoveChunk") ||
(op.command && op.command.moveChunk /* required for v4.2 and prior */)) {
// Note: moveChunk in join mode will not have the "step" message. So keep on
@@ -269,7 +269,7 @@ function killRunningMoveChunk(admin) {
if (op.desc && op.desc === "MoveChunk") {
opIdsToKill["MoveChunk"] = op.opid;
}
- // TODO (SERVER-45993): Remove this branch once 4.4 becomes last-stable.
+ // TODO (SERVER-45993): Remove this branch once 4.4 becomes last-lts.
// For 4.2 binaries and prior.
if (op.command && op.command.moveChunk) {
opIdsToKill["moveChunkCommand"] = op.opid;
@@ -280,7 +280,7 @@ function killRunningMoveChunk(admin) {
admin.killOp(opIdsToKill.MoveChunk);
abortedMigration = true;
} else if (opIdsToKill.moveChunkCommand) {
- // TODO (SERVER-45993): Remove this branch once 4.4 becomes last-stable.
+ // TODO (SERVER-45993): Remove this branch once 4.4 becomes last-lts.
admin.killOp(opIdsToKill.moveChunkCommand);
abortedMigration = true;
}
diff --git a/jstests/multiVersion/1_test_launching_replset.js b/jstests/multiVersion/1_test_launching_replset.js
index e9709b6dd2b..e827824c876 100644
--- a/jstests/multiVersion/1_test_launching_replset.js
+++ b/jstests/multiVersion/1_test_launching_replset.js
@@ -3,7 +3,7 @@
//
// Check our latest versions
-var versionsToCheck = ["last-stable", "latest"];
+var versionsToCheck = ["last-lts", "latest"];
load('./jstests/multiVersion/libs/verify_versions.js');
diff --git a/jstests/multiVersion/2_test_launching_cluster.js b/jstests/multiVersion/2_test_launching_cluster.js
index 966d8e3919a..43b5d34b733 100644
--- a/jstests/multiVersion/2_test_launching_cluster.js
+++ b/jstests/multiVersion/2_test_launching_cluster.js
@@ -7,9 +7,9 @@ load('./jstests/multiVersion/libs/verify_versions.js');
(function() {
"use strict";
// Check our latest versions
-var versionsToCheck = ["last-stable", "latest"];
+var versionsToCheck = ["last-lts", "latest"];
var versionsToCheckConfig = ["latest"];
-var versionsToCheckMongos = ["last-stable"];
+var versionsToCheckMongos = ["last-lts"];
jsTest.log("Testing mixed versions...");
diff --git a/jstests/multiVersion/3_upgrade_replset.js b/jstests/multiVersion/3_upgrade_replset.js
index ea8826c1ad7..7f476417255 100644
--- a/jstests/multiVersion/3_upgrade_replset.js
+++ b/jstests/multiVersion/3_upgrade_replset.js
@@ -5,7 +5,7 @@
load('./jstests/multiVersion/libs/multi_rs.js');
load('./jstests/libs/test_background_ops.js');
-var oldVersion = "last-stable";
+var oldVersion = "last-lts";
var nodes = {
n1: {binVersion: oldVersion},
diff --git a/jstests/multiVersion/add_invalid_shard.js b/jstests/multiVersion/add_invalid_shard.js
index 1f9dfc9c40f..699b4cc0717 100644
--- a/jstests/multiVersion/add_invalid_shard.js
+++ b/jstests/multiVersion/add_invalid_shard.js
@@ -15,10 +15,10 @@ assert.commandFailedWithCode(st.admin.runCommand({addshard: st.s.host}),
ErrorCodes.IllegalOperation);
// Can't add a mongod with a lower binary version than our featureCompatibilityVersion.
-var lastStableMongod = MongoRunner.runMongod({binVersion: "last-stable", shardsvr: ""});
-assert.commandFailedWithCode(st.admin.runCommand({addshard: lastStableMongod.host}),
+var lastLTSMongod = MongoRunner.runMongod({binVersion: "last-lts", shardsvr: ""});
+assert.commandFailedWithCode(st.admin.runCommand({addshard: lastLTSMongod.host}),
ErrorCodes.IncompatibleServerVersion);
-MongoRunner.stopMongod(lastStableMongod);
+MongoRunner.stopMongod(lastLTSMongod);
// Can't add config servers as shard.
assert.commandFailed(st.admin.runCommand({addshard: st._configDB}));
diff --git a/jstests/multiVersion/allow_system_views_user_writes_in_fcv_44.js b/jstests/multiVersion/allow_system_views_user_writes_in_fcv_44.js
index f4a60d4141f..d8628615684 100644
--- a/jstests/multiVersion/allow_system_views_user_writes_in_fcv_44.js
+++ b/jstests/multiVersion/allow_system_views_user_writes_in_fcv_44.js
@@ -20,7 +20,7 @@ const invalidField = {
invalidField: true
};
-assert.commandWorked(db.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(db.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
db.system.views.drop();
assert.commandWorked(db.createCollection("system.views"));
diff --git a/jstests/multiVersion/balancer_multiVersion_detect.js b/jstests/multiVersion/balancer_multiVersion_detect.js
index 0975d557e1c..1e98ec001cd 100644
--- a/jstests/multiVersion/balancer_multiVersion_detect.js
+++ b/jstests/multiVersion/balancer_multiVersion_detect.js
@@ -7,7 +7,7 @@ jsTest.log("Starting cluster...");
var options = {
mongosOptions: {verbose: 1, useLogFiles: true},
configOptions: {},
- shardOptions: {binVersion: ["latest", "last-stable"]},
+ shardOptions: {binVersion: ["latest", "last-lts"]},
enableBalancer: true
};
diff --git a/jstests/multiVersion/delete_orphans_on_upgrade.js b/jstests/multiVersion/delete_orphans_on_upgrade.js
index 638d9ae33d1..0d10bc8bc9c 100644
--- a/jstests/multiVersion/delete_orphans_on_upgrade.js
+++ b/jstests/multiVersion/delete_orphans_on_upgrade.js
@@ -12,10 +12,9 @@ const ns = dbName + "." + collName;
// Create 2 shards with 3 replicas each.
let st = new ShardingTest({shards: {rs0: {nodes: 3}, rs1: {nodes: 3}}});
-jsTestLog("Setting FCV: " + lastStableFCV);
-assert.commandWorked(
- st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(st.shard0.getDB("admin"), lastStableFCV);
+jsTestLog("Setting FCV: " + lastLTSFCV);
+assert.commandWorked(st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
// Create a sharded collection with four chunks: [-inf, 50), [50, 100), [100, 150) [150, inf)
assert.commandWorked(st.s.adminCommand({enableSharding: dbName}));
diff --git a/jstests/multiVersion/delete_pending_range_deletions_on_downgrade.js b/jstests/multiVersion/delete_pending_range_deletions_on_downgrade.js
index 194e7d9c696..c6c926db3e6 100644
--- a/jstests/multiVersion/delete_pending_range_deletions_on_downgrade.js
+++ b/jstests/multiVersion/delete_pending_range_deletions_on_downgrade.js
@@ -42,10 +42,9 @@ assert.commandWorked(deletionsColl.insert(deletionTask));
// Verify deletion count.
assert.eq(deletionsColl.find().itcount(), 1);
-print("setting fcv: " + lastStableFCV);
-assert.commandWorked(
- st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(st.shard0.getDB("admin"), lastStableFCV);
+print("setting fcv: " + lastLTSFCV);
+assert.commandWorked(st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
// Verify deletion count.
assert.eq(deletionsColl.find().itcount(), 0);
diff --git a/jstests/multiVersion/genericChangeStreams/change_streams_feature_compatibility_version.js b/jstests/multiVersion/genericChangeStreams/change_streams_feature_compatibility_version.js
index 01ac768ac55..035f884eaae 100644
--- a/jstests/multiVersion/genericChangeStreams/change_streams_feature_compatibility_version.js
+++ b/jstests/multiVersion/genericChangeStreams/change_streams_feature_compatibility_version.js
@@ -10,7 +10,7 @@ load("jstests/replsets/rslib.js"); // For startSetIfSupportsReadMaj
const rst = new ReplSetTest({
nodes: 2,
- nodeOptions: {binVersion: "last-stable"},
+ nodeOptions: {binVersion: "last-lts"},
});
if (!startSetIfSupportsReadMajority(rst)) {
@@ -33,17 +33,17 @@ assert.soon(() => streamStartedOnOldVersion.hasNext());
let change = streamStartedOnOldVersion.next();
assert.eq(change.operationType, "insert", tojson(change));
assert.eq(change.documentKey._id, "first insert, just for resume token", tojson(change));
-const resumeTokenFromLastStable = change._id;
+const resumeTokenFromLastLTS = change._id;
assert.commandWorked(coll.insert({_id: "before binary upgrade"}));
// Upgrade the set to the new binary version, but keep the feature compatibility version at
-// last-stable.
+// last-lts.
rst.upgradeSet({binVersion: "latest"});
testDB = rst.getPrimary().getDB(jsTestName());
coll = testDB.change_stream_upgrade;
// Test that we can resume the stream on the new binaries.
-streamStartedOnOldVersion = coll.watch([], {resumeAfter: resumeTokenFromLastStable});
+streamStartedOnOldVersion = coll.watch([], {resumeAfter: resumeTokenFromLastLTS});
assert.soon(() => streamStartedOnOldVersion.hasNext());
change = streamStartedOnOldVersion.next();
assert.eq(change.operationType, "insert", tojson(change));
@@ -73,7 +73,7 @@ const streamStartedOnNewVersion = coll.watch();
// Test that we can still resume with the token from the old version. We should see the same
// document again.
-streamStartedOnOldVersion = coll.watch([], {resumeAfter: resumeTokenFromLastStable});
+streamStartedOnOldVersion = coll.watch([], {resumeAfter: resumeTokenFromLastLTS});
assert.soon(() => streamStartedOnOldVersion.hasNext());
change = streamStartedOnOldVersion.next();
assert.eq(change.operationType, "insert", tojson(change));
diff --git a/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_cluster.js b/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_cluster.js
index 0237bf22dff..fd39ec6a299 100644
--- a/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_cluster.js
+++ b/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_cluster.js
@@ -17,17 +17,17 @@ const dbName = "test";
const collName = "change_streams_multi_version_sortkey";
const namespace = dbName + "." + collName;
-// Start a sharded cluster in which all mongod and mongos processes are "last-stable" binVersion. We
+// Start a sharded cluster in which all mongod and mongos processes are "last-lts" binVersion. We
// set "writePeriodicNoops" to write to the oplog every 1 second, which ensures that test change
// streams do not wait for longer than 1 second if one of the shards has no changes to report.
var st = new ShardingTest({
shards: 2,
rs: {
nodes: 2,
- binVersion: "last-stable",
+ binVersion: "last-lts",
setParameter: {writePeriodicNoops: true, periodicNoopIntervalSecs: 1}
},
- other: {mongosOptions: {binVersion: "last-stable"}}
+ other: {mongosOptions: {binVersion: "last-lts"}}
});
let mongosConn = st.s;
@@ -73,7 +73,7 @@ function insertAndValidateChanges(coll, changeStream) {
}
//
-// Open and read a change stream on the "last-stable" cluster.
+// Open and read a change stream on the "last-lts" cluster.
//
let coll = mongosConn.getDB(dbName)[collName];
let resumeToken = insertAndValidateChanges(coll, coll.watch());
@@ -84,14 +84,14 @@ let resumeToken = insertAndValidateChanges(coll, coll.watch());
st.upgradeCluster("latest", {upgradeShards: true, upgradeConfigs: true, upgradeMongos: false});
//
-// Open and read a change stream on the upgraded cluster but still using a "last-stable" version of
-// mongos and "last-stable" for the FCV.
+// Open and read a change stream on the upgraded cluster but still using a "last-lts" version of
+// mongos and "last-lts" for the FCV.
//
resumeToken = insertAndValidateChanges(coll, coll.watch([], {resumeAfter: resumeToken}));
//
// Upgrade mongos to the "latest" binVersion and then open and read a change stream, this time with
-// all cluster nodes upgraded but still in "last-stable" FCV.
+// all cluster nodes upgraded but still in "last-lts" FCV.
//
st.upgradeCluster("latest", {upgradeShards: false, upgradeConfigs: false, upgradeMongos: true});
mongosConn = st.s;
diff --git a/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_transaction.js b/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_transaction.js
index 60a4c939ee0..12a28dabf05 100644
--- a/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_transaction.js
+++ b/jstests/multiVersion/genericChangeStreams/change_streams_multi_version_transaction.js
@@ -1,4 +1,4 @@
-// Test that resume tokens from a replica set running the "last-stable" mongod can be used to resume
+// Test that resume tokens from a replica set running the "last-lts" mongod can be used to resume
// a change stream after upgrading the replica set to the "latest" mongod, even when the change
// stream includes multi-statement transactions.
//
@@ -11,7 +11,7 @@ load("jstests/replsets/rslib.js"); // For startSetIfSupportsReadMaj
const rst = new ReplSetTest({
nodes: 2,
- nodeOptions: {binVersion: "last-stable"},
+ nodeOptions: {binVersion: "last-lts"},
});
if (!startSetIfSupportsReadMajority(rst)) {
diff --git a/jstests/multiVersion/genericChangeStreams/change_streams_read_oplog_after_downgrade.js b/jstests/multiVersion/genericChangeStreams/change_streams_read_oplog_after_downgrade.js
index 19478f346dc..4ea15f02a62 100644
--- a/jstests/multiVersion/genericChangeStreams/change_streams_read_oplog_after_downgrade.js
+++ b/jstests/multiVersion/genericChangeStreams/change_streams_read_oplog_after_downgrade.js
@@ -1,6 +1,6 @@
/**
- * Verifies that a change stream which is resumed on a downgraded last-stable binary does not crash
- * the server, even when reading oplog entries which the last-stable binary may not understand.
+ * Verifies that a change stream which is resumed on a downgraded last-lts binary does not crash
+ * the server, even when reading oplog entries which the last-lts binary may not understand.
*
* @tags: [uses_change_streams, requires_replication]
*/
@@ -220,7 +220,7 @@ function writeOplogEntriesAndCreateResumePointsOnLatestVersion() {
* should be an array and each entry should have fields 'watch', 'resumeToken' and
* 'endSentinelEntry'.
*/
-function resumeStreamsOnLastStableVersion(changeStreams) {
+function resumeStreamsOnLastLTSVersion(changeStreams) {
for (let changeStream of changeStreams) {
jsTestLog("Validating change stream for " + tojson(changeStream));
const csCursor = changeStream.watch({resumeAfter: changeStream.resumeToken});
@@ -252,17 +252,16 @@ function resumeStreamsOnLastStableVersion(changeStreams) {
// cluster has been downgraded.
const changeStreamsToBeValidated = writeOplogEntriesAndCreateResumePointsOnLatestVersion();
-// Downgrade the entire cluster to 'last-stable' binVersion.
-assert.commandWorked(
- st.s.getDB(dbName).adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-st.upgradeCluster("last-stable");
+// Downgrade the entire cluster to 'last-lts' binVersion.
+assert.commandWorked(st.s.getDB(dbName).adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+st.upgradeCluster("last-lts");
// Refresh our reference to the sharded collection post-downgrade.
shardedColl = st.s.getDB(dbName)[collName];
// Resume all the change streams that were created on latest version and validate that the change
// stream doesn't crash the server after downgrade.
-resumeStreamsOnLastStableVersion(changeStreamsToBeValidated);
+resumeStreamsOnLastLTSVersion(changeStreamsToBeValidated);
st.stop();
}());
diff --git a/jstests/multiVersion/genericSetFCVUsage/crash_mongos_against_upgraded_cluster.js b/jstests/multiVersion/genericSetFCVUsage/crash_mongos_against_upgraded_cluster.js
index b99b2a60f4f..6f64b69bf2d 100644
--- a/jstests/multiVersion/genericSetFCVUsage/crash_mongos_against_upgraded_cluster.js
+++ b/jstests/multiVersion/genericSetFCVUsage/crash_mongos_against_upgraded_cluster.js
@@ -10,22 +10,21 @@ TestData.skipCheckingUUIDsConsistentAcrossCluster = true;
(function() {
"use strict";
-const lastStable = "last-stable";
+const lastLTS = "last-lts";
let st = new ShardingTest({mongos: 1, shards: 1});
const ns = "testDB.testColl";
let mongosAdminDB = st.s.getDB("admin");
-// Assert that a mongos using the 'last-stable' binary version will crash when connecting to a
+// Assert that a mongos using the 'last-lts' binary version will crash when connecting to a
// cluster running on the 'latest' binary version with the 'latest' FCV.
-let lastStableMongos =
- MongoRunner.runMongos({configdb: st.configRS.getURL(), binVersion: lastStable});
+let lastLTSMongos = MongoRunner.runMongos({configdb: st.configRS.getURL(), binVersion: lastLTS});
-assert(!lastStableMongos);
+assert(!lastLTSMongos);
-// Assert that a mongos using the 'last-stable' binary version will successfully connect to a
-// cluster running on the 'latest' binary version with the 'last-stable' FCV.
-assert.commandWorked(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+// Assert that a mongos using the 'last-lts' binary version will successfully connect to a
+// cluster running on the 'latest' binary version with the 'last-lts' FCV.
+assert.commandWorked(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// wait until all config server nodes are downgraded
// awaitReplication waits for all slaves to replicate primary's latest opTime which will
@@ -33,27 +32,27 @@ assert.commandWorked(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: l
// change FCV.
st.configRS.awaitReplication();
-lastStableMongos = MongoRunner.runMongos({configdb: st.configRS.getURL(), binVersion: lastStable});
+lastLTSMongos = MongoRunner.runMongos({configdb: st.configRS.getURL(), binVersion: lastLTS});
assert.neq(null,
- lastStableMongos,
- "mongos was unable to start up with binary version=" + lastStable +
- " and connect to FCV=" + lastStableFCV + " cluster");
+ lastLTSMongos,
+ "mongos was unable to start up with binary version=" + lastLTS +
+ " and connect to FCV=" + lastLTSFCV + " cluster");
-// Ensure that the 'lastStable' binary mongos can perform reads and writes to the shards in the
+// Ensure that the 'lastLTS' binary mongos can perform reads and writes to the shards in the
// cluster.
-assert.commandWorked(lastStableMongos.getDB("test").foo.insert({x: 1}));
-let foundDoc = lastStableMongos.getDB("test").foo.findOne({x: 1});
+assert.commandWorked(lastLTSMongos.getDB("test").foo.insert({x: 1}));
+let foundDoc = lastLTSMongos.getDB("test").foo.findOne({x: 1});
assert.neq(null, foundDoc);
assert.eq(1, foundDoc.x, tojson(foundDoc));
-// Assert that the 'lastStable' binary mongos will crash after the cluster is upgraded to
+// Assert that the 'lastLTS' binary mongos will crash after the cluster is upgraded to
// 'latestFCV'.
assert.commandWorked(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: latestFCV}));
let error = assert.throws(function() {
- lastStableMongos.getDB("test").foo.insert({x: 1});
+ lastLTSMongos.getDB("test").foo.insert({x: 1});
});
assert(isNetworkError(error));
-assert(!lastStableMongos.conn);
+assert(!lastLTSMongos.conn);
st.stop();
})();
diff --git a/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js b/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
index addccabd15d..05a0bfef01d 100644
--- a/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
+++ b/jstests/multiVersion/genericSetFCVUsage/do_upgrade_downgrade.js
@@ -9,7 +9,7 @@ load("jstests/libs/check_uuids.js");
load("jstests/libs/check_unique_indexes.js");
const latestBinary = "latest";
-const lastStableBinary = "last-stable";
+const lastLTSBinary = "last-lts";
let setFCV = function(adminDB, version) {
assert.commandWorked(adminDB.runCommand({setFeatureCompatibilityVersion: version}));
@@ -139,7 +139,7 @@ let standaloneTest = function(nodeOptions) {
if (!nodeOptions.hasOwnProperty("shardsvr")) {
// Initially featureCompatibilityVersion is latest except for when we run with shardsvr.
- // We expect featureCompatibilityVersion to be last-stable for shardsvr.
+ // We expect featureCompatibilityVersion to be last-lts for shardsvr.
checkFCV(adminDB, latestFCV);
// Ensure all collections have UUIDs and all unique indexes have new version in latest
@@ -147,12 +147,12 @@ let standaloneTest = function(nodeOptions) {
checkCollectionUUIDs(adminDB);
checkUniqueIndexFormatVersion(adminDB);
- // Set featureCompatibilityVersion to last-stable.
- setFCV(adminDB, lastStableFCV);
+ // Set featureCompatibilityVersion to last-lts.
+ setFCV(adminDB, lastLTSFCV);
}
- // Ensure featureCompatibilityVersion is last-stable and all collections still have UUIDs.
- checkFCV(adminDB, lastStableFCV);
+ // Ensure featureCompatibilityVersion is last-lts and all collections still have UUIDs.
+ checkFCV(adminDB, lastLTSFCV);
checkCollectionUUIDs(adminDB);
// Drop and recreate unique indexes with the older FCV
@@ -161,19 +161,19 @@ let standaloneTest = function(nodeOptions) {
// Stop latest binary version mongod.
MongoRunner.stopMongod(conn);
- // Start last-stable binary version mongod with same dbpath
- jsTest.log("Starting a last-stable binVersion standalone to test downgrade");
- let lastStableConn = startMongodWithVersion(noCleanDataOptions, lastStableBinary);
- let lastStableAdminDB = lastStableConn.getDB("admin");
+ // Start last-lts binary version mongod with same dbpath
+ jsTest.log("Starting a last-lts binVersion standalone to test downgrade");
+ let lastLTSConn = startMongodWithVersion(noCleanDataOptions, lastLTSBinary);
+ let lastLTSAdminDB = lastLTSConn.getDB("admin");
// Check FCV document.
- checkFCV(lastStableAdminDB, lastStableFCV);
+ checkFCV(lastLTSAdminDB, lastLTSFCV);
- // Ensure all collections still have UUIDs on a last-stable mongod.
- checkCollectionUUIDs(lastStableAdminDB);
+ // Ensure all collections still have UUIDs on a last-lts mongod.
+ checkCollectionUUIDs(lastLTSAdminDB);
- // Stop last-stable binary version mongod.
- MongoRunner.stopMongod(lastStableConn);
+ // Stop last-lts binary version mongod.
+ MongoRunner.stopMongod(lastLTSConn);
// Start latest binary version mongod again.
jsTest.log("Starting a latest binVersion standalone to test upgrade");
@@ -215,7 +215,7 @@ let replicaSetTest = function(nodeOptions) {
if (!nodeOptions.hasOwnProperty("shardsvr")) {
// Initially featureCompatibilityVersion is latest on primary and secondaries except for
- // when we run with shardsvr. We expect featureCompatibilityVersion to be last-stable
+ // when we run with shardsvr. We expect featureCompatibilityVersion to be last-lts
// for shardsvr.
checkFCV(primaryAdminDB, latestFCV);
@@ -234,16 +234,16 @@ let replicaSetTest = function(nodeOptions) {
checkUniqueIndexFormatVersion(secondaryAdminDB);
}
- // Change featureCompatibilityVersion to last-stable.
- setFCV(primaryAdminDB, lastStableFCV);
+ // Change featureCompatibilityVersion to last-lts.
+ setFCV(primaryAdminDB, lastLTSFCV);
rst.awaitReplication();
}
- // Ensure featureCompatibilityVersion is last-stable and all collections still have UUIDs.
- checkFCV(primaryAdminDB, lastStableFCV);
+ // Ensure featureCompatibilityVersion is last-lts and all collections still have UUIDs.
+ checkFCV(primaryAdminDB, lastLTSFCV);
for (let j = 0; j < secondaries.length; j++) {
let secondaryAdminDB = secondaries[j].getDB("admin");
- checkFCV(secondaryAdminDB, lastStableFCV);
+ checkFCV(secondaryAdminDB, lastLTSFCV);
}
checkCollectionUUIDs(primaryAdminDB);
@@ -265,23 +265,23 @@ let replicaSetTest = function(nodeOptions) {
rst.stopSet(null /* signal */, true /* forRestart */);
// Downgrade the ReplSetTest binaries and make sure everything is okay.
- jsTest.log("Starting a last-stable binVersion ReplSetTest to test downgrade");
- rst.startSet({restart: true, binVersion: lastStableBinary});
+ jsTest.log("Starting a last-lts binVersion ReplSetTest to test downgrade");
+ rst.startSet({restart: true, binVersion: lastLTSBinary});
- // Check that the featureCompatiblityVersion is set to last-stable and all
+ // Check that the featureCompatiblityVersion is set to last-lts and all
// collections still have UUIDs.
- let lastStablePrimaryAdminDB = rst.getPrimary().getDB("admin");
- let lastStableSecondaries = rst.getSecondaries();
+ let lastLTSPrimaryAdminDB = rst.getPrimary().getDB("admin");
+ let lastLTSSecondaries = rst.getSecondaries();
- checkFCV(lastStablePrimaryAdminDB, lastStableFCV);
- for (let j = 0; j < lastStableSecondaries.length; j++) {
- let secondaryAdminDB = lastStableSecondaries[j].getDB("admin");
- checkFCV(secondaryAdminDB, lastStableFCV);
+ checkFCV(lastLTSPrimaryAdminDB, lastLTSFCV);
+ for (let j = 0; j < lastLTSSecondaries.length; j++) {
+ let secondaryAdminDB = lastLTSSecondaries[j].getDB("admin");
+ checkFCV(secondaryAdminDB, lastLTSFCV);
}
- checkCollectionUUIDs(lastStablePrimaryAdminDB);
+ checkCollectionUUIDs(lastLTSPrimaryAdminDB);
for (let j = 0; j < secondaries.length; j++) {
- let secondaryAdminDB = lastStableSecondaries[j].getDB("admin");
+ let secondaryAdminDB = lastLTSSecondaries[j].getDB("admin");
checkCollectionUUIDs(secondaryAdminDB);
}
diff --git a/jstests/multiVersion/genericSetFCVUsage/downgrade_after_rollback_via_refetch.js b/jstests/multiVersion/genericSetFCVUsage/downgrade_after_rollback_via_refetch.js
index db9cbd971f8..42b34ed83ea 100644
--- a/jstests/multiVersion/genericSetFCVUsage/downgrade_after_rollback_via_refetch.js
+++ b/jstests/multiVersion/genericSetFCVUsage/downgrade_after_rollback_via_refetch.js
@@ -1,6 +1,6 @@
// When enableMajorityReadConcern=false, a node transitions from ROLLBACK to RECOVERING with an
// unstable checkpoint with appliedThrough set to the common point. Test that if the node crashes
-// and restarts with the last-stable version before its next stable checkpoint, then oplog entries
+// and restarts with the last-lts version before its next stable checkpoint, then oplog entries
// after the common point are replayed.
(function() {
"use strict";
@@ -26,10 +26,10 @@ function testDowngrade(enableMajorityReadConcern) {
replTest.initiateWithHighElectionTimeout(config);
let rollbackTest = new RollbackTest(name, replTest);
- // Set the featureCompatibilityVersion to the last-stable version, so that we can downgrade
+ // Set the featureCompatibilityVersion to the last-lts version, so that we can downgrade
// the rollback node.
assert.commandWorked(
- rollbackTest.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ rollbackTest.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
let rollbackNode = rollbackTest.transitionToRollbackOperations();
@@ -49,7 +49,7 @@ function testDowngrade(enableMajorityReadConcern) {
{_id: 0}, {writeConcern: {w: "majority"}}));
assert.eq(rollbackNode.getDB(dbName)[sourceCollName].find({_id: 0}).itcount(), 1);
- // SERVER-47219: The following unclean shutdown followed by a restart into last-stable is not a
+ // SERVER-47219: The following unclean shutdown followed by a restart into last-lts is not a
// legal downgrade scenario. However, this illegal downgrade is only prevented when a change
// across versions requires it. There exists a patch for this test in v4.4 when illegal
// downgrades are prevented. The patch for that case however requires demonstrating the illegal
@@ -61,9 +61,9 @@ function testDowngrade(enableMajorityReadConcern) {
// If this test starts failing on the restart below due to an illegal downgrade, forward-porting
// the v4.4 patch for SERVER-47219 should be the first thing to try.
//
- // Kill the rollback node and restart it on the last-stable version.
+ // Kill the rollback node and restart it on the last-lts version.
rollbackTest.restartNode(
- 0, 9, {binVersion: "last-stable", enableMajorityReadConcern: enableMajorityReadConcern});
+ 0, 9, {binVersion: "last-lts", enableMajorityReadConcern: enableMajorityReadConcern});
replTest.awaitSecondaryNodes();
// The rollback node should replay the new operation.
diff --git a/jstests/multiVersion/genericSetFCVUsage/downgrade_replset.js b/jstests/multiVersion/genericSetFCVUsage/downgrade_replset.js
index 96d9c7eeb5b..7de738a0160 100644
--- a/jstests/multiVersion/genericSetFCVUsage/downgrade_replset.js
+++ b/jstests/multiVersion/genericSetFCVUsage/downgrade_replset.js
@@ -1,11 +1,11 @@
// Test the downgrade of a replica set from latest version
-// to last-stable version succeeds, while reads and writes continue.
+// to last-lts version succeeds, while reads and writes continue.
load('./jstests/multiVersion/libs/multi_rs.js');
load('./jstests/libs/test_background_ops.js');
let newVersion = "latest";
-let oldVersion = "last-stable";
+let oldVersion = "last-lts";
let name = "replsetdowngrade";
let nodes = {
@@ -26,11 +26,11 @@ function runDowngradeTest() {
let primaryAdminDB = rst.getPrimary().getDB("admin");
checkFCV(primaryAdminDB, latestFCV);
- // We wait for the feature compatibility version to be set to lastStableFCV on all nodes of the
+ // We wait for the feature compatibility version to be set to lastLTSFCV on all nodes of the
// replica set in order to ensure that all nodes can be successfully downgraded. This
// effectively allows us to emulate upgrading to the latest version with existing data files and
- // then trying to downgrade back to lastStableFCV.
- assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ // then trying to downgrade back to lastLTSFCV.
+ assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
rst.awaitReplication();
jsTest.log("Inserting documents into collection.");
diff --git a/jstests/multiVersion/genericSetFCVUsage/feature_compatibility_version_lagging_secondary.js b/jstests/multiVersion/genericSetFCVUsage/feature_compatibility_version_lagging_secondary.js
index 0d06214c7b9..bba6831bd64 100644
--- a/jstests/multiVersion/genericSetFCVUsage/feature_compatibility_version_lagging_secondary.js
+++ b/jstests/multiVersion/genericSetFCVUsage/feature_compatibility_version_lagging_secondary.js
@@ -6,7 +6,7 @@
load("jstests/libs/write_concern_util.js");
const latest = "latest";
-const downgrade = "last-stable";
+const downgrade = "last-lts";
// Start a new replica set with two latest version nodes.
let rst = new ReplSetTest({
@@ -22,7 +22,7 @@ let latestSecondary = rst.getSecondary();
// Set the featureCompatibilityVersion to the downgrade version so that a downgrade node can
// join the set.
assert.commandWorked(
- primary.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ primary.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// Add a downgrade node to the set.
let downgradeSecondary = rst.add({binVersion: downgrade, rsConfig: {priority: 0}});
diff --git a/jstests/multiVersion/genericSetFCVUsage/initial_sync_last_stable_from_latest.js b/jstests/multiVersion/genericSetFCVUsage/initial_sync_last_lts_from_latest.js
index 7172cb2efef..653c3472d73 100644
--- a/jstests/multiVersion/genericSetFCVUsage/initial_sync_last_stable_from_latest.js
+++ b/jstests/multiVersion/genericSetFCVUsage/initial_sync_last_lts_from_latest.js
@@ -1,5 +1,5 @@
/**
- * Multiversion initial sync test. Tests that initial sync succeeds when a 'last-stable' version
+ * Multiversion initial sync test. Tests that initial sync succeeds when a 'last-lts' version
* secondary syncs from a 'latest' version replica set.
*/
@@ -7,8 +7,8 @@
load("./jstests/multiVersion/libs/initial_sync.js");
-var testName = "multiversion_initial_sync_last_stable_from_latest";
+var testName = "multiversion_initial_sync_last_lts_from_latest";
let replSetVersion = "latest";
-let newSecondaryVersion = "last-stable";
+let newSecondaryVersion = "last-lts";
-multversionInitialSyncTest(testName, replSetVersion, newSecondaryVersion, {}, lastStableFCV);
+multversionInitialSyncTest(testName, replSetVersion, newSecondaryVersion, {}, lastLTSFCV);
diff --git a/jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_stable.js b/jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_lts.js
index 14d2a690c1c..343ff94292a 100644
--- a/jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_stable.js
+++ b/jstests/multiVersion/genericSetFCVUsage/initial_sync_latest_from_last_lts.js
@@ -1,14 +1,14 @@
/**
* Multiversion initial sync test. Tests that initial sync succeeds when a 'latest' version
- * secondary syncs from a 'last-stable' version replica set.
+ * secondary syncs from a 'last-lts' version replica set.
*/
'use strict';
load("./jstests/multiVersion/libs/initial_sync.js");
-var testName = "multiversion_initial_sync_latest_from_last_stable";
-let replSetVersion = "last-stable";
+var testName = "multiversion_initial_sync_latest_from_last_lts";
+let replSetVersion = "last-lts";
let newSecondaryVersion = "latest";
-multversionInitialSyncTest(testName, replSetVersion, newSecondaryVersion, {}, lastStableFCV);
+multversionInitialSyncTest(testName, replSetVersion, newSecondaryVersion, {}, lastLTSFCV);
diff --git a/jstests/multiVersion/genericSetFCVUsage/major_version_upgrade.js b/jstests/multiVersion/genericSetFCVUsage/major_version_upgrade.js
index 2975a91f58e..e1d1bf3bc75 100644
--- a/jstests/multiVersion/genericSetFCVUsage/major_version_upgrade.js
+++ b/jstests/multiVersion/genericSetFCVUsage/major_version_upgrade.js
@@ -37,7 +37,7 @@ const versions = [
{binVersion: '4.0', featureCompatibilityVersion: '4.0', testCollection: 'four_zero'},
{binVersion: '4.2', featureCompatibilityVersion: '4.2', testCollection: 'four_two'},
{binVersion: '4.4', featureCompatibilityVersion: '4.4', testCollection: 'four_four'},
- {binVersion: 'last-stable', testCollection: 'last_stable'},
+ {binVersion: 'last-lts', testCollection: 'last_lts'},
{binVersion: 'latest', featureCompatibilityVersion: '4.5.1', testCollection: 'latest'},
];
diff --git a/jstests/multiVersion/genericSetFCVUsage/migration_between_mixed_FCV_mixed_version_mongods.js b/jstests/multiVersion/genericSetFCVUsage/migration_between_mixed_FCV_mixed_version_mongods.js
index 5ff44165939..09f5c985584 100644
--- a/jstests/multiVersion/genericSetFCVUsage/migration_between_mixed_FCV_mixed_version_mongods.js
+++ b/jstests/multiVersion/genericSetFCVUsage/migration_between_mixed_FCV_mixed_version_mongods.js
@@ -16,7 +16,7 @@
TestData.skipCheckOrphans = true;
let st = new ShardingTest({
- shards: [{binVersion: "latest"}, {binVersion: "last-stable"}],
+ shards: [{binVersion: "latest"}, {binVersion: "last-lts"}],
mongos: {binVersion: "latest"},
other: {shardAsReplicaSet: false},
});
@@ -32,13 +32,13 @@ assert.commandWorked(st.s.adminCommand({shardCollection: testDB.coll.getFullName
// featureCompatibilityVersion cannot be set to latestFCV on shard 1, but it will set the
// featureCompatibilityVersion to latestFCV on shard 0.
assert.commandFailed(st.s.adminCommand({setFeatureCompatibilityVersion: latestFCV}));
-checkFCV(st.configRS.getPrimary().getDB("admin"), lastStableFCV, latestFCV);
+checkFCV(st.configRS.getPrimary().getDB("admin"), lastLTSFCV, latestFCV);
checkFCV(st.shard0.getDB("admin"), latestFCV);
-checkFCV(st.shard1.getDB("admin"), lastStableFCV);
+checkFCV(st.shard1.getDB("admin"), lastLTSFCV);
-// It is not possible to move a chunk from a latestFCV shard to a last-stable binary version
+// It is not possible to move a chunk from a latestFCV shard to a last-lts binary version
// shard. Pass explicit writeConcern (which requires secondaryThrottle: true) to avoid problems
-// if the last-stable doesn't automatically include writeConcern when running _recvChunkStart on the
+// if the last-lts doesn't automatically include writeConcern when running _recvChunkStart on the
// newer shard.
assert.commandFailedWithCode(st.s.adminCommand({
moveChunk: testDB.coll.getFullName(),
diff --git a/jstests/multiVersion/genericSetFCVUsage/repair_feature_compatibility_version.js b/jstests/multiVersion/genericSetFCVUsage/repair_feature_compatibility_version.js
index ec06f436333..2c379ae0ab1 100644
--- a/jstests/multiVersion/genericSetFCVUsage/repair_feature_compatibility_version.js
+++ b/jstests/multiVersion/genericSetFCVUsage/repair_feature_compatibility_version.js
@@ -52,7 +52,7 @@ doStartupFailTests(latest, dbpath);
// --repair can be used to restore a missing featureCompatibilityVersion document to an existing
// admin database, as long as all collections have UUIDs. The FCV should be initialized to
-// lastStableFCV / downgraded FCV.
+// lastLTSFCV / downgraded FCV.
connection = setupMissingFCVDoc(latest, dbpath);
let returnCode =
runMongoProgram("mongod", "--port", connection.port, "--repair", "--dbpath", dbpath);
@@ -67,7 +67,7 @@ assert.neq(null,
"mongod was unable to start up with version=" + latest + " and existing data files");
adminDB = connection.getDB("admin");
const fcvDoc = adminDB.system.version.findOne({_id: "featureCompatibilityVersion"});
-assert.eq(fcvDoc.version, lastStableFCV);
+assert.eq(fcvDoc.version, lastLTSFCV);
assert.eq(fcvDoc.targetVersion, undefined);
assert.eq(fcvDoc.previousVersion, undefined);
MongoRunner.stopMongod(connection);
diff --git a/jstests/multiVersion/genericSetFCVUsage/rollback_last_lts_to_latest.js b/jstests/multiVersion/genericSetFCVUsage/rollback_last_lts_to_latest.js
new file mode 100644
index 00000000000..c4a5538d695
--- /dev/null
+++ b/jstests/multiVersion/genericSetFCVUsage/rollback_last_lts_to_latest.js
@@ -0,0 +1,12 @@
+/**
+ * Multiversion rollback test. Checks that rollback succeeds between a
+ * 'last-lts' version rollback node and a 'latest' version sync source.
+ */
+
+(function() {
+"use strict";
+load("jstests/multiVersion/libs/multiversion_rollback.js");
+
+var testName = "multiversion_rollback_last_lts_to_latest";
+testMultiversionRollback(testName, "last-lts", "latest");
+})(); \ No newline at end of file
diff --git a/jstests/multiVersion/genericSetFCVUsage/rollback_last_stable_to_latest.js b/jstests/multiVersion/genericSetFCVUsage/rollback_last_stable_to_latest.js
deleted file mode 100644
index 9d3c1a60172..00000000000
--- a/jstests/multiVersion/genericSetFCVUsage/rollback_last_stable_to_latest.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * Multiversion rollback test. Checks that rollback succeeds between a
- * 'last-stable' version rollback node and a 'latest' version sync source.
- */
-
-(function() {
-"use strict";
-load("jstests/multiVersion/libs/multiversion_rollback.js");
-
-var testName = "multiversion_rollback_last_stable_to_latest";
-testMultiversionRollback(testName, "last-stable", "latest");
-})(); \ No newline at end of file
diff --git a/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_lts.js b/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_lts.js
new file mode 100644
index 00000000000..317d949984a
--- /dev/null
+++ b/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_lts.js
@@ -0,0 +1,12 @@
+/**
+ * Multiversion rollback test. Checks that rollback succeeds between a
+ * 'latest' version rollback node and a 'last-lts' version sync source.
+ */
+
+(function() {
+"use strict";
+load("jstests/multiVersion/libs/multiversion_rollback.js");
+
+var testName = "multiversion_rollback_latest_to_last_lts";
+testMultiversionRollback(testName, "latest", "last-lts");
+})(); \ No newline at end of file
diff --git a/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_stable.js b/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_stable.js
deleted file mode 100644
index 546065ecc5f..00000000000
--- a/jstests/multiVersion/genericSetFCVUsage/rollback_latest_to_last_stable.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * Multiversion rollback test. Checks that rollback succeeds between a
- * 'latest' version rollback node and a 'last-stable' version sync source.
- */
-
-(function() {
-"use strict";
-load("jstests/multiVersion/libs/multiversion_rollback.js");
-
-var testName = "multiversion_rollback_latest_to_last_stable";
-testMultiversionRollback(testName, "latest", "last-stable");
-})(); \ No newline at end of file
diff --git a/jstests/multiVersion/genericSetFCVUsage/rsm_topology_change_fcv.js b/jstests/multiVersion/genericSetFCVUsage/rsm_topology_change_fcv.js
index ca864fd600f..da86a825a5d 100644
--- a/jstests/multiVersion/genericSetFCVUsage/rsm_topology_change_fcv.js
+++ b/jstests/multiVersion/genericSetFCVUsage/rsm_topology_change_fcv.js
@@ -20,7 +20,7 @@ const st = new ShardingTest(
{mongos: [{setParameter: {replicaSetMonitorProtocol: "sdam"}}], config: 1, shards: 0});
const latestWireVersion = st.configRS.getPrimary().getMaxWireVersion();
-const lastStableRegex =
+const lastContinuousRegex =
makeTopologyChangeLogMsgRegex(st.configRS, latestWireVersion - 1, latestWireVersion);
const latestRegex =
makeTopologyChangeLogMsgRegex(st.configRS, latestWireVersion, latestWireVersion);
@@ -31,8 +31,8 @@ checkLog.contains(st.s, latestRegex);
jsTest.log("Downgrade FCV and verify that the RSM on the mongos detects the topology change");
assert.commandWorked(st.s.adminCommand({clearLog: 'global'}));
-assert.commandWorked(st.s.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkLog.contains(st.s, lastStableRegex);
+assert.commandWorked(st.s.adminCommand({setFeatureCompatibilityVersion: lastContinuousFCV}));
+checkLog.contains(st.s, lastContinuousRegex);
jsTest.log("Upgrade FCV and verify that the RSM on the mongos detects the topology change");
assert.commandWorked(st.s.adminCommand({clearLog: 'global'}));
diff --git a/jstests/multiVersion/genericSetFCVUsage/set_feature_compatibility_version.js b/jstests/multiVersion/genericSetFCVUsage/set_feature_compatibility_version.js
index a5bad7e666c..694f5550a2f 100644
--- a/jstests/multiVersion/genericSetFCVUsage/set_feature_compatibility_version.js
+++ b/jstests/multiVersion/genericSetFCVUsage/set_feature_compatibility_version.js
@@ -21,7 +21,7 @@ resetDbpath(dbpath);
let res;
const latest = "latest";
-const lastStable = "last-stable";
+const lastLTS = "last-lts";
//
// Standalone tests.
@@ -44,14 +44,13 @@ assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: "4.8"})
assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: "3.4"}));
jsTestLog("EXPECTED TO FAIL: setFeatureCompatibilityVersion rejects unknown fields.");
-assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: lastStable, unknown: 1}));
+assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: lastLTS, unknown: 1}));
jsTestLog("EXPECTED TO FAIL: setFeatureCompatibilityVersion can only be run on the admin database");
-assert.commandFailed(conn.getDB("test").runCommand({setFeatureCompatibilityVersion: lastStable}));
+assert.commandFailed(conn.getDB("test").runCommand({setFeatureCompatibilityVersion: lastLTS}));
jsTestLog("EXPECTED TO FAIL: featureCompatibilityVersion cannot be set via setParameter");
-assert.commandFailed(
- adminDB.runCommand({setParameter: 1, featureCompatibilityVersion: lastStable}));
+assert.commandFailed(adminDB.runCommand({setParameter: 1, featureCompatibilityVersion: lastLTS}));
// setFeatureCompatibilityVersion fails to downgrade FCV if the write fails.
assert.commandWorked(adminDB.runCommand({
@@ -61,7 +60,7 @@ assert.commandWorked(adminDB.runCommand({
}));
jsTestLog(
"EXPECTED TO FAIL: setFeatureCompatibilityVersion fails to downgrade FCV if the write fails");
-assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
checkFCV(adminDB, latestFCV);
assert.commandWorked(adminDB.runCommand({
configureFailPoint: "failCollectionUpdates",
@@ -69,9 +68,9 @@ assert.commandWorked(adminDB.runCommand({
mode: "off"
}));
-// featureCompatibilityVersion can be downgraded to 'lastStableFCV'.
-assert.commandWorked(adminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(adminDB, lastStableFCV);
+// featureCompatibilityVersion can be downgraded to 'lastLTSFCV'.
+assert.commandWorked(adminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(adminDB, lastLTSFCV);
// setFeatureCompatibilityVersion fails to upgrade to 'latestFCV' if the write fails.
assert.commandWorked(adminDB.runCommand({
@@ -82,7 +81,7 @@ assert.commandWorked(adminDB.runCommand({
jsTestLog(
"EXPECTED TO FAIL: setFeatureCompatibilityVersion fails to upgrade to 'latestFCV' if the write fails");
assert.commandFailed(adminDB.runCommand({setFeatureCompatibilityVersion: latestFCV}));
-checkFCV(adminDB, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV);
assert.commandWorked(adminDB.runCommand({
configureFailPoint: "failCollectionUpdates",
data: {collectionNS: "admin.system.version"},
@@ -101,45 +100,45 @@ assert.neq(
null, conn, "mongod was unable to start up with version=" + latest + " and no data files");
adminDB = conn.getDB("admin");
checkFCV(adminDB, latestFCV);
-assert.commandWorked(adminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(adminDB, lastStableFCV);
+assert.commandWorked(adminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(adminDB, lastLTSFCV);
MongoRunner.stopMongod(conn);
conn = MongoRunner.runMongod({dbpath: dbpath, binVersion: latest, noCleanData: true});
assert.neq(null,
conn,
"mongod was unable to start up with binary version=" + latest +
- " and last-stable featureCompatibilityVersion");
+ " and last-lts featureCompatibilityVersion");
adminDB = conn.getDB("admin");
-checkFCV(adminDB, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV);
MongoRunner.stopMongod(conn);
-// If you upgrade from 'lastStable' binary to 'latest' binary and have non-local databases, FCV
-// remains 'lastStableFCV'.
-conn = MongoRunner.runMongod({dbpath: dbpath, binVersion: lastStable});
+// If you upgrade from 'lastLTS' binary to 'latest' binary and have non-local databases, FCV
+// remains 'lastLTSFCV'.
+conn = MongoRunner.runMongod({dbpath: dbpath, binVersion: lastLTS});
assert.neq(
- null, conn, "mongod was unable to start up with version=" + lastStable + " and no data files");
+ null, conn, "mongod was unable to start up with version=" + lastLTS + " and no data files");
assert.commandWorked(conn.getDB("test").coll.insert({a: 5}));
adminDB = conn.getDB("admin");
-checkFCV(adminDB, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV);
MongoRunner.stopMongod(conn);
conn = MongoRunner.runMongod({dbpath: dbpath, binVersion: latest, noCleanData: true});
assert.neq(null,
conn,
"mongod was unable to start up with binary version=" + latest +
- " and featureCompatibilityVersion=" + lastStableFCV);
+ " and featureCompatibilityVersion=" + lastLTSFCV);
adminDB = conn.getDB("admin");
-checkFCV(adminDB, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV);
MongoRunner.stopMongod(conn);
// A 'latest' binary mongod started with --shardsvr and clean data files defaults to
-// 'lastStableFCV'.
+// 'lastLTSFCV'.
conn = MongoRunner.runMongod({dbpath: dbpath, binVersion: latest, shardsvr: ""});
assert.neq(
null, conn, "mongod was unable to start up with version=" + latest + " and no data files");
adminDB = conn.getDB("admin");
-checkFCV(adminDB, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV);
MongoRunner.stopMongod(conn);
//
@@ -165,18 +164,18 @@ rst.awaitReplication();
checkFCV(secondaryAdminDB, latestFCV);
// featureCompatibilityVersion propagates to secondary.
-assert.commandWorked(primaryAdminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(primaryAdminDB, lastStableFCV);
+assert.commandWorked(primaryAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(primaryAdminDB, lastLTSFCV);
rst.awaitReplication();
-checkFCV(secondaryAdminDB, lastStableFCV);
+checkFCV(secondaryAdminDB, lastLTSFCV);
jsTestLog("EXPECTED TO FAIL: setFeatureCompatibilityVersion cannot be run on secondary");
assert.commandFailed(secondaryAdminDB.runCommand({setFeatureCompatibilityVersion: latestFCV}));
rst.stopSet();
-// A 'latest' binary secondary with a 'lastStable' binary primary will have 'lastStableFCV'
-rst = new ReplSetTest({nodes: [{binVersion: lastStable}, {binVersion: latest}]});
+// A 'latest' binary secondary with a 'lastLTS' binary primary will have 'lastLTSFCV'
+rst = new ReplSetTest({nodes: [{binVersion: lastLTS}, {binVersion: latest}]});
rstConns = rst.startSet();
replSetConfig = rst.getReplSetConfig();
replSetConfig.members[1].priority = 0;
@@ -184,11 +183,11 @@ replSetConfig.members[1].votes = 0;
rst.initiate(replSetConfig);
rst.waitForState(rstConns[0], ReplSetTest.State.PRIMARY);
secondaryAdminDB = rst.getSecondary().getDB("admin");
-checkFCV(secondaryAdminDB, lastStableFCV);
+checkFCV(secondaryAdminDB, lastLTSFCV);
rst.stopSet();
-// Test that a 'lastStable' secondary can successfully perform initial sync from a 'latest'
-// primary with 'lastStableFCV'.
+// Test that a 'lastLTS' secondary can successfully perform initial sync from a 'latest'
+// primary with 'lastLTSFCV'.
rst = new ReplSetTest({
nodes: [{binVersion: latest}, {binVersion: latest, rsConfig: {priority: 0}}],
settings: {chainingAllowed: false}
@@ -198,7 +197,7 @@ rst.initiate();
let primary = rst.getPrimary();
primaryAdminDB = primary.getDB("admin");
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
let secondary = rst.getSecondary();
@@ -211,32 +210,32 @@ assert.commandFailedWithCode(res, ErrorCodes.WriteConcernFailed);
restartServerReplication(secondary);
// Because the failed setFCV command left the primary in an intermediary state, complete the
-// upgrade then reset back to the lastStable version.
+// upgrade then reset back to the lastLTS version.
assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: latestFCV}));
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
-secondary = rst.add({binVersion: lastStable});
+secondary = rst.add({binVersion: lastLTS});
secondaryAdminDB = secondary.getDB("admin");
// Rig the election so that the first node running latest version remains the primary after the
-// 'lastStable' secondary is added to the replica set.
+// 'lastLTS' secondary is added to the replica set.
replSetConfig = rst.getReplSetConfig();
replSetConfig.version = 4;
replSetConfig.members[2].priority = 0;
reconfig(rst, replSetConfig);
-// Verify that the 'lastStable' secondary successfully performed its initial sync.
+// Verify that the 'lastLTS' secondary successfully performed its initial sync.
assert.commandWorked(
primaryAdminDB.getSiblingDB("test").coll.insert({awaitRepl: true}, {writeConcern: {w: 3}}));
-// Test that a 'lastStable' secondary can no longer replicate from the primary after the FCV is
+// Test that a 'lastLTS' secondary can no longer replicate from the primary after the FCV is
// upgraded to 'latestFCV'.
-// Note: the 'lastStable' secondary must stop replicating during the upgrade to ensure it has no
+// Note: the 'lastLTS' secondary must stop replicating during the upgrade to ensure it has no
// chance of seeing the 'upgrading to latest' message in the oplog, whereupon it would crash.
stopServerReplication(secondary);
assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: latestFCV}));
restartServerReplication(secondary);
-checkFCV(secondaryAdminDB, lastStableFCV);
+checkFCV(secondaryAdminDB, lastLTSFCV);
assert.commandWorked(primaryAdminDB.getSiblingDB("test").coll.insert({shouldReplicate: false}));
assert.eq(secondaryAdminDB.getSiblingDB("test").coll.find({shouldReplicate: false}).itcount(), 0);
rst.stopSet();
@@ -246,20 +245,20 @@ rst = new ReplSetTest({nodes: 2, nodeOpts: {binVersion: latest}});
rst.startSet();
rst.initiate();
-// Set FCV to 'lastStableFCV' so that a 'lastStable' binary node can join the set.
+// Set FCV to 'lastLTSFCV' so that a 'lastLTS' binary node can join the set.
primary = rst.getPrimary();
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
rst.awaitReplication();
-// Add a 'lastStable' binary node to the set.
-secondary = rst.add({binVersion: lastStable});
+// Add a 'lastLTS' binary node to the set.
+secondary = rst.add({binVersion: lastLTS});
rst.reInitiate();
-// Ensure the 'lastStable' binary node succeeded its initial sync.
+// Ensure the 'lastLTS' binary node succeeded its initial sync.
assert.commandWorked(primary.getDB("test").coll.insert({awaitRepl: true}, {writeConcern: {w: 3}}));
-// Run {setFCV: lastStableFCV}. This should be idempotent.
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+// Run {setFCV: lastLTSFCV}. This should be idempotent.
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
rst.awaitReplication();
// Ensure the secondary is still running.
@@ -293,32 +292,31 @@ assert.commandFailed(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: "
jsTestLog("EXPECTED TO FAIL: setFeatureCompatibilityVersion rejects unknown fields on mongos");
assert.commandFailed(
- mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV, unknown: 1}));
+ mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, unknown: 1}));
jsTestLog(
"EXPECTED TO FAIL: setFeatureCompatibilityVersion can only be run on the admin database on mongos");
-assert.commandFailed(
- st.s.getDB("test").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandFailed(st.s.getDB("test").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
jsTestLog("EXPECTED TO FAIL: featureCompatibilityVersion cannot be set via setParameter on mongos");
assert.commandFailed(
- mongosAdminDB.runCommand({setParameter: 1, featureCompatibilityVersion: lastStableFCV}));
+ mongosAdminDB.runCommand({setParameter: 1, featureCompatibilityVersion: lastLTSFCV}));
// Prevent the shard primary from receiving messages from the config server primary. When we try
-// to set FCV to 'lastStableFCV', the command should fail because the shard cannot be contacted.
+// to set FCV to 'lastLTSFCV', the command should fail because the shard cannot be contacted.
st.rs0.getPrimary().discardMessagesFrom(st.configRS.getPrimary(), 1.0);
jsTestLog(
"EXPECTED TO FAIL: setFeatureCompatibilityVersion cannot be set because the shard primary is not reachable");
assert.commandFailed(
- mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV, maxTimeMS: 1000}));
-checkFCV(configPrimaryAdminDB, lastStableFCV, lastStableFCV /* indicates downgrade in progress */);
+ mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, maxTimeMS: 1000}));
+checkFCV(configPrimaryAdminDB, lastLTSFCV, lastLTSFCV /* indicates downgrade in progress */);
st.rs0.getPrimary().discardMessagesFrom(st.configRS.getPrimary(), 0.0);
-// FCV can be set to 'lastStableFCV' on mongos.
+// FCV can be set to 'lastLTSFCV' on mongos.
// This is run through assert.soon() because we've just caused a network interruption
// by discarding messages in the bridge.
assert.soon(function() {
- res = mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV});
+ res = mongosAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV});
if (res.ok == 0) {
print("Failed to set feature compatibility version: " + tojson(res));
return false;
@@ -327,10 +325,10 @@ assert.soon(function() {
});
// featureCompatibilityVersion propagates to config and shard.
-checkFCV(configPrimaryAdminDB, lastStableFCV);
-checkFCV(shardPrimaryAdminDB, lastStableFCV);
+checkFCV(configPrimaryAdminDB, lastLTSFCV);
+checkFCV(shardPrimaryAdminDB, lastLTSFCV);
-// A 'latest' binary replica set started as a shard server defaults to 'lastStableFCV'.
+// A 'latest' binary replica set started as a shard server defaults to 'lastLTSFCV'.
let latestShard = new ReplSetTest({
name: "latestShard",
nodes: [{binVersion: latest}, {binVersion: latest}],
@@ -340,9 +338,9 @@ let latestShard = new ReplSetTest({
latestShard.startSet();
latestShard.initiate();
let latestShardPrimaryAdminDB = latestShard.getPrimary().getDB("admin");
-checkFCV(latestShardPrimaryAdminDB, lastStableFCV);
+checkFCV(latestShardPrimaryAdminDB, lastLTSFCV);
assert.commandWorked(mongosAdminDB.runCommand({addShard: latestShard.getURL()}));
-checkFCV(latestShardPrimaryAdminDB, lastStableFCV);
+checkFCV(latestShardPrimaryAdminDB, lastLTSFCV);
// FCV can be set to 'latestFCV' on mongos.
assert.commandWorked(mongosAdminDB.runCommand({setFeatureCompatibilityVersion: latestFCV}));
@@ -355,27 +353,27 @@ checkFCV(latestShardPrimaryAdminDB, latestFCV);
st.stop();
latestShard.stopSet();
-// Create cluster with a 'lastStable' binary mongos so that we can add 'lastStable' binary
+// Create cluster with a 'lastLTS' binary mongos so that we can add 'lastLTS' binary
// shards.
-st = new ShardingTest({shards: 0, other: {mongosOptions: {binVersion: lastStable}}});
+st = new ShardingTest({shards: 0, other: {mongosOptions: {binVersion: lastLTS}}});
mongosAdminDB = st.s.getDB("admin");
configPrimaryAdminDB = st.configRS.getPrimary().getDB("admin");
-checkFCV(configPrimaryAdminDB, lastStableFCV);
+checkFCV(configPrimaryAdminDB, lastLTSFCV);
-// Adding a 'lastStable' binary shard to a cluster with 'lastStableFCV' succeeds.
-let lastStableShard = new ReplSetTest({
- name: "lastStableShard",
- nodes: [{binVersion: lastStable}, {binVersion: lastStable}],
+// Adding a 'lastLTS' binary shard to a cluster with 'lastLTSFCV' succeeds.
+let lastLTSShard = new ReplSetTest({
+ name: "lastLTSShard",
+ nodes: [{binVersion: lastLTS}, {binVersion: lastLTS}],
nodeOptions: {shardsvr: ""},
useHostName: true
});
-lastStableShard.startSet();
-lastStableShard.initiate();
-assert.commandWorked(mongosAdminDB.runCommand({addShard: lastStableShard.getURL()}));
-checkFCV(lastStableShard.getPrimary().getDB("admin"), lastStableFCV);
+lastLTSShard.startSet();
+lastLTSShard.initiate();
+assert.commandWorked(mongosAdminDB.runCommand({addShard: lastLTSShard.getURL()}));
+checkFCV(lastLTSShard.getPrimary().getDB("admin"), lastLTSFCV);
-// call ShardingTest.stop before shutting down lastStableShard, so that the UUID check in
-// ShardingTest.stop can talk to lastStableShard.
+// call ShardingTest.stop before shutting down lastLTSShard, so that the UUID check in
+// ShardingTest.stop can talk to lastLTSShard.
st.stop();
-lastStableShard.stopSet();
+lastLTSShard.stopSet();
})();
diff --git a/jstests/multiVersion/genericSetFCVUsage/upgrade_downgrade_while_creating_collection.js b/jstests/multiVersion/genericSetFCVUsage/upgrade_downgrade_while_creating_collection.js
index 4a7f2e3c318..c3fa52c95e0 100644
--- a/jstests/multiVersion/genericSetFCVUsage/upgrade_downgrade_while_creating_collection.js
+++ b/jstests/multiVersion/genericSetFCVUsage/upgrade_downgrade_while_creating_collection.js
@@ -19,7 +19,7 @@ rst.initiate(replSetConfig);
const primary = rst.getPrimary();
const primaryDB = primary.getDB("test");
-for (let versions of [{from: lastStableFCV, to: latestFCV}, {from: latestFCV, to: lastStableFCV}]) {
+for (let versions of [{from: lastLTSFCV, to: latestFCV}, {from: latestFCV, to: lastLTSFCV}]) {
jsTestLog("Changing FeatureCompatibilityVersion from " + versions.from + " to " + versions.to +
" while creating a collection");
assert.commandWorked(primaryDB.adminCommand({setFeatureCompatibilityVersion: versions.from}));
diff --git a/jstests/multiVersion/index_signature_fcv.js b/jstests/multiVersion/index_signature_fcv.js
index a97dfb91cff..745fc000e34 100644
--- a/jstests/multiVersion/index_signature_fcv.js
+++ b/jstests/multiVersion/index_signature_fcv.js
@@ -76,7 +76,7 @@ coll = testDB.test;
assertIndexedQuery({a: -1}, 0);
// Test that these indexes are retained and can be used by the planner when we downgrade to FCV 4.4.
-testDB.adminCommand({setFeatureCompatibilityVersion: lastStableFCV});
+testDB.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV});
assertIndexedQuery({a: 1}, 0);
assertIndexedQuery({a: 11}, 1);
assertIndexedQuery({a: 101}, 2);
@@ -99,7 +99,7 @@ const cmdRes = assert.commandWorked(
assert.eq(cmdRes.numIndexesBefore, cmdRes.numIndexesAfter);
// Test that downgrading to binary 4.4 with overlapping partial indexes present does not fassert.
-rst.upgradeSet({binVersion: "last-stable"});
+rst.upgradeSet({binVersion: "last-lts"});
testDB = rst.getPrimary().getDB(jsTestName());
coll = testDB.test;
diff --git a/jstests/multiVersion/initialize_from_old_node.js b/jstests/multiVersion/initialize_from_old_node.js
index ea89a9c0adc..e45a482ab00 100644
--- a/jstests/multiVersion/initialize_from_old_node.js
+++ b/jstests/multiVersion/initialize_from_old_node.js
@@ -6,7 +6,7 @@
(function() {
"use strict";
var name = "initialize_from_old";
-var oldVersion = 'last-stable';
+var oldVersion = 'last-lts';
var newVersion = 'latest';
var nodes = {
n0: {binVersion: oldVersion},
diff --git a/jstests/multiVersion/keystring_index.js b/jstests/multiVersion/keystring_index.js
index b42544daf11..283eac5a4bd 100644
--- a/jstests/multiVersion/keystring_index.js
+++ b/jstests/multiVersion/keystring_index.js
@@ -1,13 +1,13 @@
/**
- * Regression test that ensure there have been no KeyString encoding changes between last-stable the
+ * Regression test that ensure there have been no KeyString encoding changes between last-lts the
* current version. Has the following procedure:
- * - Start mongod with the last-stable version.
+ * - Start mongod with the last-lts version.
* - For each index type, create a new collection, insert documents, and create an index.
* - Shutdown mongod and restart with the latest version.
* - Run validate.
* - Drop all collections.
* - Recreate all indexes.
- * - Shuwdown mongod and restart with the last-stable version.
+ * - Shuwdown mongod and restart with the last-lts version.
* - Run validate.
*
* The following index types are tested:
@@ -126,17 +126,17 @@ const defaultOptions = {
const kCollectionPrefix = 'testColl';
-let mongodOptionsLastStable = Object.extend({binVersion: 'last-stable'}, defaultOptions);
+let mongodOptionsLastLTS = Object.extend({binVersion: 'last-lts'}, defaultOptions);
let mongodOptionsCurrent = Object.extend({binVersion: 'latest'}, defaultOptions);
-// We will first start up a last-stable version mongod, populate the database, upgrade, then
+// We will first start up a last-lts version mongod, populate the database, upgrade, then
// validate.
-jsTestLog("Starting version: last-stable");
-let conn = MongoRunner.runMongod(mongodOptionsLastStable);
+jsTestLog("Starting version: last-lts");
+let conn = MongoRunner.runMongod(mongodOptionsLastLTS);
assert.neq(
- null, conn, 'mongod was unable able to start with version ' + tojson(mongodOptionsLastStable));
+ null, conn, 'mongod was unable able to start with version ' + tojson(mongodOptionsLastLTS));
let testDb = conn.getDB('test');
@@ -151,9 +151,8 @@ assert.neq(null, conn, 'mongod was unable to start with the latest version');
testDb = conn.getDB('test');
assert.gt(testDb.getCollectionInfos().length, 0);
-jsTestLog(
- "Validating indexes created with a 'last-stable' version binary using a 'latest' version " +
- "binary");
+jsTestLog("Validating indexes created with a 'last-lts' version binary using a 'latest' version " +
+ "binary");
// Validate all the indexes.
assert.commandWorked(validateCollections(testDb, {full: true}));
@@ -163,15 +162,15 @@ dropAllUserCollections(testDb);
populateDb(testDb);
MongoRunner.stopMongod(conn);
-conn = MongoRunner.runMongod(mongodOptionsLastStable);
+conn = MongoRunner.runMongod(mongodOptionsLastLTS);
assert.neq(
- null, conn, 'mongod was unable able to start with version ' + tojson(mongodOptionsLastStable));
+ null, conn, 'mongod was unable able to start with version ' + tojson(mongodOptionsLastLTS));
testDb = conn.getDB('test');
assert.gt(testDb.getCollectionInfos().length, 0);
jsTestLog(
- "Validating indexes created with 'latest' version binary using a 'last-stable' version binary");
+ "Validating indexes created with 'latest' version binary using a 'last-lts' version binary");
assert.commandWorked(validateCollections(testDb, {full: true}));
MongoRunner.stopMongod(conn);
diff --git a/jstests/multiVersion/libs/multi_rs.js b/jstests/multiVersion/libs/multi_rs.js
index c344b1d9393..82aaf083612 100644
--- a/jstests/multiVersion/libs/multi_rs.js
+++ b/jstests/multiVersion/libs/multi_rs.js
@@ -54,7 +54,7 @@ ReplSetTest.prototype.upgradeSecondaries = function(primary, options, user, pwd)
ReplSetTest.prototype.upgradeArbiters = function(primary, options, user, pwd) {
// We don't support downgrading data files for arbiters. We need to instead delete the dbpath.
const oldStartClean = {startClean: (options && !!options["startClean"])};
- if (options && options.binVersion == "last-stable") {
+ if (options && options.binVersion == "last-lts") {
options["startClean"] = true;
}
this.upgradeMembers(primary, this.getArbiters(), options, user, pwd);
diff --git a/jstests/multiVersion/migration_between_mixed_version_mongods.js b/jstests/multiVersion/migration_between_mixed_version_mongods.js
index ef9b7623f6b..b855c65f02d 100644
--- a/jstests/multiVersion/migration_between_mixed_version_mongods.js
+++ b/jstests/multiVersion/migration_between_mixed_version_mongods.js
@@ -1,6 +1,6 @@
//
-// Testing migrations between latest and last-stable mongod versions, where the
-// donor is the latest version and the recipient the last-stable, and vice versa.
+// Testing migrations between latest and last-lts mongod versions, where the
+// donor is the latest version and the recipient the last-lts, and vice versa.
// Migrations should be successful.
//
@@ -14,23 +14,23 @@ load("./jstests/multiVersion/libs/verify_versions.js");
var options = {
shards: [
- {binVersion: "last-stable"},
- {binVersion: "last-stable"},
+ {binVersion: "last-lts"},
+ {binVersion: "last-lts"},
{binVersion: "latest"},
{binVersion: "latest"}
],
mongos: 1,
- other: {mongosOptions: {binVersion: "last-stable"}}
+ other: {mongosOptions: {binVersion: "last-lts"}}
};
var st = new ShardingTest(options);
st.stopBalancer();
-assert.binVersion(st.shard0, "last-stable");
-assert.binVersion(st.shard1, "last-stable");
+assert.binVersion(st.shard0, "last-lts");
+assert.binVersion(st.shard1, "last-lts");
assert.binVersion(st.shard2, "latest");
assert.binVersion(st.shard3, "latest");
-assert.binVersion(st.s0, "last-stable");
+assert.binVersion(st.s0, "last-lts");
var mongos = st.s0, admin = mongos.getDB('admin'),
shards = mongos.getCollection('config.shards').find().toArray(),
@@ -71,8 +71,8 @@ assert.eq(2, barColl.count());
/**
* Perform two migrations:
- * shard0 (last-stable) -> foo chunk -> shard2 (latest)
- * shard3 (latest) -> bar chunk -> shard1 (last-stable)
+ * shard0 (last-lts) -> foo chunk -> shard2 (latest)
+ * shard3 (latest) -> bar chunk -> shard1 (last-lts)
*/
assert.commandWorked(
@@ -82,27 +82,27 @@ assert.commandWorked(
assert.eq(1,
fooRecipientColl.count(),
"Foo collection migration failed. " +
- "Last-stable -> latest mongod version migration failure.");
+ "Last-lts -> latest mongod version migration failure.");
assert.eq(1,
fooDonorColl.count(),
"Foo donor lost its document. " +
- "Last-stable -> latest mongod version migration failure.");
+ "Last-lts -> latest mongod version migration failure.");
assert.eq(2,
fooColl.count(),
"Incorrect number of documents in foo collection. " +
- "Last-stable -> latest mongod version migration failure.");
+ "Last-lts -> latest mongod version migration failure.");
assert.eq(1,
barRecipientColl.count(),
"Bar collection migration failed. " +
- "Latest -> last-stable mongod version migration failure.");
+ "Latest -> last-lts mongod version migration failure.");
assert.eq(1,
barDonorColl.count(),
"Bar donor lost its document. " +
- "Latest -> last-stable mongod version migration failure.");
+ "Latest -> last-lts mongod version migration failure.");
assert.eq(2,
barColl.count(),
"Incorrect number of documents in bar collection. " +
- "Latest -> last-stable mongod version migration failure.");
+ "Latest -> last-lts mongod version migration failure.");
st.stop();
})();
diff --git a/jstests/multiVersion/migration_with_mixed_version_shards_and_disable_resumable_range_deleter.js b/jstests/multiVersion/migration_with_mixed_version_shards_and_disable_resumable_range_deleter.js
index ebf4d7941a3..d7b3201177b 100644
--- a/jstests/multiVersion/migration_with_mixed_version_shards_and_disable_resumable_range_deleter.js
+++ b/jstests/multiVersion/migration_with_mixed_version_shards_and_disable_resumable_range_deleter.js
@@ -32,8 +32,8 @@ function setDisableResumableRangeDeleter(value, rs) {
}
const st = new ShardingTest({
- shards: {rs0: {nodes: [{binVersion: "latest"}]}, rs1: {nodes: [{binVersion: "last-stable"}]}},
- other: {mongosOptions: {binVersion: "last-stable"}}
+ shards: {rs0: {nodes: [{binVersion: "latest"}]}, rs1: {nodes: [{binVersion: "last-lts"}]}},
+ other: {mongosOptions: {binVersion: "last-lts"}}
});
assert.commandWorked(st.s.adminCommand({enableSharding: dbName}));
assert.commandWorked(st.s.adminCommand({movePrimary: dbName, to: st.shard0.shardName}));
diff --git a/jstests/multiVersion/migrations_with_mixed_fcv.js b/jstests/multiVersion/migrations_with_mixed_fcv.js
index da9fd28b214..266d29d0d05 100644
--- a/jstests/multiVersion/migrations_with_mixed_fcv.js
+++ b/jstests/multiVersion/migrations_with_mixed_fcv.js
@@ -38,9 +38,9 @@ function testMigrationFailsWhileUpgradingSource() {
let st = setup();
- // Ensure last-stable FCV on shard0.
- assert.commandWorked(st.shard0.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(st.shard0.getDB("admin"), lastStableFCV);
+ // Ensure last-lts FCV on shard0.
+ assert.commandWorked(st.shard0.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
checkFCV(st.shard1.getDB("admin"), latestFCV);
// Fail while upgrading.
@@ -74,7 +74,7 @@ function testMigrationFailsWhileDowngradingSource() {
let failpoint = configureFailPoint(shard0Primary, 'failDowngrading');
// Downgrade source.
- assert.commandFailed(st.shard0.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ assert.commandFailed(st.shard0.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// Move chunk [50, inf) to shard1 should fail.
assert.commandFailedWithCode(
@@ -91,11 +91,11 @@ function testMigrationFailsWhileUpgradingDestination() {
let st = setup();
- // Ensure last-stable FCV on shard1.
+ // Ensure last-lts FCV on shard1.
assert.commandWorked(
- st.shard1.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ st.shard1.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
checkFCV(st.shard0.getDB("admin"), latestFCV);
- checkFCV(st.shard1.getDB("admin"), lastStableFCV);
+ checkFCV(st.shard1.getDB("admin"), lastLTSFCV);
// Fail while upgrading.
let shard1Primary = st.rs1.getPrimary();
@@ -128,7 +128,7 @@ function testMigrationFailsWhileDowngradingDestination() {
let failpoint = configureFailPoint(shard1Primary, 'failDowngrading');
// Downgrade destination.
- assert.commandFailed(st.shard1.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ assert.commandFailed(st.shard1.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// Move chunk [50, inf) to shard1 should fail.
assert.commandFailedWithCode(
@@ -140,14 +140,14 @@ function testMigrationFailsWhileDowngradingDestination() {
st.stop();
}
-function testMigrateFromLastStableToLastStable() {
- jsTestLog("Test last-stable FCV -> latest FCV");
+function testMigrateFromLastLTSToLastLTS() {
+ jsTestLog("Test last-lts FCV -> last-lts FCV");
let st = setup();
assert.commandWorked(
- st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(st.shard0.getDB("admin"), lastStableFCV);
- checkFCV(st.shard1.getDB("admin"), lastStableFCV);
+ st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
+ checkFCV(st.shard1.getDB("admin"), lastLTSFCV);
// Move chunk [50, inf) to shard1.
assert.commandWorked(
@@ -156,14 +156,14 @@ function testMigrateFromLastStableToLastStable() {
st.stop();
}
-function testMigrateFromLatestToLastStable() {
- jsTestLog("Test latest FCV -> last-stable FCV");
+function testMigrateFromLatestToLastLTS() {
+ jsTestLog("Test latest FCV -> last-lts FCV");
let st = setup();
assert.commandWorked(
- st.shard1.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ st.shard1.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
checkFCV(st.shard0.getDB("admin"), latestFCV);
- checkFCV(st.shard1.getDB("admin"), lastStableFCV);
+ checkFCV(st.shard1.getDB("admin"), lastLTSFCV);
// Move chunk [50, inf) to shard1.
assert.commandWorked(
@@ -172,13 +172,13 @@ function testMigrateFromLatestToLastStable() {
st.stop();
}
-function testMigrateFromLastStableToLatest() {
- jsTestLog("Test last-stable FCV -> latest FCV fail");
+function testMigrateFromLastLTSToLatest() {
+ jsTestLog("Test last-lts FCV -> latest FCV fail");
let st = setup();
assert.commandWorked(
- st.shard0.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(st.shard0.getDB("admin"), lastStableFCV);
+ st.shard0.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
checkFCV(st.shard1.getDB("admin"), latestFCV);
// Move chunk [50, inf) to shard1 should fail. Since shard1 is running the latest FCV, it
@@ -209,12 +209,12 @@ function testSetFCVBlocksWhileMigratingChunk() {
jsTestLog("Testing that setFCV blocks while migrating a chunk");
let st = setup();
- // Set config and shards to last-stable FCV
+ // Set config and shards to last-lts FCV
assert.commandWorked(
- st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
- checkFCV(st.shard0.getDB("admin"), lastStableFCV);
- checkFCV(st.shard1.getDB("admin"), lastStableFCV);
+ checkFCV(st.shard0.getDB("admin"), lastLTSFCV);
+ checkFCV(st.shard1.getDB("admin"), lastLTSFCV);
// Start migration and block with failpoint.
let shard0Primary = st.rs0.getPrimary();
@@ -242,8 +242,8 @@ testMigrationFailsWhileDowngradingSource();
testMigrationFailsWhileUpgradingDestination();
testMigrationFailsWhileDowngradingDestination();
-testMigrateFromLastStableToLastStable();
-testMigrateFromLatestToLastStable();
-testMigrateFromLastStableToLatest();
+testMigrateFromLastLTSToLastLTS();
+testMigrateFromLatestToLastLTS();
+testMigrateFromLastLTSToLatest();
testSetFCVBlocksWhileMigratingChunk();
})();
diff --git a/jstests/multiVersion/minor_version_tags_new_old_new.js b/jstests/multiVersion/minor_version_tags_new_old_new.js
index eaae74c8810..283380637ca 100644
--- a/jstests/multiVersion/minor_version_tags_new_old_new.js
+++ b/jstests/multiVersion/minor_version_tags_new_old_new.js
@@ -3,7 +3,7 @@
load("jstests/replsets/libs/tags.js");
-var oldVersion = "last-stable";
+var oldVersion = "last-lts";
var newVersion = "latest";
let nodes = [
{binVersion: newVersion},
diff --git a/jstests/multiVersion/minor_version_tags_old_new_old.js b/jstests/multiVersion/minor_version_tags_old_new_old.js
index 22ce71964f9..02649e9ed87 100644
--- a/jstests/multiVersion/minor_version_tags_old_new_old.js
+++ b/jstests/multiVersion/minor_version_tags_old_new_old.js
@@ -3,7 +3,7 @@
load("jstests/replsets/libs/tags.js");
-var oldVersion = "last-stable";
+var oldVersion = "last-lts";
var newVersion = "latest";
let nodes = [
{binVersion: oldVersion},
diff --git a/jstests/multiVersion/minor_version_upgrade_replset.js b/jstests/multiVersion/minor_version_upgrade_replset.js
index fb98e74f70e..21676767ebd 100644
--- a/jstests/multiVersion/minor_version_upgrade_replset.js
+++ b/jstests/multiVersion/minor_version_upgrade_replset.js
@@ -5,7 +5,7 @@
load('./jstests/multiVersion/libs/multi_rs.js');
load('./jstests/libs/test_background_ops.js');
-var oldVersion = "last-stable";
+var oldVersion = "last-lts";
var nodes = {
n1: {binVersion: oldVersion},
diff --git a/jstests/multiVersion/mixed_replica_set_with_latest_primary.js b/jstests/multiVersion/mixed_replica_set_with_latest_primary.js
index dd5c3821ccb..546ae94e95b 100644
--- a/jstests/multiVersion/mixed_replica_set_with_latest_primary.js
+++ b/jstests/multiVersion/mixed_replica_set_with_latest_primary.js
@@ -6,13 +6,13 @@
"use strict";
load('./jstests/multiVersion/libs/multi_rs.js');
-const lastStableVersion = "last-stable";
+const lastLTSVersion = "last-lts";
const latestVersion = "latest";
const nodes = {
0: {binVersion: latestVersion},
- 1: {binVersion: lastStableVersion},
- 2: {binVersion: lastStableVersion}
+ 1: {binVersion: lastLTSVersion},
+ 2: {binVersion: lastLTSVersion}
};
const rst = new ReplSetTest({nodes: nodes});
@@ -21,13 +21,13 @@ rst.startSet();
rst.initiate();
const latestBinVersion = MongoRunner.getBinVersionFor(latestVersion);
-const lastStableBinVersion = MongoRunner.getBinVersionFor(lastStableVersion);
+const lastLTSBinVersion = MongoRunner.getBinVersionFor(lastLTSVersion);
for (let i = 0; i < rst.nodes.length; i++) {
const admin = rst.nodes[i].getDB("admin");
const serverStatus = admin.serverStatus();
const expectedVersion =
- nodes[i]["binVersion"] === latestVersion ? latestBinVersion : lastStableBinVersion;
+ nodes[i]["binVersion"] === latestVersion ? latestBinVersion : lastLTSBinVersion;
const actualVersion = serverStatus["version"];
assert(MongoRunner.areBinVersionsTheSame(actualVersion, expectedVersion));
}
diff --git a/jstests/multiVersion/pending_chunk.js b/jstests/multiVersion/pending_chunk.js
index 5d8b938e535..942d8d3b37b 100644
--- a/jstests/multiVersion/pending_chunk.js
+++ b/jstests/multiVersion/pending_chunk.js
@@ -13,8 +13,7 @@ var coll = mongos.getCollection('foo.bar');
var ns = coll.getFullName();
var dbName = coll.getDB().getName();
-assert.commandWorked(
- st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(st.s.getDB("admin").runCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
assert.commandWorked(admin.runCommand({enableSharding: dbName}));
printjson(admin.runCommand({movePrimary: dbName, to: st.shard0.shardName}));
diff --git a/jstests/multiVersion/rename_across_dbs_last_stable_secondary.js b/jstests/multiVersion/rename_across_dbs_last_lts_primary.js
index 1e32fbe4fbd..c6c5aad3fc7 100644
--- a/jstests/multiVersion/rename_across_dbs_last_stable_secondary.js
+++ b/jstests/multiVersion/rename_across_dbs_last_lts_primary.js
@@ -3,10 +3,10 @@
load("jstests/replsets/libs/rename_across_dbs.js");
-const nodes = [{binVersion: 'latest'}, {binVersion: 'last-stable'}, {}];
+const nodes = [{binVersion: 'last-lts'}, {binVersion: 'latest'}, {}];
const options = {
nodes: nodes,
- setFeatureCompatibilityVersion: lastStableFCV,
+ setFeatureCompatibilityVersion: lastLTSFCV,
};
new RenameAcrossDatabasesTest(options).run();
diff --git a/jstests/multiVersion/rename_across_dbs_last_stable_primary_drop_target.js b/jstests/multiVersion/rename_across_dbs_last_lts_primary_drop_target.js
index acaff7af4ff..728bc7302fd 100644
--- a/jstests/multiVersion/rename_across_dbs_last_stable_primary_drop_target.js
+++ b/jstests/multiVersion/rename_across_dbs_last_lts_primary_drop_target.js
@@ -3,10 +3,10 @@
load("jstests/replsets/libs/rename_across_dbs.js");
-const nodes = [{binVersion: 'last-stable'}, {binVersion: 'latest'}, {}];
+const nodes = [{binVersion: 'last-lts'}, {binVersion: 'latest'}, {}];
const options = {
nodes: nodes,
- setFeatureCompatibilityVersion: lastStableFCV,
+ setFeatureCompatibilityVersion: lastLTSFCV,
dropTarget: true,
};
diff --git a/jstests/multiVersion/rename_across_dbs_last_stable_primary.js b/jstests/multiVersion/rename_across_dbs_last_lts_secondary.js
index 11dcd2ee9f3..78b86afa86d 100644
--- a/jstests/multiVersion/rename_across_dbs_last_stable_primary.js
+++ b/jstests/multiVersion/rename_across_dbs_last_lts_secondary.js
@@ -3,10 +3,10 @@
load("jstests/replsets/libs/rename_across_dbs.js");
-const nodes = [{binVersion: 'last-stable'}, {binVersion: 'latest'}, {}];
+const nodes = [{binVersion: 'latest'}, {binVersion: 'last-lts'}, {}];
const options = {
nodes: nodes,
- setFeatureCompatibilityVersion: lastStableFCV,
+ setFeatureCompatibilityVersion: lastLTSFCV,
};
new RenameAcrossDatabasesTest(options).run();
diff --git a/jstests/multiVersion/rename_across_dbs_last_stable_secondary_drop_target.js b/jstests/multiVersion/rename_across_dbs_last_lts_secondary_drop_target.js
index fea67053891..d9750444972 100644
--- a/jstests/multiVersion/rename_across_dbs_last_stable_secondary_drop_target.js
+++ b/jstests/multiVersion/rename_across_dbs_last_lts_secondary_drop_target.js
@@ -3,10 +3,10 @@
load("jstests/replsets/libs/rename_across_dbs.js");
-const nodes = [{binVersion: 'latest'}, {binVersion: 'last-stable'}, {}];
+const nodes = [{binVersion: 'latest'}, {binVersion: 'last-lts'}, {}];
const options = {
nodes: nodes,
- setFeatureCompatibilityVersion: lastStableFCV,
+ setFeatureCompatibilityVersion: lastLTSFCV,
dropTarget: true,
};
diff --git a/jstests/multiVersion/skip_level_upgrade.js b/jstests/multiVersion/skip_level_upgrade.js
index 436428ac011..d0ea00222aa 100644
--- a/jstests/multiVersion/skip_level_upgrade.js
+++ b/jstests/multiVersion/skip_level_upgrade.js
@@ -2,7 +2,7 @@
* Tests that skip level upgrades from old binary versions to the latest binary version are both
* not successful and do not corrupt anything to prevent correct binary version start up.
*
- * For each binary version older than last-stable:
+ * For each binary version older than last-lts:
* - Start a clean node of that version
* - Create a new collection.
* - Insert a document into the new collection.
@@ -27,7 +27,7 @@ const defaultOptions = {
noCleanData: true,
};
-// This lists all binary versions older than the last-stable version.
+// This lists all binary versions older than the last-lts version.
// TODO SERVER-26792: In the future, we should have a common place from which both the
// multiversion setup procedure and this test get information about supported major releases.
const versions = [
diff --git a/jstests/multiVersion/upgrade_downgrade_cluster.js b/jstests/multiVersion/upgrade_downgrade_cluster.js
index f699d3df981..2addbdad39c 100644
--- a/jstests/multiVersion/upgrade_downgrade_cluster.js
+++ b/jstests/multiVersion/upgrade_downgrade_cluster.js
@@ -1,6 +1,6 @@
/**
* Tests that CRUD and aggregation commands through the mongos continue to work as expected on both
- * sharded and unsharded collection at each step of cluster upgrade from last-stable to latest.
+ * sharded and unsharded collection at each step of cluster upgrade from last-lts to latest.
*/
(function() {
"use strict";
@@ -37,11 +37,11 @@ var st = new ShardingTest({
shards: 2,
mongos: 1,
other: {
- mongosOptions: {binVersion: "last-stable"},
- configOptions: {binVersion: "last-stable"},
- shardOptions: {binVersion: "last-stable"},
+ mongosOptions: {binVersion: "last-lts"},
+ configOptions: {binVersion: "last-lts"},
+ shardOptions: {binVersion: "last-lts"},
- rsOptions: {binVersion: "last-stable"},
+ rsOptions: {binVersion: "last-lts"},
rs: true,
}
});
@@ -120,7 +120,7 @@ assert.eq(version.excluding, undefined);
// Downgrade back
jsTest.log('downgrading mongos servers');
-st.upgradeCluster("last-stable", {upgradeConfigs: false, upgradeShards: false});
+st.upgradeCluster("last-lts", {upgradeConfigs: false, upgradeShards: false});
testCRUDAndAgg(st.s.getDB('unsharded'));
testCRUDAndAgg(st.s.getDB('sharded'));
@@ -132,7 +132,7 @@ testCRUDAndAgg(st.s.getDB('unsharded'));
testCRUDAndAgg(st.s.getDB('sharded'));
jsTest.log('downgrading shard servers');
-st.upgradeCluster("last-stable", {upgradeMongos: false, upgradeConfigs: false});
+st.upgradeCluster("last-lts", {upgradeMongos: false, upgradeConfigs: false});
awaitRSClientHosts(st.s, st.rs0.getPrimary(), {ok: true, ismaster: true});
awaitRSClientHosts(st.s, st.rs1.getPrimary(), {ok: true, ismaster: true});
@@ -147,7 +147,7 @@ testCRUDAndAgg(st.s.getDB('unsharded'));
testCRUDAndAgg(st.s.getDB('sharded'));
jsTest.log('downgrading config servers');
-st.upgradeCluster("last-stable", {upgradeMongos: false, upgradeShards: false});
+st.upgradeCluster("last-lts", {upgradeMongos: false, upgradeShards: false});
testCRUDAndAgg(st.s.getDB('unsharded'));
testCRUDAndAgg(st.s.getDB('sharded'));
diff --git a/jstests/multiVersion/verify_versions_test.js b/jstests/multiVersion/verify_versions_test.js
index 535bdd0c142..f1a574c9b63 100644
--- a/jstests/multiVersion/verify_versions_test.js
+++ b/jstests/multiVersion/verify_versions_test.js
@@ -2,7 +2,7 @@
* These tests check the version comparison logic in the multiversion test support code.
*
* In particular, it tests that the shell version (returned by version()) compares equal to
- * "latest", not equal to "last-stable", and x.y compares equal to x.y.z, but that x.w does
+ * "latest", not equal to "last-lts", and x.y compares equal to x.y.z, but that x.w does
* not.
*/
@@ -45,7 +45,7 @@ function assertBinVersionComparesEqual(v1, v2) {
assertBinVersionsEqual("4.5", version());
assertBinVersionComparesEqual("4.5", version());
-// "latest" is the same version as the shell, "last-stable" is not.
+// "latest" is the same version as the shell, "last-lts" is not.
assertBinVersionsEqual("latest", version());
assertBinVersionsEqual("", "latest");
assertBinVersionsEqual("", version());
@@ -54,11 +54,11 @@ assertBinVersionComparesEqual("latest", version());
assertBinVersionComparesEqual("", "latest");
assertBinVersionComparesEqual("", version());
-assertBinVersionsNotEqual("latest", "last-stable");
-assertBinVersionsNotEqual("last-stable", version());
+assertBinVersionsNotEqual("latest", "last-lts");
+assertBinVersionsNotEqual("last-lts", version());
-assertBinVersionComparesHigher("latest", "last-stable");
-assertBinVersionComparesLower("last-stable", version());
+assertBinVersionComparesHigher("latest", "last-lts");
+assertBinVersionComparesLower("last-lts", version());
// 3.2 means 3.2.z for any value of z. It does not mean 3.0 or 3.0.w.
assertBinVersionsEqual("3.2", "3.2.4");
diff --git a/jstests/noPassthrough/apply_ops_mode.js b/jstests/noPassthrough/apply_ops_mode.js
index bc7d15d3424..9f069e2eca8 100644
--- a/jstests/noPassthrough/apply_ops_mode.js
+++ b/jstests/noPassthrough/apply_ops_mode.js
@@ -61,7 +61,7 @@ const systemVersionColl = adminDB.getCollection("system.version");
var updateOp = {
op: 'u',
ns: systemVersionColl.getFullName(),
- o: {_id: "featureCompatibilityVersion", version: lastStableFCV},
+ o: {_id: "featureCompatibilityVersion", version: lastLTSFCV},
o2: {_id: "featureCompatibilityVersion"}
};
assert.commandFailed(db.adminCommand({applyOps: [updateOp], oplogApplicationMode: "InitialSync"}));
diff --git a/jstests/noPassthrough/feature_compatibility_version.js b/jstests/noPassthrough/feature_compatibility_version.js
index 47f992f3b22..ade4d8b4fe7 100644
--- a/jstests/noPassthrough/feature_compatibility_version.js
+++ b/jstests/noPassthrough/feature_compatibility_version.js
@@ -15,30 +15,29 @@ checkFCV(adminDB, latestFCV);
// Updating the featureCompatibilityVersion document changes the featureCompatibilityVersion
// server parameter.
assert.commandWorked(adminDB.system.version.update({_id: "featureCompatibilityVersion"},
- {$set: {version: lastStableFCV}}));
-checkFCV(adminDB, lastStableFCV);
+ {$set: {version: lastLTSFCV}}));
+checkFCV(adminDB, lastLTSFCV);
-assert.commandWorked(
- adminDB.system.version.update({_id: "featureCompatibilityVersion"},
- {$set: {version: lastStableFCV, targetVersion: latestFCV}}));
-checkFCV(adminDB, lastStableFCV, latestFCV);
+assert.commandWorked(adminDB.system.version.update(
+ {_id: "featureCompatibilityVersion"}, {$set: {version: lastLTSFCV, targetVersion: latestFCV}}));
+checkFCV(adminDB, lastLTSFCV, latestFCV);
assert.commandWorked(adminDB.system.version.update(
{_id: "featureCompatibilityVersion"},
- {$set: {version: lastStableFCV, targetVersion: lastStableFCV, previousVersion: latestFCV}}));
-checkFCV(adminDB, lastStableFCV, lastStableFCV);
+ {$set: {version: lastLTSFCV, targetVersion: lastLTSFCV, previousVersion: latestFCV}}));
+checkFCV(adminDB, lastLTSFCV, lastLTSFCV);
// When present, "previousVersion" will always be the latestFCV.
assert.writeErrorWithCode(adminDB.system.version.update({_id: "featureCompatibilityVersion"},
- {$set: {previousVersion: lastStableFCV}}),
+ {$set: {previousVersion: lastLTSFCV}}),
4926901);
-checkFCV(adminDB, lastStableFCV, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV, lastLTSFCV);
// Downgrading FCV must have a 'previousVersion' field.
assert.writeErrorWithCode(adminDB.system.version.update({_id: "featureCompatibilityVersion"},
{$unset: {previousVersion: true}}),
4926902);
-checkFCV(adminDB, lastStableFCV, lastStableFCV);
+checkFCV(adminDB, lastLTSFCV, lastLTSFCV);
assert.commandWorked(adminDB.system.version.update(
{_id: "featureCompatibilityVersion"},
@@ -53,7 +52,7 @@ checkFCV(adminDB, latestFCV);
// Updating the featureCompatibilityVersion document with an invalid targetVersion fails.
assert.writeErrorWithCode(adminDB.system.version.update({_id: "featureCompatibilityVersion"},
- {$set: {targetVersion: lastStableFCV}}),
+ {$set: {targetVersion: lastLTSFCV}}),
4926904);
checkFCV(adminDB, latestFCV);
diff --git a/jstests/noPassthrough/index_downgrade_fcv.js b/jstests/noPassthrough/index_downgrade_fcv.js
index 1f3d0e4e90d..e2b6f565a34 100644
--- a/jstests/noPassthrough/index_downgrade_fcv.js
+++ b/jstests/noPassthrough/index_downgrade_fcv.js
@@ -36,7 +36,7 @@ IndexBuildTest.waitForIndexBuildToScanCollection(testDB, coll.getName(), 'a_1');
// Downgrade the primary using the setFeatureCompatibilityVersion command.
try {
- assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
} finally {
IndexBuildTest.resumeIndexBuilds(primary);
}
@@ -49,7 +49,7 @@ IndexBuildTest.assertIndexes(coll, 2, ['_id_', 'a_1']);
// This confirms that the downgrade command will complete successfully after the index build has
// completed.
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
rst.stopSet();
})();
diff --git a/jstests/noPassthrough/resumable_index_build_downgrade.js b/jstests/noPassthrough/resumable_index_build_downgrade.js
index 51e985c718a..7c0896e6480 100644
--- a/jstests/noPassthrough/resumable_index_build_downgrade.js
+++ b/jstests/noPassthrough/resumable_index_build_downgrade.js
@@ -21,7 +21,7 @@ const testDB = primary.getDB("test");
const coll = testDB.getCollection(collName);
assert.commandWorked(coll.insert({a: 1}));
-assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(testDB.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
const fp = configureFailPoint(primary, "leaveIndexBuildUnfinishedForShutdown");
diff --git a/jstests/noPassthrough/validate_hook_resume_fcv_upgrade.js b/jstests/noPassthrough/validate_hook_resume_fcv_upgrade.js
index 3251c8fd30e..768acfde7fb 100644
--- a/jstests/noPassthrough/validate_hook_resume_fcv_upgrade.js
+++ b/jstests/noPassthrough/validate_hook_resume_fcv_upgrade.js
@@ -83,7 +83,7 @@ function runValidateHook(testCase) {
function testStandalone(additionalSetupFn, {
expectedAtTeardownFCV,
- expectedSetLastStableFCV: expectedSetLastStableFCV = 0,
+ expectedSetLastLTSFCV: expectedSetLastLTSFCV = 0,
expectedSetLatestFCV: expectedSetLatestFCV = 0
} = {}) {
const conn =
@@ -111,11 +111,11 @@ function testStandalone(additionalSetupFn, {
countMatches(pattern, output),
"expected to find " + tojson(pattern) + " from mongod in the log output");
- for (let [targetVersion, expectedCount] of [[lastStableFCV, expectedSetLastStableFCV],
+ for (let [targetVersion, expectedCount] of [[lastLTSFCV, expectedSetLastLTSFCV],
[latestFCV, expectedSetLatestFCV]]) {
// Since the additionalSetupFn() function may run the setFeatureCompatibilityVersion
// command and we don't have a guarantee those log messages were cleared when
- // clearRawMongoProgramOutput() was called, we assert 'expectedSetLastStableFCV' and
+ // clearRawMongoProgramOutput() was called, we assert 'expectedSetLastLTSFCV' and
// 'expectedSetLatestFCV' as lower bounds.
const pattern = makePatternForSetFCV(targetVersion);
assert.lte(expectedCount,
@@ -163,7 +163,7 @@ function forceInterruptedUpgradeOrDowngrade(conn, targetVersion) {
conn.adminCommand({getParameter: 1, featureCompatibilityVersion: 1}));
if (res.featureCompatibilityVersion.hasOwnProperty("targetVersion")) {
- checkFCV(conn.getDB("admin"), lastStableFCV, targetVersion);
+ checkFCV(conn.getDB("admin"), lastLTSFCV, targetVersion);
jsTest.log(`Reached partially downgraded state after ${attempts} attempts`);
return true;
}
@@ -173,8 +173,8 @@ function forceInterruptedUpgradeOrDowngrade(conn, targetVersion) {
// Note that we're using 'conn' rather than 'setFCVConn' to avoid the upgrade being
// interrupted.
assert.commandWorked(conn.adminCommand({
- setFeatureCompatibilityVersion: targetVersion === lastStableFCV ? latestFCV
- : lastStableFCV
+ setFeatureCompatibilityVersion: targetVersion === lastLTSFCV ? latestFCV
+ : lastLTSFCV
}));
},
"failed to get featureCompatibilityVersion document into a partially downgraded" +
@@ -192,35 +192,23 @@ function forceInterruptedUpgradeOrDowngrade(conn, targetVersion) {
}, {expectedAtTeardownFCV: latestFCV});
})();
-(function testStandaloneInLastStableFCV() {
+(function testStandaloneInLastLTSFCV() {
testStandalone(conn => {
- assert.commandWorked(conn.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
- checkFCV(conn.getDB("admin"), lastStableFCV);
- }, {
- expectedAtTeardownFCV: lastStableFCV,
- expectedSetLastStableFCV: 1,
- expectedSetLatestFCV: 1
- });
+ assert.commandWorked(conn.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+ checkFCV(conn.getDB("admin"), lastLTSFCV);
+ }, {expectedAtTeardownFCV: lastLTSFCV, expectedSetLastLTSFCV: 1, expectedSetLatestFCV: 1});
})();
(function testStandaloneWithInterruptedFCVDowngrade() {
testStandalone(conn => {
- forceInterruptedUpgradeOrDowngrade(conn, lastStableFCV);
- }, {
- expectedAtTeardownFCV: lastStableFCV,
- expectedSetLastStableFCV: 2,
- expectedSetLatestFCV: 1
- });
+ forceInterruptedUpgradeOrDowngrade(conn, lastLTSFCV);
+ }, {expectedAtTeardownFCV: lastLTSFCV, expectedSetLastLTSFCV: 2, expectedSetLatestFCV: 1});
})();
(function testStandaloneWithInterruptedFCVUpgrade() {
testStandalone(conn => {
- assert.commandWorked(conn.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ assert.commandWorked(conn.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
forceInterruptedUpgradeOrDowngrade(conn, latestFCV);
- }, {
- expectedAtTeardownFCV: lastStableFCV,
- expectedSetLastStableFCV: 1,
- expectedSetLatestFCV: 1
- });
+ }, {expectedAtTeardownFCV: lastLTSFCV, expectedSetLastLTSFCV: 1, expectedSetLatestFCV: 1});
})();
})();
diff --git a/jstests/noPassthroughWithMongod/isMaster_feature_compatibility_version.js b/jstests/noPassthroughWithMongod/isMaster_feature_compatibility_version.js
index 9cace458341..7de5e1f1659 100644
--- a/jstests/noPassthroughWithMongod/isMaster_feature_compatibility_version.js
+++ b/jstests/noPassthroughWithMongod/isMaster_feature_compatibility_version.js
@@ -28,7 +28,7 @@ assert.eq(res.minWireVersion, res.maxWireVersion, tojson(res));
// returns minWireVersion == maxWireVersion.
assert.commandWorked(
adminDB.system.version.update({_id: "featureCompatibilityVersion"},
- {$set: {version: lastStableFCV, targetVersion: latestFCV}},
+ {$set: {version: lastLTSFCV, targetVersion: latestFCV}},
{writeConcern: {w: 1}}));
res = adminDB.runCommand(isMasterCommand);
assert.commandWorked(res);
@@ -38,7 +38,7 @@ assert.eq(res.minWireVersion, res.maxWireVersion, tojson(res));
// returns minWireVersion == maxWireVersion.
assert.commandWorked(adminDB.system.version.update(
{_id: "featureCompatibilityVersion"},
- {$set: {version: lastStableFCV, targetVersion: lastStableFCV, previousVersion: latestFCV}},
+ {$set: {version: lastLTSFCV, targetVersion: lastLTSFCV, previousVersion: latestFCV}},
{writeConcern: {w: 1}}));
res = adminDB.runCommand(isMasterCommand);
assert.commandWorked(res);
@@ -47,7 +47,7 @@ assert.eq(res.minWireVersion, res.maxWireVersion, tojson(res));
// When the featureCompatibilityVersion is equal to the downgrade version, running isMaster with
// internalClient returns minWireVersion + 1 == maxWireVersion.
assert.commandWorked(
- adminDB.runCommand({setFeatureCompatibilityVersion: lastStableFCV, writeConcern: {w: 1}}));
+ adminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, writeConcern: {w: 1}}));
res = adminDB.runCommand(isMasterCommand);
assert.commandWorked(res);
assert.eq(res.minWireVersion + 1, res.maxWireVersion, tojson(res));
diff --git a/jstests/replsets/awaitable_ismaster_fcv_change.js b/jstests/replsets/awaitable_ismaster_fcv_change.js
index 535306964a2..95add40a820 100644
--- a/jstests/replsets/awaitable_ismaster_fcv_change.js
+++ b/jstests/replsets/awaitable_ismaster_fcv_change.js
@@ -125,14 +125,14 @@ assert.eq(1, numAwaitingTopologyChangeOnSecondary);
jsTestLog("Downgrade the featureCompatibilityVersion.");
// Downgrading the FCV will cause the isMaster requests to respond on both primary and secondary.
-assert.commandWorked(primaryAdminDB.runCommand(
- {setFeatureCompatibilityVersion: lastStableFCV, writeConcern: {w: 1}}));
+assert.commandWorked(
+ primaryAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, writeConcern: {w: 1}}));
awaitIsMasterBeforeDowngradeFCVOnPrimary();
awaitIsMasterBeforeDowngradeFCVOnSecondary();
// Ensure the featureCompatibilityVersion document update has been replicated.
rst.awaitReplication();
-checkFCV(primaryAdminDB, lastStableFCV);
-checkFCV(secondaryAdminDB, lastStableFCV);
+checkFCV(primaryAdminDB, lastLTSFCV);
+checkFCV(secondaryAdminDB, lastLTSFCV);
// All isMaster requests should have been responded to after the FCV change.
numAwaitingTopologyChangeOnPrimary =
@@ -189,10 +189,10 @@ assert.eq(1, numAwaitingTopologyChangeOnPrimary);
assert.eq(1, numAwaitingTopologyChangeOnSecondary);
// Setting the FCV to the same version will not trigger an isMaster response.
-assert.commandWorked(primaryAdminDB.runCommand(
- {setFeatureCompatibilityVersion: lastStableFCV, writeConcern: {w: 1}}));
-checkFCV(primaryAdminDB, lastStableFCV);
-checkFCV(secondaryAdminDB, lastStableFCV);
+assert.commandWorked(
+ primaryAdminDB.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, writeConcern: {w: 1}}));
+checkFCV(primaryAdminDB, lastLTSFCV);
+checkFCV(secondaryAdminDB, lastLTSFCV);
// Each node still has one isMaster request waiting on a topology change.
numAwaitingTopologyChangeOnPrimary =
diff --git a/jstests/replsets/fcv_retryable_write_concern.js b/jstests/replsets/fcv_retryable_write_concern.js
index 099046f107f..f7c85f4f735 100644
--- a/jstests/replsets/fcv_retryable_write_concern.js
+++ b/jstests/replsets/fcv_retryable_write_concern.js
@@ -33,13 +33,13 @@ assert.commandWorked(
runWriteConcernRetryabilityTest(priConn,
secConn,
{
- setFeatureCompatibilityVersion: lastStableFCV,
+ setFeatureCompatibilityVersion: lastLTSFCV,
writeConcern: {w: 'majority', wtimeout: 200},
},
kNodes,
'admin');
-assert.commandWorked(priConn.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
-checkFCV(priConn.getDB('admin'), lastStableFCV);
+assert.commandWorked(priConn.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+checkFCV(priConn.getDB('admin'), lastLTSFCV);
runWriteConcernRetryabilityTest(priConn,
secConn,
diff --git a/jstests/replsets/initial_sync_fcv.js b/jstests/replsets/initial_sync_fcv.js
index 11e60dd07ac..015de237d98 100644
--- a/jstests/replsets/initial_sync_fcv.js
+++ b/jstests/replsets/initial_sync_fcv.js
@@ -80,16 +80,16 @@ function runInitialSync(cmd, initialFCV) {
// Ensure that attempting to downgrade the featureCompatibilityVersion during initial sync
// fails.
-runInitialSync({setFeatureCompatibilityVersion: lastStableFCV}, /*initialFCV*/ latestFCV);
+runInitialSync({setFeatureCompatibilityVersion: lastLTSFCV}, /*initialFCV*/ latestFCV);
// Ensure that attempting to upgrade the featureCompatibilityVersion during initial sync fails.
-runInitialSync({setFeatureCompatibilityVersion: latestFCV}, /*initialFCV*/ lastStableFCV);
+runInitialSync({setFeatureCompatibilityVersion: latestFCV}, /*initialFCV*/ lastLTSFCV);
// Modifications to the featureCompatibilityVersion document during initial sync should be
// caught and cause initial sync to fail.
runInitialSync({
update: 'system.version',
- updates: [{q: {_id: 'featureCompatibilityVersion'}, u: {'version': lastStableFCV}}]
+ updates: [{q: {_id: 'featureCompatibilityVersion'}, u: {'version': lastLTSFCV}}]
},
/*initialFCV*/ latestFCV);
diff --git a/jstests/replsets/initial_sync_fcv_downgrade.js b/jstests/replsets/initial_sync_fcv_downgrade.js
index 4d53969765c..c7986792ac4 100644
--- a/jstests/replsets/initial_sync_fcv_downgrade.js
+++ b/jstests/replsets/initial_sync_fcv_downgrade.js
@@ -95,8 +95,8 @@ assertVoteCount(primary, {
totalMembersCount: 2,
});
-jsTestLog("Downgrade FCV to " + lastStableFCV);
-assert.commandFailedWithCode(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}),
+jsTestLog("Downgrade FCV to " + lastLTSFCV);
+assert.commandFailedWithCode(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}),
ErrorCodes.ConflictingOperationInProgress);
checkFCV({version: latestFCV, targetVersion: null});
@@ -121,8 +121,8 @@ jsTestLog("Wait for reconfig command on primary to hang before storing the new c
checkLog.containsJson(primary, 4637900);
let fcvDowngradeThread = startParallelShell(() => {
- jsTestLog("Downgrade FCV to " + lastStableFCV);
- assert.commandFailedWithCode(db.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}),
+ jsTestLog("Downgrade FCV to " + lastLTSFCV);
+ assert.commandFailedWithCode(db.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}),
ErrorCodes.ConflictingOperationInProgress);
}, primary.port);
@@ -131,7 +131,7 @@ assert.soon(
() => {
return primaryAdminDB
.currentOp({
- "command.setFeatureCompatibilityVersion": lastStableFCV,
+ "command.setFeatureCompatibilityVersion": lastLTSFCV,
waitingForLock: true,
"lockStats.Mutex.acquireWaitCount.W": NumberLong(1)
})
@@ -190,10 +190,10 @@ assertVoteCount(primary, {
// FCV downgrade should fail as secondary0 config version is not up-to-date with primary's config
// version.
-jsTestLog("Downgrade FCV to " + lastStableFCV);
+jsTestLog("Downgrade FCV to " + lastLTSFCV);
const res = assert.commandFailedWithCode(
primary.adminCommand(
- {setFeatureCompatibilityVersion: lastStableFCV, "writeConcern": {wtimeout: 5 * 1000}}),
+ {setFeatureCompatibilityVersion: lastLTSFCV, "writeConcern": {wtimeout: 5 * 1000}}),
ErrorCodes.WriteConcernFailed);
assert(res.errmsg.startsWith(
"Failed to wait for the current replica set config to propagate to all nodes"),
@@ -207,10 +207,10 @@ assert.commandWorked(
testCleanup(newNode.conn);
// Scenario # 4: Test that no 'newlyAdded' members in repl config on fcv downgrade.
-jsTestLog("Downgrade FCV to " + lastStableFCV);
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+jsTestLog("Downgrade FCV to " + lastLTSFCV);
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
-checkFCV({version: lastStableFCV, targetVersion: null});
+checkFCV({version: lastLTSFCV, targetVersion: null});
// Check that the "newlyAdded" field doesn't exist in the config document on all nodes.
rst.nodes.forEach(function(node) {
diff --git a/jstests/replsets/initial_sync_fcv_upgrade.js b/jstests/replsets/initial_sync_fcv_upgrade.js
index c8178d8610f..047ebd09f13 100644
--- a/jstests/replsets/initial_sync_fcv_upgrade.js
+++ b/jstests/replsets/initial_sync_fcv_upgrade.js
@@ -25,7 +25,7 @@ const primaryColl = primaryDB[collName];
const primaryAdminDB = primary.getDB("admin");
// Set FCV to 4.4 to test the upgrade behavior.
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
assert.commandWorked(primary.adminCommand({clearLog: "global"}));
let startupParams = {};
diff --git a/jstests/replsets/noop_writes_wait_for_write_concern_fcv.js b/jstests/replsets/noop_writes_wait_for_write_concern_fcv.js
index b8df9053583..875e09acc13 100644
--- a/jstests/replsets/noop_writes_wait_for_write_concern_fcv.js
+++ b/jstests/replsets/noop_writes_wait_for_write_concern_fcv.js
@@ -1,7 +1,7 @@
/**
* Tests that a no-op setFeatureCompatibilityVersion request still waits for write concern.
*
- * This tests behavior on both latest and last-stable FCVs.
+ * This tests behavior on both latest and last-lts FCVs.
* @tags: [multiversion_incompatible]
*/
(function() {
@@ -69,6 +69,6 @@ function testFCVNoop(targetVersion) {
replTest.stopSet();
}
-testFCVNoop(lastStableFCV);
+testFCVNoop(lastLTSFCV);
testFCVNoop(latestFCV);
})();
diff --git a/jstests/replsets/quiesce_mode_turned_off_in_fcv_44.js b/jstests/replsets/quiesce_mode_turned_off_in_fcv_44.js
index e1bfded6c14..06487587c4c 100644
--- a/jstests/replsets/quiesce_mode_turned_off_in_fcv_44.js
+++ b/jstests/replsets/quiesce_mode_turned_off_in_fcv_44.js
@@ -17,7 +17,7 @@ rst.initiateWithHighElectionTimeout();
const primary = rst.getPrimary();
// Set FCV to 4.4 to test that quiesce mode is ignored.
-assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
assert.commandWorked(primary.adminCommand({clearLog: "global"}));
// Shutdown the node.
diff --git a/jstests/replsets/reconfig_prohibits_w0.js b/jstests/replsets/reconfig_prohibits_w0.js
index cd717932a05..90fe4d8705a 100644
--- a/jstests/replsets/reconfig_prohibits_w0.js
+++ b/jstests/replsets/reconfig_prohibits_w0.js
@@ -18,7 +18,7 @@ function testReconfig(gleDefaults) {
conf.version++;
var response = admin.runCommand({replSetReconfig: conf});
- // TODO (SERVER-48065): Once 4.6 is last-stable, remove
+ // TODO (SERVER-48065): Once 4.6 is last-lts, remove
// ErrorCodes.NewReplicaSetConfigurationIncompatible.
assert.commandFailedWithCode(
response,
diff --git a/jstests/replsets/rollback_set_fcv.js b/jstests/replsets/rollback_set_fcv.js
index 7a787532e7b..63ca199c6fe 100644
--- a/jstests/replsets/rollback_set_fcv.js
+++ b/jstests/replsets/rollback_set_fcv.js
@@ -32,7 +32,7 @@ function rollbackFCVFromDowngradingOrUpgrading(fromFCV, toFCV) {
// Ensure the cluster starts at the correct FCV.
assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: toFCV}));
- jsTestLog("Testing rolling back FCV from {version: " + lastStableFCV +
+ jsTestLog("Testing rolling back FCV from {version: " + lastLTSFCV +
", targetVersion: " + fromFCV + "} to {version: " + toFCV + "}");
rollbackTest.transitionToRollbackOperations();
@@ -74,7 +74,7 @@ function rollbackFCVFromDowngradedOrUpgraded(fromFCV, toFCV, failPoint) {
assert.commandWorked(primary.adminCommand({setFeatureCompatibilityVersion: toFCV}));
jsTestLog("Testing rolling back FCV from {version: " + fromFCV +
- "} to {version: " + lastStableFCV + ", targetVersion: " + fromFCV + "}");
+ "} to {version: " + lastLTSFCV + ", targetVersion: " + fromFCV + "}");
// A failpoint to hang right before unsetting the targetVersion.
const hangBeforeUnsettingTargetVersion = configureFailPoint(primary, failPoint);
@@ -92,13 +92,13 @@ function rollbackFCVFromDowngradedOrUpgraded(fromFCV, toFCV, failPoint) {
}, "Failed waiting for server to unset the targetVersion or to set the FCV to " + fromFCV);
rollbackTest.transitionToSyncSourceOperationsBeforeRollback();
// The secondary should never have received the update to unset the targetVersion.
- checkFCV(secondaryAdminDB, lastStableFCV, fromFCV);
+ checkFCV(secondaryAdminDB, lastLTSFCV, fromFCV);
rollbackTest.transitionToSyncSourceOperationsDuringRollback();
setFCVInParallel();
rollbackTest.transitionToSteadyStateOperations();
// The primary should have rolled back their FCV to contain the targetVersion.
- checkFCV(primaryAdminDB, lastStableFCV, fromFCV);
- checkFCV(secondaryAdminDB, lastStableFCV, fromFCV);
+ checkFCV(primaryAdminDB, lastLTSFCV, fromFCV);
+ checkFCV(secondaryAdminDB, lastLTSFCV, fromFCV);
let newPrimary = rollbackTest.getPrimary();
// As a rule, we forbid downgrading a node while a node is still in the upgrading state and
@@ -113,16 +113,16 @@ const testName = jsTest.name();
const rollbackTest = new RollbackTest(testName);
// Tests the case where we roll back the FCV state from downgrading to fully upgraded.
-rollbackFCVFromDowngradingOrUpgrading(lastStableFCV, latestFCV);
+rollbackFCVFromDowngradingOrUpgrading(lastLTSFCV, latestFCV);
// Tests the case where we roll back the FCV state from upgrading to fully downgraded.
-rollbackFCVFromDowngradingOrUpgrading(latestFCV, lastStableFCV);
+rollbackFCVFromDowngradingOrUpgrading(latestFCV, lastLTSFCV);
// Tests the case where we roll back the FCV state from fully downgraded to downgrading.
-rollbackFCVFromDowngradedOrUpgraded(lastStableFCV, latestFCV, "hangWhileDowngrading");
+rollbackFCVFromDowngradedOrUpgraded(lastLTSFCV, latestFCV, "hangWhileDowngrading");
// Tests the case where we roll back the FCV state from fully upgraded to upgrading.
-rollbackFCVFromDowngradedOrUpgraded(latestFCV, lastStableFCV, "hangWhileUpgrading");
+rollbackFCVFromDowngradedOrUpgraded(latestFCV, lastLTSFCV, "hangWhileUpgrading");
rollbackTest.stop();
}()); \ No newline at end of file
diff --git a/jstests/replsets/trigger_initial_stable_checkpoint.js b/jstests/replsets/trigger_initial_stable_checkpoint.js
index 735f8e7a562..e76c07ddf8a 100644
--- a/jstests/replsets/trigger_initial_stable_checkpoint.js
+++ b/jstests/replsets/trigger_initial_stable_checkpoint.js
@@ -1,7 +1,7 @@
/**
* Ensure that we properly trigger a stable checkpoint when starting up a replica set node.
*
- * We don't support unclean shutdowns with restarts into a last-stable binary.
+ * We don't support unclean shutdowns with restarts into a last-lts binary.
* @tags: [requires_persistence, multiversion_incompatible]
*/
(function() {
diff --git a/jstests/sharding/autodiscover_config_rs_from_secondary.js b/jstests/sharding/autodiscover_config_rs_from_secondary.js
index 2a8c3cd6c36..9d9bd4adbd5 100644
--- a/jstests/sharding/autodiscover_config_rs_from_secondary.js
+++ b/jstests/sharding/autodiscover_config_rs_from_secondary.js
@@ -14,15 +14,15 @@ conf.writeConcernMajorityJournalDefault = true;
rst.initiate(conf);
// Config servers always start at the latest available FCV for the binary. This poses a problem
-// when this test is run in the mixed version suite because mongos will be 'last-stable' and if
+// when this test is run in the mixed version suite because mongos will be 'last-lts' and if
// this node is of the latest binary, it will report itself as the 'latest' FCV, which would
// cause mongos to refuse to connect to it and shutdown.
//
// In order to work around this, in the mixed version suite, be pessimistic and always set this
-// node to the 'last-stable' FCV
+// node to the 'last-lts' FCV
if (jsTestOptions().shardMixedBinVersions) {
assert.commandWorked(
- rst.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ rst.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
rst.awaitReplication();
}
diff --git a/jstests/sharding/autosplit_include.js b/jstests/sharding/autosplit_include.js
index 1247a39385c..84dc5d16a19 100644
--- a/jstests/sharding/autosplit_include.js
+++ b/jstests/sharding/autosplit_include.js
@@ -5,7 +5,7 @@ function waitForOngoingChunkSplits(shardingTest) {
shardingTest.forEachConnection(function(conn) {
var res = conn.getDB("admin").runCommand({waitForOngoingChunkSplits: 1});
if (!res.hasOwnProperty("ok")) {
- // This is expected in the sharding_last_stable suite, so we can't assert.commandWorked,
+ // This is expected in the sharding_last_lts suite, so we can't assert.commandWorked,
// but it's good to put a log message in case it fails at some point outside of this
// suite
print("Command waitForOngoingChunkSplits failed");
diff --git a/jstests/sharding/config_rs_change.js b/jstests/sharding/config_rs_change.js
index 80bb1caa4c9..34cdcab4661 100644
--- a/jstests/sharding/config_rs_change.js
+++ b/jstests/sharding/config_rs_change.js
@@ -8,10 +8,10 @@ var replConfig = configRS.getReplSetConfig();
replConfig.configsvr = true;
configRS.initiate(replConfig);
-// Ensure the featureCompatibilityVersion is lastStableFCV so that the mongos can connect if its
-// binary version is lastStable.
+// Ensure the featureCompatibilityVersion is lastLTSFCV so that the mongos can connect if its
+// binary version is lastLTS.
assert.commandWorked(
- configRS.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ configRS.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// Build a seed list for the config servers to pass to mongos that uses "localhost" for the
// hostnames even though the replica set config uses the hostname.
diff --git a/jstests/sharding/convert_to_and_from_sharded.js b/jstests/sharding/convert_to_and_from_sharded.js
index a4779afbcf7..2541b982e36 100644
--- a/jstests/sharding/convert_to_and_from_sharded.js
+++ b/jstests/sharding/convert_to_and_from_sharded.js
@@ -36,14 +36,14 @@ var priConn = replShard.getPrimary();
// Starting a brand new replica set without '--shardsvr' will cause the FCV to be written as the
// latest available for that binary. This poses a problem when this test is run in the mixed
-// version suite because mongos will be 'last-stable' and if this node is of the latest binary,
+// version suite because mongos will be 'last-lts' and if this node is of the latest binary,
// it will report itself as the 'latest' FCV, which would cause mongos to refuse to connect to
// it and shutdown.
//
// In order to work around this, in the mixed version suite, be pessimistic and always set this
-// node to the 'last-stable' FCV
+// node to the 'last-lts' FCV
if (jsTestOptions().shardMixedBinVersions) {
- assert.commandWorked(priConn.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ assert.commandWorked(priConn.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
replShard.awaitReplication();
}
diff --git a/jstests/sharding/database_versioning_all_commands.js b/jstests/sharding/database_versioning_all_commands.js
index 67f40de5816..f0db7782f84 100644
--- a/jstests/sharding/database_versioning_all_commands.js
+++ b/jstests/sharding/database_versioning_all_commands.js
@@ -5,7 +5,7 @@
(function() {
'use strict';
-load('jstests/sharding/libs/last_stable_mongos_commands.js');
+load('jstests/sharding/libs/last_lts_mongos_commands.js');
function getNewDbName(dbName) {
if (!getNewDbName.counter) {
diff --git a/jstests/sharding/empty_cluster_init.js b/jstests/sharding/empty_cluster_init.js
index 6a67d8abfee..612cabd1df1 100644
--- a/jstests/sharding/empty_cluster_init.js
+++ b/jstests/sharding/empty_cluster_init.js
@@ -4,7 +4,7 @@
// version initialization.
//
// This test manually starts routers with the latest binary which can't connect to config server
-// nodes using the last-stable binary because their wire versions are incompatible.
+// nodes using the last-lts binary because their wire versions are incompatible.
// @tags: [multiversion_incompatible]
//
diff --git a/jstests/sharding/kill_sessions.js b/jstests/sharding/kill_sessions.js
index 583bb4c6352..a9900fe7e74 100644
--- a/jstests/sharding/kill_sessions.js
+++ b/jstests/sharding/kill_sessions.js
@@ -2,7 +2,7 @@
* Run the kill_sessions tests against a sharded cluster.
*
* TODO SERVER-45385: These tests can be enabled in multiversion once the logging of session cursor
- * cleanup has been backported and released in last-stable.
+ * cleanup has been backported and released in last-lts.
* @tags: [multiversion_incompatible]
*/
diff --git a/jstests/sharding/libs/last_stable_mongod_commands.js b/jstests/sharding/libs/last_lts_mongod_commands.js
index 371748a1c2c..371748a1c2c 100644
--- a/jstests/sharding/libs/last_stable_mongod_commands.js
+++ b/jstests/sharding/libs/last_lts_mongod_commands.js
diff --git a/jstests/sharding/libs/last_stable_mongos_commands.js b/jstests/sharding/libs/last_lts_mongos_commands.js
index 27b757b1eff..0eda44d4ad7 100644
--- a/jstests/sharding/libs/last_stable_mongos_commands.js
+++ b/jstests/sharding/libs/last_lts_mongos_commands.js
@@ -1,5 +1,5 @@
// These commands were removed from mongos since the last LTS version, but will still appear in the
-// listCommands output of a last LTS version mongos. A last-stable mongos will be unable to
+// listCommands output of a last LTS version mongos. A last-lts mongos will be unable to
// run a command on a latest version shard that no longer supports that command. To increase test
// coverage and allow us to run on same- and mixed-version suites, we allow these commands to have a
// test defined without always existing on the servers being used.
diff --git a/jstests/sharding/max_time_ms_sharded_new_commands.js b/jstests/sharding/max_time_ms_sharded_new_commands.js
index 562bb495256..28046963b75 100644
--- a/jstests/sharding/max_time_ms_sharded_new_commands.js
+++ b/jstests/sharding/max_time_ms_sharded_new_commands.js
@@ -22,16 +22,14 @@ var configureMaxTimeAlwaysTimeOut = function(mode) {
jsTestLog("Positive test for setFeatureCompatibilityVersion");
configureMaxTimeAlwaysTimeOut("alwaysOn");
assert.commandFailedWithCode(
- admin.runCommand(
- {setFeatureCompatibilityVersion: lastStableFCV, maxTimeMS: 1000 * 60 * 60 * 24}),
+ admin.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, maxTimeMS: 1000 * 60 * 60 * 24}),
ErrorCodes.MaxTimeMSExpired,
"expected setFeatureCompatibilityVersion to fail due to maxTimeAlwaysTimeOut fail point");
jsTestLog("Negative test for setFeatureCompatibilityVersion to downgrade");
configureMaxTimeAlwaysTimeOut("off");
assert.commandWorked(
- admin.runCommand(
- {setFeatureCompatibilityVersion: lastStableFCV, maxTimeMS: 1000 * 60 * 60 * 24}),
+ admin.runCommand({setFeatureCompatibilityVersion: lastLTSFCV, maxTimeMS: 1000 * 60 * 60 * 24}),
"expected setFeatureCompatibilityVersion to not hit time limit in mongod");
jsTestLog("Negative test for setFeatureCompatibilityVersion to upgrade");
diff --git a/jstests/sharding/mongos_wait_csrs_initiate.js b/jstests/sharding/mongos_wait_csrs_initiate.js
index 80b18e969e4..2b20d2f49e4 100644
--- a/jstests/sharding/mongos_wait_csrs_initiate.js
+++ b/jstests/sharding/mongos_wait_csrs_initiate.js
@@ -14,10 +14,10 @@ assert.throws(function() {
jsTestLog("Initiating CSRS");
configRS.initiate(replConfig);
-// Ensure the featureCompatibilityVersion is lastStableFCV so that the mongos can connect if it is
-// binary version last-stable.
+// Ensure the featureCompatibilityVersion is lastLTSFCV so that the mongos can connect if it is
+// binary version last-lts.
assert.commandWorked(
- configRS.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ configRS.getPrimary().adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
jsTestLog("getting mongos");
var e;
diff --git a/jstests/sharding/read_write_concern_defaults_application.js b/jstests/sharding/read_write_concern_defaults_application.js
index b23c41d8247..9b4352f2793 100644
--- a/jstests/sharding/read_write_concern_defaults_application.js
+++ b/jstests/sharding/read_write_concern_defaults_application.js
@@ -33,7 +33,7 @@
load('jstests/libs/profiler.js');
load("jstests/libs/logv2_helpers.js");
-load('jstests/sharding/libs/last_stable_mongod_commands.js');
+load('jstests/sharding/libs/last_lts_mongod_commands.js');
let db = "test";
let coll = "foo";
diff --git a/jstests/sharding/safe_secondary_reads_drop_recreate.js b/jstests/sharding/safe_secondary_reads_drop_recreate.js
index 8371adae6a7..accf354cbb3 100644
--- a/jstests/sharding/safe_secondary_reads_drop_recreate.js
+++ b/jstests/sharding/safe_secondary_reads_drop_recreate.js
@@ -20,7 +20,7 @@
"use strict";
load('jstests/libs/profiler.js');
-load('jstests/sharding/libs/last_stable_mongos_commands.js');
+load('jstests/sharding/libs/last_lts_mongos_commands.js');
let db = "test";
let coll = "foo";
diff --git a/jstests/sharding/safe_secondary_reads_single_migration_suspend_range_deletion.js b/jstests/sharding/safe_secondary_reads_single_migration_suspend_range_deletion.js
index f6a2f2883b9..380c1a8a256 100644
--- a/jstests/sharding/safe_secondary_reads_single_migration_suspend_range_deletion.js
+++ b/jstests/sharding/safe_secondary_reads_single_migration_suspend_range_deletion.js
@@ -27,7 +27,7 @@
"use strict";
load('jstests/libs/profiler.js');
-load('jstests/sharding/libs/last_stable_mongos_commands.js');
+load('jstests/sharding/libs/last_lts_mongos_commands.js');
let db = "test";
let coll = "foo";
diff --git a/jstests/sharding/safe_secondary_reads_single_migration_waitForDelete.js b/jstests/sharding/safe_secondary_reads_single_migration_waitForDelete.js
index a3cf0781437..8ac795340cb 100644
--- a/jstests/sharding/safe_secondary_reads_single_migration_waitForDelete.js
+++ b/jstests/sharding/safe_secondary_reads_single_migration_waitForDelete.js
@@ -20,7 +20,7 @@
"use strict";
load('jstests/libs/profiler.js');
-load('jstests/sharding/libs/last_stable_mongos_commands.js');
+load('jstests/sharding/libs/last_lts_mongos_commands.js');
let db = "test";
let coll = "foo";
diff --git a/jstests/sharding/shard_existing_coll_chunk_count.js b/jstests/sharding/shard_existing_coll_chunk_count.js
index c883f30b03b..46e2cdba748 100644
--- a/jstests/sharding/shard_existing_coll_chunk_count.js
+++ b/jstests/sharding/shard_existing_coll_chunk_count.js
@@ -129,8 +129,8 @@ runCase({
});
// Lower chunksize to 1MB, and restart the mongod for it to take. We also
-// need to restart mongos for the case of the last-stable suite where the
-// shard is also last-stable.
+// need to restart mongos for the case of the last-lts suite where the
+// shard is also last-lts.
assert.commandWorked(
s.getDB("config").getCollection("settings").update({_id: "chunksize"}, {$set: {value: 1}}, {
upsert: true
diff --git a/jstests/sharding/test_stacked_migration_cleanup.js b/jstests/sharding/test_stacked_migration_cleanup.js
index d9dd62509bd..bfbcffd5790 100644
--- a/jstests/sharding/test_stacked_migration_cleanup.js
+++ b/jstests/sharding/test_stacked_migration_cleanup.js
@@ -3,7 +3,7 @@
(function() {
'use strict';
-const clusterInFCV44 = jsTestOptions().mongosBinVersion != 'last-stable';
+const clusterInFCV44 = jsTestOptions().mongosBinVersion != 'last-lts';
// start up a new sharded cluster
var st = new ShardingTest({shards: 2, mongos: 1});
diff --git a/jstests/sharding/transient_txn_error_labels_with_write_concern.js b/jstests/sharding/transient_txn_error_labels_with_write_concern.js
index eec87cdc4fa..37c54475706 100644
--- a/jstests/sharding/transient_txn_error_labels_with_write_concern.js
+++ b/jstests/sharding/transient_txn_error_labels_with_write_concern.js
@@ -11,7 +11,7 @@ load("jstests/libs/fail_point_util.js");
load("jstests/libs/write_concern_util.js");
load("jstests/replsets/rslib.js");
-const clusterInFCV44 = jsTestOptions().mongosBinVersion != 'last-stable';
+const clusterInFCV44 = jsTestOptions().mongosBinVersion != 'last-lts';
const dbName = "test";
const collName = "transient_txn_error_labels_with_write_concern";
diff --git a/src/mongo/db/repl/initial_syncer.cpp b/src/mongo/db/repl/initial_syncer.cpp
index 7e7013e4aaf..7fc437c2b6b 100644
--- a/src/mongo/db/repl/initial_syncer.cpp
+++ b/src/mongo/db/repl/initial_syncer.cpp
@@ -629,7 +629,7 @@ void InitialSyncer::_startInitialSyncAttemptCallback(
LOGV2_DEBUG(21168,
2,
- "Resetting feature compatibility version to last-stable. If the sync source is in "
+ "Resetting feature compatibility version to last-lts. If the sync source is in "
"latest feature compatibility version, we will find out when we clone the "
"server configuration collection (admin.system.version)");
serverGlobalParams.featureCompatibility.reset();
diff --git a/src/mongo/db/repl/initial_syncer_test.cpp b/src/mongo/db/repl/initial_syncer_test.cpp
index cfc1bff821b..4180a2a5b74 100644
--- a/src/mongo/db/repl/initial_syncer_test.cpp
+++ b/src/mongo/db/repl/initial_syncer_test.cpp
@@ -228,10 +228,10 @@ public:
/**
* Schedules and processes a successful response to the network request sent by InitialSyncer's
- * feature compatibility version fetcher. Always includes a valid fCV=last-stable document in
+ * feature compatibility version fetcher. Always includes a valid fCV=last-lts document in
* the response.
*/
- void processSuccessfulFCVFetcherResponseLastStable();
+ void processSuccessfulFCVFetcherResponseLastLTS();
void finishProcessingNetworkResponse() {
getNet()->runReadyNetworkOperations();
@@ -674,7 +674,7 @@ void assertFCVRequest(RemoteCommandRequest request) {
request.cmdObj.getObjectField("filter"));
}
-void InitialSyncerTest::processSuccessfulFCVFetcherResponseLastStable() {
+void InitialSyncerTest::processSuccessfulFCVFetcherResponseLastLTS() {
FeatureCompatibilityVersionDocument fcvDoc;
fcvDoc.setVersion(ServerGlobalParams::FeatureCompatibility::kLastLTS);
processSuccessfulFCVFetcherResponse({fcvDoc.toBSON()});
@@ -1686,7 +1686,7 @@ TEST_F(InitialSyncerTest,
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
initialSyncer->join();
@@ -1847,7 +1847,7 @@ TEST_F(InitialSyncerTest, InitialSyncerResendsFindCommandIfFCVFetcherReturnsRetr
ASSERT_TRUE(initialSyncer->isActive());
// FCV second attempt.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
void InitialSyncerTest::runInitialSyncWithBadFCVResponse(std::vector<BSONObj> docs,
@@ -2003,7 +2003,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate response to OplogFetcher so it has enough operations to reach end timestamp.
getOplogFetcher()->receiveBatch(1LL, {makeOplogEntryObj(1), lastOp.toBSON()});
@@ -2064,7 +2064,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughOplogFetcherCallbackError) {
net->runReadyNetworkOperations();
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an error response to the OplogFetcher.
getOplogFetcher()->simulateResponseError(
@@ -2118,7 +2118,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate cursor closing on sync source.
getOplogFetcher()->receiveBatch(0LL, {makeOplogEntryObj(1)});
@@ -2179,7 +2179,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate cursor closing on sync source.
getOplogFetcher()->receiveBatch(0LL,
@@ -2238,7 +2238,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate cursor closing on sync source.
getOplogFetcher()->receiveBatch(0LL,
@@ -2290,7 +2290,7 @@ TEST_F(InitialSyncerTest,
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
initialSyncer->join();
@@ -2325,7 +2325,7 @@ TEST_F(InitialSyncerTest, InitialSyncerCancelsBothOplogFetcherAndAllDatabaseClon
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
ASSERT_OK(initialSyncer->shutdown());
@@ -2384,7 +2384,7 @@ TEST_F(InitialSyncerTest,
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
initialSyncer->join();
@@ -2424,7 +2424,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2485,7 +2485,7 @@ TEST_F(InitialSyncerTest, InitialSyncerRetriesLastOplogEntryFetcherNetworkError)
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2567,7 +2567,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2640,7 +2640,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2691,7 +2691,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2752,7 +2752,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2804,7 +2804,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2871,7 +2871,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -2941,7 +2941,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3011,7 +3011,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3063,7 +3063,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3124,7 +3124,7 @@ TEST_F(InitialSyncerTest, InitialSyncerHandlesNetworkErrorsFromRollbackCheckerAf
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3193,7 +3193,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3259,7 +3259,7 @@ TEST_F(InitialSyncerTest, InitialSyncerCancelsLastRollbackCheckerOnShutdown) {
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3317,7 +3317,7 @@ TEST_F(InitialSyncerTest, InitialSyncerCancelsLastRollbackCheckerOnOplogFetcherC
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3379,7 +3379,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3474,7 +3474,7 @@ TEST_F(InitialSyncerTest, LastOpTimeShouldBeSetEvenIfNoOperationsAreAppliedAfter
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3532,7 +3532,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughGetNextApplierBatchScheduleE
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// The cloners start right after the FCV is received. The oplog entry fetcher associated
@@ -3593,7 +3593,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughSecondGetNextApplierBatchSch
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Before processing scheduled last oplog entry fetcher response, set flag in
@@ -3650,7 +3650,7 @@ TEST_F(InitialSyncerTest, InitialSyncerCancelsGetNextApplierBatchOnShutdown) {
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3709,7 +3709,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughGetNextApplierBatchInLockErr
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an OplogFetcher batch with bad oplog entries that will be added to the oplog
// buffer and processed by _getNextApplierBatch_inlock().
@@ -3778,7 +3778,7 @@ TEST_F(
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an OplogFetcher batch with bad oplog entries that will be added to the oplog
// buffer and processed by _getNextApplierBatch_inlock().
@@ -3840,7 +3840,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughMultiApplierScheduleError) {
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -3907,7 +3907,7 @@ TEST_F(InitialSyncerTest, InitialSyncerPassesThroughMultiApplierCallbackError) {
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an OplogFetcher batch that has enough operations to trigger MultiApplier.
getOplogFetcher()->receiveBatch(1LL, {makeOplogEntryObj(1), makeOplogEntryObj(2)});
@@ -3960,7 +3960,7 @@ TEST_F(InitialSyncerTest, InitialSyncerCancelsGetNextApplierBatchCallbackOnOplog
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -4016,7 +4016,7 @@ OplogEntry InitialSyncerTest::doInitialSyncWithOneBatch() {
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an OplogFetcher batch that has enough operations to reach end timestamp.
getOplogFetcher()->receiveBatch(1LL, {makeOplogEntryObj(1), lastOp.toBSON()});
@@ -4142,7 +4142,7 @@ TEST_F(InitialSyncerTest,
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate an OplogFetcher batch that has enough operations to reach end timestamp.
getOplogFetcher()->receiveBatch(
@@ -4222,7 +4222,7 @@ TEST_F(InitialSyncerTest, OplogOutOfOrderOnOplogFetchFinish) {
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate a batch to the OplogFetcher.
getOplogFetcher()->receiveBatch(1LL, {makeOplogEntryObj(1)});
@@ -4285,7 +4285,7 @@ TEST_F(InitialSyncerTest, GetInitialSyncProgressReturnsCorrectProgress) {
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Deliver cancellation to OplogFetcher
net->runReadyNetworkOperations();
@@ -4348,7 +4348,7 @@ TEST_F(InitialSyncerTest, GetInitialSyncProgressReturnsCorrectProgress) {
processSuccessfulLastOplogEntryFetcherResponse({makeOplogEntryObj(1)});
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
LOGV2(24170, "Done playing first successful response");
@@ -4593,7 +4593,7 @@ TEST_F(InitialSyncerTest, GetInitialSyncProgressReturnsCorrectProgressForNetwork
FailPointEnableBlock clonerFailpoint("hangAfterClonerStage",
kListDatabasesFailPointData);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
}
// Oplog entry associated with the stopTimestamp.
@@ -4762,7 +4762,7 @@ TEST_F(InitialSyncerTest, GetInitialSyncProgressOmitsClonerStatsIfClonerStatsExc
.data);
// Feature Compatibility Version.
- processSuccessfulFCVFetcherResponseLastStable();
+ processSuccessfulFCVFetcherResponseLastLTS();
// Simulate a batch to OplogFetcher.
getOplogFetcher()->receiveBatch(1LL, {makeOplogEntryObj(1)});
diff --git a/src/mongo/rpc/protocol_test.cpp b/src/mongo/rpc/protocol_test.cpp
index 61ca6e894f7..067ae2b775d 100644
--- a/src/mongo/rpc/protocol_test.cpp
+++ b/src/mongo/rpc/protocol_test.cpp
@@ -147,28 +147,28 @@ TEST(Protocol, validateWireVersion) {
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION);
- // MongoD 'latest' client -> MongoD downgraded 'last-stable' server
+ // MongoD 'latest' client -> MongoD downgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION - 2,
WireVersion::LATEST_WIRE_VERSION - 1);
- // MongoD 'latest' client -> MongoD upgraded 'last-stable' server
+ // MongoD 'latest' client -> MongoD upgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1);
- // MongoD downgraded 'last-stable' client -> MongoD 'latest' server
+ // MongoD downgraded 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_OK,
WireVersion::LATEST_WIRE_VERSION - 2,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION);
- // MongoD upgraded 'last-stable' client -> MongoD 'latest' server
+ // MongoD upgraded 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1,
@@ -182,7 +182,7 @@ TEST(Protocol, validateWireVersion) {
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION);
- // MongoS 'last-stable' client -> MongoD 'latest' server
+ // MongoS 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1,
@@ -199,28 +199,28 @@ TEST(Protocol, validateWireVersion) {
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION);
- // MongoD 'latest' client -> MongoD downgraded 'last-stable' server
+ // MongoD 'latest' client -> MongoD downgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION - 2,
WireVersion::LATEST_WIRE_VERSION - 1);
- // MongoD 'latest' client -> MongoD upgraded 'last-stable' server
+ // MongoD 'latest' client -> MongoD upgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1);
- // MongoD downgraded 'last-stable' client -> MongoD 'latest' server
+ // MongoD downgraded 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION - 2,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION);
- // MongoD upgraded 'last-stable' client -> MongoD 'latest' server
+ // MongoD upgraded 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1,
@@ -234,7 +234,7 @@ TEST(Protocol, validateWireVersion) {
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION);
- // MongoS 'last-stable' client -> MongoD 'latest' server
+ // MongoS 'last-lts' client -> MongoD 'latest' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION - 1,
WireVersion::LATEST_WIRE_VERSION - 1,
@@ -265,14 +265,14 @@ TEST(Protocol, validateWireVersion) {
* of FCV.
*/
- // MongoS 'latest' -> MongoD downgraded 'last-stable' server
+ // MongoS 'latest' -> MongoD downgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION - 2,
WireVersion::LATEST_WIRE_VERSION - 1);
- // MongoS 'latest' -> MongoD upgraded 'last-stable' server
+ // MongoS 'latest' -> MongoD upgraded 'last-lts' server
VALIDATE_WIRE_VERSION(ASSERT_NOT_OK,
WireVersion::LATEST_WIRE_VERSION,
WireVersion::LATEST_WIRE_VERSION,
diff --git a/src/mongo/shell/feature_compatibility_version.js b/src/mongo/shell/feature_compatibility_version.js
index a126ae9d165..417da56da4a 100644
--- a/src/mongo/shell/feature_compatibility_version.js
+++ b/src/mongo/shell/feature_compatibility_version.js
@@ -2,7 +2,7 @@
// featureCompatibilityVersion values.
/**
- * These constants represent the current "latest" and "last-stable" values for the
+ * These constants represent the current "latest", "last-continuous" and "last-lts" values for the
* featureCompatibilityVersion parameter. They should only be used for testing of upgrade-downgrade
* scenarios that are intended to be maintained between releases.
*
@@ -11,7 +11,8 @@
*/
var latestFCV = "4.5.1";
-var lastStableFCV = "4.4";
+var lastContinuousFCV = "4.4";
+var lastLTSFCV = "4.4";
/**
* Checks the featureCompatibilityVersion document and server parameter. The
@@ -25,10 +26,11 @@ function checkFCV(adminDB, version, targetVersion) {
assert.commandWorked(res);
assert.eq(res.featureCompatibilityVersion.version, version, tojson(res));
assert.eq(res.featureCompatibilityVersion.targetVersion, targetVersion, tojson(res));
- // When both version and targetVersion are equal to lastStableFCV, downgrade is in progress.
- // This tests that previousVersion is always equal to latestFCV in downgrading states or
- // undefined otherwise.
- const isDowngrading = (version === lastStableFCV && targetVersion === lastStableFCV);
+ // When both version and targetVersion are equal to lastContinuousFCV or lastLTSFCV, downgrade
+ // is in progress. This tests that previousVersion is always equal to latestFCV in downgrading
+ // states or undefined otherwise.
+ const isDowngrading = (version === lastLTSFCV && targetVersion === lastLTSFCV) ||
+ (version === lastContinuousFCV && targetVersion === lastContinuousFCV);
if (isDowngrading) {
assert.eq(res.featureCompatibilityVersion.previousVersion, latestFCV, tojson(res));
} else {
diff --git a/src/mongo/shell/replsettest.js b/src/mongo/shell/replsettest.js
index 8dc2b86abb2..8fc224567e1 100644
--- a/src/mongo/shell/replsettest.js
+++ b/src/mongo/shell/replsettest.js
@@ -1290,17 +1290,17 @@ var ReplSetTest = function(opts) {
cmd[cmdKey] = config;
// Initiating a replica set with a single node will use "latest" FCV. This will
- // cause IncompatibleServerVersion errors if additional "last-stable" binary version
+ // cause IncompatibleServerVersion errors if additional "last-lts" binary version
// nodes are subsequently added to the set, since such nodes cannot set their FCV to
- // "latest". Therefore, we make sure the primary is "last-stable" FCV before adding in
+ // "latest". Therefore, we make sure the primary is "last-lts" FCV before adding in
// nodes of different binary versions to the replica set.
- let lastStableBinVersionWasSpecifiedForSomeNode = false;
+ let lastLTSBinVersionWasSpecifiedForSomeNode = false;
let explicitBinVersionWasSpecifiedForSomeNode = false;
Object.keys(this.nodeOptions).forEach(function(key, index) {
let val = self.nodeOptions[key];
if (typeof (val) === "object" && val.hasOwnProperty("binVersion")) {
- lastStableBinVersionWasSpecifiedForSomeNode =
- MongoRunner.areBinVersionsTheSame(val.binVersion, lastStableFCV);
+ lastLTSBinVersionWasSpecifiedForSomeNode =
+ MongoRunner.areBinVersionsTheSame(val.binVersion, lastLTSFCV);
explicitBinVersionWasSpecifiedForSomeNode = true;
}
});
@@ -1343,26 +1343,26 @@ var ReplSetTest = function(opts) {
print("ReplSetTest initiate command took " + (new Date() - initiateStart) + "ms for " +
this.nodes.length + " nodes in set '" + this.name + "'");
- // Set the FCV to 'last-stable' if we are running a mixed version replica set. If this is a
+ // Set the FCV to 'last-lts' if we are running a mixed version replica set. If this is a
// config server, the FCV will be set as part of ShardingTest.
- let setLastStableFCV = (lastStableBinVersionWasSpecifiedForSomeNode ||
- jsTest.options().useRandomBinVersionsWithinReplicaSet) &&
+ let setLastLTSFCV = (lastLTSBinVersionWasSpecifiedForSomeNode ||
+ jsTest.options().useRandomBinVersionsWithinReplicaSet) &&
!self.isConfigServer;
- if (setLastStableFCV && jsTest.options().replSetFeatureCompatibilityVersion) {
+ if (setLastLTSFCV && jsTest.options().replSetFeatureCompatibilityVersion) {
throw new Error(
- "The FCV will be set to 'last-stable' automatically when starting up a replica " +
+ "The FCV will be set to 'last-lts' automatically when starting up a replica " +
"set with mixed binary versions. Therefore, we expect an empty value for " +
"'replSetFeatureCompatibilityVersion'.");
}
- if (setLastStableFCV) {
+ if (setLastLTSFCV) {
// Authenticate before running the command.
asCluster(self.nodes, function setFCV() {
- let fcv = lastStableFCV;
+ let fcv = lastLTSFCV;
print("Setting feature compatibility version for replica set to '" + fcv + "'");
assert.commandWorked(
self.getPrimary().adminCommand({setFeatureCompatibilityVersion: fcv}));
- checkFCV(self.getPrimary().getDB("admin"), lastStableFCV);
+ checkFCV(self.getPrimary().getDB("admin"), lastLTSFCV);
print("Fetch the config version from primay since 4.4 downgrade runs a reconfig.");
config.version = self.getReplSetConfigFromNode().version;
});
@@ -2939,7 +2939,7 @@ var ReplSetTest = function(opts) {
options.binVersion = "latest";
} else {
const rand = Random.rand();
- options.binVersion = rand < 0.5 ? "latest" : "last-stable";
+ options.binVersion = rand < 0.5 ? "latest" : "last-lts";
}
print("Randomly assigned binary version: " + options.binVersion + " to node: " + n);
}
diff --git a/src/mongo/shell/servers.js b/src/mongo/shell/servers.js
index 73f44cd08e4..c4d464166a1 100644
--- a/src/mongo/shell/servers.js
+++ b/src/mongo/shell/servers.js
@@ -208,7 +208,9 @@ MongoRunner.binVersionSubs = [
new MongoRunner.VersionSub(extractMajorVersionFromVersionString(shellVersion()),
shellVersion()),
// To-be-updated when we branch for the next release.
- new MongoRunner.VersionSub("last-stable", "4.4")
+ new MongoRunner.VersionSub("last-continuous", "4.4"),
+ // To be updated when we branch for the next LTS release.
+ new MongoRunner.VersionSub("last-lts", "4.4")
];
MongoRunner.getBinVersionFor = function(version) {
diff --git a/src/mongo/shell/shardingtest.js b/src/mongo/shell/shardingtest.js
index 8e7e721cd5c..f1eae7cb1aa 100644
--- a/src/mongo/shell/shardingtest.js
+++ b/src/mongo/shell/shardingtest.js
@@ -970,67 +970,67 @@ var ShardingTest = function(params) {
* Returns whether any settings to ShardingTest or jsTestOptions indicate this is a multiversion
* cluster.
*
- * Checks for 'last-stable' bin versions via:
+ * Checks for 'last-lts' bin versions via:
* jsTestOptions().shardMixedBinVersions, jsTestOptions().mongosBinVersion,
* otherParams.configOptions.binVersion, otherParams.shardOptions.binVersion,
* otherParams.mongosOptions.binVersion
*/
this.isMixedVersionCluster = function() {
- var lastStableBinVersion = MongoRunner.getBinVersionFor('last-stable');
+ var lastLTSBinVersion = MongoRunner.getBinVersionFor('last-lts');
// Must check shardMixedBinVersion because it causes shardOptions.binVersion to be an object
// (versionIterator) rather than a version string. Must check mongosBinVersion, as well,
// because it does not update mongosOptions.binVersion.
if (jsTestOptions().shardMixedBinVersions ||
(jsTestOptions().mongosBinVersion &&
- MongoRunner.areBinVersionsTheSame(lastStableBinVersion,
+ MongoRunner.areBinVersionsTheSame(lastLTSBinVersion,
jsTestOptions().mongosBinVersion))) {
return true;
}
- // Check for 'last-stable' config servers.
+ // Check for 'last-lts' config servers.
if (otherParams.configOptions && otherParams.configOptions.binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams.configOptions.binVersion))) {
return true;
}
for (var i = 0; i < numConfigs; ++i) {
if (otherParams['c' + i] && otherParams['c' + i].binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams['c' + i].binVersion))) {
return true;
}
}
- // Check for 'last-stable' mongod servers.
+ // Check for 'last-lts' mongod servers.
if (otherParams.shardOptions && otherParams.shardOptions.binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams.shardOptions.binVersion))) {
return true;
}
for (var i = 0; i < numShards; ++i) {
if (otherParams['d' + i] && otherParams['d' + i].binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams['d' + i].binVersion))) {
return true;
}
}
- // Check for 'last-stable' mongos servers.
+ // Check for 'last-lts' mongos servers.
if (otherParams.mongosOptions && otherParams.mongosOptions.binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams.mongosOptions.binVersion))) {
return true;
}
for (var i = 0; i < numMongos; ++i) {
if (otherParams['s' + i] && otherParams['s' + i].binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams['s' + i].binVersion))) {
return true;
}
@@ -1265,11 +1265,11 @@ var ShardingTest = function(params) {
// If the test doesn't depend on specific shard binVersions, create a mixed
// version
// shard cluster that randomly assigns shard binVersions, half "latest" and half
- // "last-stable".
+ // "last-lts".
if (!otherParams.shardOptions.binVersion) {
Random.setRandomSeed();
otherParams.shardOptions.binVersion =
- MongoRunner.versionIterator(["latest", "last-stable"], true);
+ MongoRunner.versionIterator(["latest", "last-lts"], true);
}
}
@@ -1340,11 +1340,11 @@ var ShardingTest = function(params) {
}
// If the test doesn't depend on specific shard binVersions, create a mixed version
// shard cluster that randomly assigns shard binVersions, half "latest" and half
- // "last-stable".
+ // "last-lts".
if (!otherParams.shardOptions.binVersion) {
Random.setRandomSeed();
otherParams.shardOptions.binVersion =
- MongoRunner.versionIterator(["latest", "last-stable"], true);
+ MongoRunner.versionIterator(["latest", "last-lts"], true);
}
}
@@ -1559,7 +1559,7 @@ var ShardingTest = function(params) {
if (_hasNewFeatureCompatibilityVersion() && this.isMixedVersionCluster()) {
function setFeatureCompatibilityVersion() {
assert.commandWorked(
- csrsPrimary.adminCommand({setFeatureCompatibilityVersion: lastStableFCV}));
+ csrsPrimary.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
// Wait for the new featureCompatibilityVersion to propagate to all nodes in the CSRS
// to ensure that older versions of mongos can successfully connect.
@@ -1708,12 +1708,12 @@ var ShardingTest = function(params) {
// Ensure that the sessions collection exists so jstests can run things with
// logical sessions and test them. We do this by forcing an immediate cache refresh
// on the config server, which auto-shards the collection for the cluster.
- var lastStableBinVersion = MongoRunner.getBinVersionFor('last-stable');
+ var lastLTSBinVersion = MongoRunner.getBinVersionFor('last-lts');
if ((!otherParams.configOptions) ||
(otherParams.configOptions && !otherParams.configOptions.binVersion) ||
(otherParams.configOptions && otherParams.configOptions.binVersion &&
MongoRunner.areBinVersionsTheSame(
- lastStableBinVersion,
+ lastLTSBinVersion,
MongoRunner.getBinVersionFor(otherParams.configOptions.binVersion)))) {
this.configRS.getPrimary().getDB("admin").runCommand({refreshLogicalSessionCacheNow: 1});
diff --git a/src/mongo/shell/utils.js b/src/mongo/shell/utils.js
index 48c3388112b..5f8606dd867 100644
--- a/src/mongo/shell/utils.js
+++ b/src/mongo/shell/utils.js
@@ -349,8 +349,8 @@ jsTestOptions = function() {
roleGraphInvalidationIsFatal: TestData.roleGraphInvalidationIsFatal || false,
networkErrorAndTxnOverrideConfig: TestData.networkErrorAndTxnOverrideConfig || {},
// When useRandomBinVersionsWithinReplicaSet is true, randomly assign the binary
- // versions of each node in the replica set to 'latest' or 'last-stable'.
- // This flag is currently a placeholder and only sets the replica set to last-stable
+ // versions of each node in the replica set to 'latest' or 'last-lts'.
+ // This flag is currently a placeholder and only sets the replica set to last-lts
// FCV.
useRandomBinVersionsWithinReplicaSet:
TestData.useRandomBinVersionsWithinReplicaSet || false,