text: /* test initial sync options
   *
   * Make sure member can't sync from a member with a different buildIndexes setting.
   */
  
  
  load("jstests/replsets/rslib.js");
  var name = "initialsync3";
  var host = getHostName();
  var port = allocatePorts(7);
  
  print("Start set with three nodes");
  var replTest = new ReplSetTest( {name: name, nodes: 3} );
  var nodes = replTest.startSet();
  replTest.initiate({
      _id : name,
      members : [
          {_id:0, host : host+":"+port[0], priority: 10},
          {_id:1, host : host+":"+port[1]},
          {_id:2, host : host+":"+port[2], priority : 0, buildIndexes : false},
                 ]});
  
  var master = replTest.getMaster();
  
  print("Initial sync");
  master.getDB("foo").bar.baz.insert({x:1});
  replTest.awaitReplication();
  
  replTest.stop(0);
  replTest.stop(1);
  
  print("restart 1, clearing its data directory so it has to resync");
  replTest.start(1);
  
  print("make sure 1 does not become a secondary (because it cannot clone from 2)");
  sleep(10000);
  var result = nodes[1].getDB("admin").runCommand({isMaster : 1});
  assert(!result.ismaster, tojson(result));
  assert(!result.secondary, tojson(result));
  
  print("bring 0 back up");
  replTest.restart(0);
  print("0 should become primary");
  master = replTest.getMaster();
  
  print("now 1 should be able to initial sync");
  assert.soon(function() {
      var result = nodes[1].getDB("admin").runCommand({isMaster : 1});
      printjson(result);
      return result.secondary;
  });
  
  replTest.stopSet();
  