1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
myShardingTest = new ShardingTest( "sharding_passthrough" , 2 , 1 , 1 );
myShardingTest.adminCommand( { enablesharding : "test" } );
db=myShardingTest.getDB("test");
var files = listFiles("jstests");
var runnerStart = new Date()
files.forEach(
function(x) {
if ( /[\/\\]_/.test(x.name) ||
! /\.js$/.test(x.name ) ){
print(" >>>>>>>>>>>>>>> skipping " + x.name);
return;
}
// Notes:
// apply_ops1: nothing works, dunno why yet. SERVER-1439
// copydb, copydb2: copyDatabase seems not to work at all in
// the ShardingTest setup. SERVER-1440
// cursor8: cursorInfo different/meaningless(?) in mongos
// closeAllDatabases may not work through mongos
// SERVER-1441
// deal with cursorInfo in mongos SERVER-1442
// dbcase: Database names are case-insensitive under ShardingTest?
// SERVER-1443
// These are all SERVER-1444
// count5: limit() and maybe skip() may be unreliable
// geo3: limit() not working, I think
// or4: skip() not working?
// shellkillop: dunno yet. SERVER-1445
// These should simply not be run under sharding:
// dbadmin: Uncertain Cut-n-pasting its contents into mongo worked.
// error1: getpreverror not supported under sharding
// fsync, fsync2: isn't supported through mongos
// remove5: getpreverror, I think. don't run
// update4: getpreverror don't run
// Around July 20, command passthrough went away, and these
// commands weren't implemented:
// clean cloneCollectionAsCapped copydbgetnonce dataSize
// datasize dbstats deleteIndexes dropIndexes forceerror
// getnonce logout medianKey profile reIndex repairDatabase
// reseterror splitVector validate
/* missing commands :
* forceerror and switchtoclienterrors
* cloneCollectionAsCapped
* splitvector
* profile (apitest_db, cursor6, evalb)
* copydbgetnonce
* dbhash
* medianKey
* clean (apitest_dbcollection)
* logout and getnonce
*/
if (/[\/\\](error3|capped.*|splitvector|apitest_db|cursor6|copydb-auth|profile\d*|dbhash|median|apitest_dbcollection|evalb|evald|eval_nolock|auth1|auth2|dropdb_race|unix_socket\d*)\.js$/.test(x.name)) {
print(" !!!!!!!!!!!!!!! skipping test that has failed under sharding but might not anymore " + x.name)
return;
}
// These are bugs (some might be fixed now):
if (/[\/\\](apply_ops1|count5|cursor8|or4|shellkillop|update4|profile\d*)\.js$/.test(x.name)) {
print(" !!!!!!!!!!!!!!! skipping test that has failed under sharding but might not anymore " + x.name)
return;
}
// These aren't supposed to get run under sharding:
if (/[\/\\](dbadmin|error1|fsync|fsync2|geo.*|indexh|remove5|update4|notablescan|compact.*|check_shard_index|bench_test.*|mr_replaceIntoDB)\.js$/.test(x.name)) {
print(" >>>>>>>>>>>>>>> skipping test that would fail under sharding " + x.name)
return;
}
print(" *******************************************");
print(" Test : " + x.name + " ...");
print(" " + Date.timeFunc(
function() {
load(x.name);
}, 1) + "ms");
}
);
myShardingTest.stop()
var runnerEnd = new Date()
print( "total runner time: " + ( ( runnerEnd.getTime() - runnerStart.getTime() ) / 1000 ) + "secs" )
|