summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/test/suite/test_cursor14.py
diff options
context:
space:
mode:
authorLuke Chen <luke.chen@mongodb.com>2018-03-14 16:52:29 +1100
committerLuke Chen <luke.chen@mongodb.com>2018-03-14 16:52:29 +1100
commitc5bfa9391f364ad1f36334d95c487a077aa76cea (patch)
tree52e1df6a798ba881bedc2f10d1dbf2dcfe0d90cf /src/third_party/wiredtiger/test/suite/test_cursor14.py
parent1481f7068376b464eb6dff954f004b023d3bbbd5 (diff)
downloadmongo-c5bfa9391f364ad1f36334d95c487a077aa76cea.tar.gz
Import wiredtiger: b33708d7d9b2971cda05e71fcba6067b230b97cc from branch mongodb-3.8
ref: 60a06941b8..b33708d7d9 for: 3.7.4 WT-3913 Enhance cursor operations to account for prepare state WT-3950 Add some rollback_to_stable statistics WT-3958 Add query API to get most recent checkpoint's stable timestamp WT-3969 enhance format tester to account for prepare state WT-3972 Allow more than 64K cursors to be open on a data source simultaneously WT-3975 arg format mismatch after rwlock changes
Diffstat (limited to 'src/third_party/wiredtiger/test/suite/test_cursor14.py')
-rw-r--r--src/third_party/wiredtiger/test/suite/test_cursor14.py60
1 files changed, 60 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/test/suite/test_cursor14.py b/src/third_party/wiredtiger/test/suite/test_cursor14.py
new file mode 100644
index 00000000000..25bd0cec00a
--- /dev/null
+++ b/src/third_party/wiredtiger/test/suite/test_cursor14.py
@@ -0,0 +1,60 @@
+#!/usr/bin/env python
+#
+# Public Domain 2014-2018 MongoDB, Inc.
+# Public Domain 2008-2014 WiredTiger, Inc.
+#
+# This is free and unencumbered software released into the public domain.
+#
+# Anyone is free to copy, modify, publish, use, compile, sell, or
+# distribute this software, either in source code form or as a compiled
+# binary, for any purpose, commercial or non-commercial, and by any
+# means.
+#
+# In jurisdictions that recognize copyright laws, the author or authors
+# of this software dedicate any and all copyright interest in the
+# software to the public domain. We make this dedication for the benefit
+# of the public at large and to the detriment of our heirs and
+# successors. We intend this dedication to be an overt act of
+# relinquishment in perpetuity of all present and future rights to this
+# software under copyright law.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+# IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+# OTHER DEALINGS IN THE SOFTWARE.
+
+import wiredtiger, wttest
+from wtdataset import SimpleDataSet, ComplexDataSet, ComplexLSMDataSet
+from wtscenario import make_scenarios
+
+# test_cursor14.py
+# Test that more than 64K cursors can be opened on a data source
+class test_cursor14(wttest.WiredTigerTestCase):
+ scenarios = make_scenarios([
+ ('file-r', dict(type='file:', keyfmt='r', dataset=SimpleDataSet)),
+ ('file-S', dict(type='file:', keyfmt='S', dataset=SimpleDataSet)),
+ ('lsm-S', dict(type='lsm:', keyfmt='S', dataset=SimpleDataSet)),
+ ('table-r', dict(type='table:', keyfmt='r', dataset=SimpleDataSet)),
+ ('table-S', dict(type='table:', keyfmt='S', dataset=SimpleDataSet)),
+ ('table-r-complex', dict(type='table:', keyfmt='r',
+ dataset=ComplexDataSet)),
+ ('table-S-complex', dict(type='table:', keyfmt='S',
+ dataset=ComplexDataSet)),
+ ('table-S-complex-lsm', dict(type='table:', keyfmt='S',
+ dataset=ComplexLSMDataSet)),
+ ])
+
+ def test_cursor14(self):
+ uri = self.type + 'cursor14'
+
+ ds = self.dataset(self, uri, 100, key_format=self.keyfmt)
+ ds.populate()
+
+ for i in xrange(66000):
+ cursor = self.session.open_cursor(uri, None, None)
+
+if __name__ == '__main__':
+ wttest.run()