本文整理汇总了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)
}
}
示例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)
}
示例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)
}
示例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)
}
示例5: setMVCCStats
func setMVCCStats(
ctx context.Context, eng engine.ReadWriter, rangeID roachpb.RangeID, newMS enginepb.MVCCStats,
) error {
return engine.MVCCSetRangeStats(ctx, eng, rangeID, &newMS)
}
示例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)
}
示例7: setMVCCStats
func setMVCCStats(eng engine.ReadWriter, rangeID roachpb.RangeID, newMS enginepb.MVCCStats) error {
return engine.MVCCSetRangeStats(context.Background(), eng, rangeID, &newMS)
}