當前位置: 首頁>>代碼示例>>Golang>>正文


Golang engine.MVCCSetRangeStats函數代碼示例

本文整理匯總了Golang中github.com/cockroachdb/cockroach/storage/engine.MVCCSetRangeStats函數的典型用法代碼示例。如果您正苦於以下問題:Golang MVCCSetRangeStats函數的具體用法?Golang MVCCSetRangeStats怎麽用?Golang MVCCSetRangeStats使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了MVCCSetRangeStats函數的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestRangeStatsInit

func TestRangeStatsInit(t *testing.T) {
	defer leaktest.AfterTest(t)()
	tc := testContext{}
	tc.Start(t)
	defer tc.Stop()
	ms := engine.MVCCStats{
		LiveBytes:       1,
		KeyBytes:        2,
		ValBytes:        3,
		IntentBytes:     4,
		LiveCount:       5,
		KeyCount:        6,
		ValCount:        7,
		IntentCount:     8,
		IntentAge:       9,
		GCBytesAge:      10,
		LastUpdateNanos: 11,
	}
	if err := engine.MVCCSetRangeStats(context.Background(), tc.engine, 1, &ms); err != nil {
		t.Fatal(err)
	}
	s, err := newRangeStats(1, tc.engine)
	if err != nil {
		t.Fatal(err)
	}
	if !reflect.DeepEqual(ms, s.mvccStats) {
		t.Errorf("mvcc stats mismatch %+v != %+v", ms, s.mvccStats)
	}
}
開發者ID:GitGoldie,項目名稱:cockroach,代碼行數:29,代碼來源:stats_test.go

示例2: MergeMVCCStats

// MergeMVCCStats merges the results of an MVCC operation or series of
// MVCC operations into the range's stats. The intent age is augmented
// by multiplying the previous intent count by the elapsed nanos since
// the last update to range stats. Stats are stored to the underlying
// engine and the rangeStats MVCCStats updated to reflect merged totals.
func (rs *rangeStats) MergeMVCCStats(e engine.Engine, ms *engine.MVCCStats, nowNanos int64) error {
	rs.Lock()
	defer rs.Unlock()
	// Augment the current intent age.
	diffSeconds := nowNanos/1E9 - rs.LastUpdateNanos/1E9
	ms.LastUpdateNanos = nowNanos
	ms.IntentAge += rs.IntentCount * diffSeconds
	ms.GCBytesAge += engine.MVCCComputeGCBytesAge(rs.KeyBytes+rs.ValBytes-rs.LiveBytes, diffSeconds)
	rs.MVCCStats.Add(ms)
	return engine.MVCCSetRangeStats(e, rs.rangeID, &rs.MVCCStats)
}
開發者ID:kaustubhkurve,項目名稱:cockroach,代碼行數:16,代碼來源:stats.go

示例3: SetMVCCStats

// SetStats sets stats wholesale.
func (rs *rangeStats) SetMVCCStats(e engine.Engine, ms engine.MVCCStats) error {
	rs.Lock()
	defer rs.Unlock()
	rs.MVCCStats = ms
	return engine.MVCCSetRangeStats(e, rs.rangeID, &ms)
}
開發者ID:kaustubhkurve,項目名稱:cockroach,代碼行數:7,代碼來源:stats.go

示例4: SetMVCCStats

// SetStats sets stats wholesale.
func (rs *rangeStats) SetMVCCStats(e engine.ReadWriter, ms engine.MVCCStats) error {
	rs.Lock()
	defer rs.Unlock()
	rs.mvccStats = ms
	return engine.MVCCSetRangeStats(context.Background(), e, rs.rangeID, &ms)
}
開發者ID:mjibson,項目名稱:cockroach,代碼行數:7,代碼來源:stats.go

示例5: setMVCCStats

func setMVCCStats(
	ctx context.Context, eng engine.ReadWriter, rangeID roachpb.RangeID, newMS enginepb.MVCCStats,
) error {
	return engine.MVCCSetRangeStats(ctx, eng, rangeID, &newMS)
}
開發者ID:yangxuanjia,項目名稱:cockroach,代碼行數:5,代碼來源:replica_state.go

示例6: MergeMVCCStats

// MergeMVCCStats merges the results of an MVCC operation or series of MVCC
// operations into the range's stats. Stats are stored to the underlying engine
// and the rangeStats MVCCStats updated to reflect merged totals.
func (rs *rangeStats) MergeMVCCStats(e engine.Engine, ms engine.MVCCStats) error {
	rs.Lock()
	defer rs.Unlock()
	rs.MVCCStats.Add(ms)
	return engine.MVCCSetRangeStats(context.Background(), e, rs.rangeID, &rs.MVCCStats)
}
開發者ID:chzyer-dev,項目名稱:cockroach,代碼行數:9,代碼來源:stats.go

示例7: setMVCCStats

func setMVCCStats(eng engine.ReadWriter, rangeID roachpb.RangeID, newMS enginepb.MVCCStats) error {
	return engine.MVCCSetRangeStats(context.Background(), eng, rangeID, &newMS)
}
開發者ID:CubeLite,項目名稱:cockroach,代碼行數:3,代碼來源:replica_state.go


注:本文中的github.com/cockroachdb/cockroach/storage/engine.MVCCSetRangeStats函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。