summaryrefslogtreecommitdiff
path: root/jstests/core/indexb.js
blob: 6890dda3cbcfa88167f5897cd3ff2c602bff0051 (plain)
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
// Cannot implicitly shard accessed collections because of not being able to create unique index
// using hashed shard key pattern.
// @tags: [cannot_create_unique_index_when_using_hashed_shard_key, requires_fastcount]

// unique index test for a case where the object grows
// and must move

// see indexa.js for the test case for an update with dup id check
// when it doesn't move

t = db.indexb;
t.drop();
t.ensureIndex({a: 1}, true);

t.insert({a: 1});

x = {
    a: 2
};
t.save(x);

{
    assert(t.count() == 2, "count wrong B");

    x.a = 1;
    x.filler = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
    t.save(x);  // should fail, not unique.

    assert(t.count() == 2, "count wrong");
    assert(t.find({a: 1}).count() == 1, "bfail1");
    assert(t.find({a: 2}).count() == 1, "bfail2");
}