summaryrefslogtreecommitdiff
path: root/jstests/multiVersion/capped_deletes.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/multiVersion/capped_deletes.js')
-rw-r--r--jstests/multiVersion/capped_deletes.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/jstests/multiVersion/capped_deletes.js b/jstests/multiVersion/capped_deletes.js
new file mode 100644
index 00000000000..8aa9b7a0a49
--- /dev/null
+++ b/jstests/multiVersion/capped_deletes.js
@@ -0,0 +1,23 @@
+/**
+ * Test that user deletes on capped collections are only allowed in FCV 5.0.
+ */
+(function() {
+"use strict";
+
+const conn = MongoRunner.runMongod();
+const db = conn.getDB("test");
+
+assert.commandWorked(db.createCollection("a", {capped: true, size: 1024}));
+assert.commandWorked(db.a.insert({_id: 1}));
+assert.commandWorked(db.a.insert({_id: 2}));
+
+// FCV 5.0.
+assert.commandWorked(db.adminCommand({setFeatureCompatibilityVersion: latestFCV}));
+assert.commandWorked(db.a.remove({_id: 1}));
+
+// FCV 4.4.
+assert.commandWorked(db.adminCommand({setFeatureCompatibilityVersion: lastLTSFCV}));
+assert.writeErrorWithCode(db.a.remove({_id: 2}), ErrorCodes.IllegalOperation);
+
+MongoRunner.stopMongod(conn);
+})();