func (c *streamEndTestProjectorClient) sendSync(timestamps []*protobuf.TsVbuuid) { logging.Infof("streamEndTestProjectorClient.sendSync() ") if len(timestamps) != 1 { util.TT.Fatal("streamEndTestProjectorClient.sendSync(): More than one timestamp sent to fake projector. Num = %v", len(timestamps)) } seqno, _, _, _, err := timestamps[0].Get(uint16(10)) if err != nil { util.TT.Fatal(err) } p := util.NewFakeProjector(manager.COORD_MAINT_STREAM_PORT) go p.Run(c.donech) payloads := make([]*common.VbKeyVersions, 0, 2000) payload := common.NewVbKeyVersions("Default", 10 /* vb */, 1, 10) kv := common.NewKeyVersions(seqno, []byte("document-name"), 1) kv.AddStreamBegin() kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) // send payload if err := p.Client.SendKeyVersions(payloads, true); err != nil { util.TT.Fatal(err) } }
func (c *timerTestProjectorClient) sendSync(instances []*protobuf.Instance) { logging.Infof("timerTestProjectorClient.sendSync() ") if len(instances) != 1 { util.TT.Fatal("timerTestProjectorClient.sendSync(): More than one index instance sent to fake projector") } for _, inst := range instances { if inst.GetIndexInstance().GetDefinition().GetDefnID() == uint64(406) { p := util.NewFakeProjector(manager.COORD_MAINT_STREAM_PORT) go p.Run(c.donech) payloads := make([]*common.VbKeyVersions, 0, 2000) // send StreamBegin for all vbuckets for i := 0; i < manager.NUM_VB; i++ { payload := common.NewVbKeyVersions("Default", uint16(i) /* vb */, 1, 10) kv := common.NewKeyVersions(1, []byte("document-name"), 1) kv.AddStreamBegin() kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) } payload := common.NewVbKeyVersions("Default", 10, 1, 10) kv := common.NewKeyVersions(100, []byte("document-name"), 1) kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) // send payload logging.Infof("****** runTimerTestReceiver() sending the first sync message") if err := p.Client.SendKeyVersions(payloads, true); err != nil { util.TT.Fatal(err) } payloads = make([]*common.VbKeyVersions, 0, 200) payload = common.NewVbKeyVersions("Default", 10, 1, 10) kv = common.NewKeyVersions(406, []byte("document-name"), 1) kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) // send payload logging.Infof("****** runTimerTestReceiver() sending the second sync message") if err := p.Client.SendKeyVersions(payloads, true); err != nil { util.TT.Fatal(err) } } } }
func (c *deleteTestProjectorClient) sendSync() { logging.Infof("deleteTestProjectorClient.sendSync() server %v", c.server) p := util.NewFakeProjector(manager.COORD_MAINT_STREAM_PORT) go p.Run(c.donech) // create an array of KeyVersions payloads := make([]*common.VbKeyVersions, 0, 4000) delete_test_once.Do(func() { logging.Infof("deleteTestProjectorClient.sendSync() sending streamBegin %v", c.server) // send StreamBegin for all vbuckets for i := 0; i < manager.NUM_VB; i++ { if i != 10 && i != 11 { payload := common.NewVbKeyVersions("Default", uint16(i) /* vb */, 1, 10) kv := common.NewKeyVersions(1, []byte("document-name"), 1) kv.AddStreamBegin() kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) } } for i := 0; i < manager.NUM_VB; i++ { if i != 12 && i != 13 { payload := common.NewVbKeyVersions("Defaultxx", uint16(i) /* vb */, 1, 10) kv := common.NewKeyVersions(1, []byte("document-name"), 1) kv.AddStreamBegin() kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) } } }) // bucket <Default>, node <127.0.0.1> -> vb 10, seqno 401 // bucket <Default>, node <127.0.0.2> -> vb 11, seqno 402 // bucket <Defaultxx>, node <127.0.0.1> -> vb 12, seqno 403 // bucket <Defaultxx>, node <127.0.0.2> -> vb 13, seqno 404 for _, inst := range delete_test_status { seqno := 0 vb := 0 bucket := inst.GetIndexInstance().GetDefinition().GetBucket() if bucket == "Default" { if c.server == "127.0.0.1" { seqno = 401 vb = 10 } else if c.server == "127.0.0.2" { seqno = 402 vb = 11 } } else if bucket == "Defaultxx" { if c.server == "127.0.0.1" { seqno = 403 vb = 12 } else if c.server == "127.0.0.2" { seqno = 404 vb = 13 } } logging.Infof("deleteTestProjectorClient.sendSync() for node %v and bucket %v vbucket %v seqno %d", c.server, bucket, vb, seqno) // Create Sync Message payload := common.NewVbKeyVersions(bucket, uint16(vb), 1, 10) kv := common.NewKeyVersions(uint64(seqno), []byte("document-name"), 1) kv.AddStreamBegin() kv.AddSync() payload.AddKeyVersions(kv) payloads = append(payloads, payload) } // Send payload if len(payloads) != 0 { logging.Infof("deleteTestProjectorClient.sendSync() sending payloads to stream manager for %s", c.server) err := p.Client.SendKeyVersions(payloads, true) if err != nil { util.TT.Fatal(err) } } }