本文整理汇总了Golang中github.com/cockroachdb/cockroach/pkg/server.TestServer.SplitRange方法的典型用法代码示例。如果您正苦于以下问题:Golang TestServer.SplitRange方法的具体用法?Golang TestServer.SplitRange怎么用?Golang TestServer.SplitRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cockroachdb/cockroach/pkg/server.TestServer
的用法示例。
在下文中一共展示了TestServer.SplitRange方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: splitRangeAtVal
// splitRangeAtVal splits the range for a table with schema
// `CREATE TABLE test (k INT PRIMARY KEY)` at row with value pk (the row will be
// the first on the right of the split).
func splitRangeAtVal(
ts *server.TestServer, tableDesc *sqlbase.TableDescriptor, pk int,
) (roachpb.RangeDescriptor, roachpb.RangeDescriptor, error) {
if len(tableDesc.Indexes) != 0 {
return roachpb.RangeDescriptor{}, roachpb.RangeDescriptor{},
errors.Errorf("expected table with just a PK, got: %+v", tableDesc)
}
pik, err := sqlbase.MakePrimaryIndexKey(tableDesc, pk)
if err != nil {
return roachpb.RangeDescriptor{}, roachpb.RangeDescriptor{}, err
}
startKey := keys.MakeRowSentinelKey(pik)
leftRange, rightRange, err := ts.SplitRange(startKey)
if err != nil {
return roachpb.RangeDescriptor{}, roachpb.RangeDescriptor{},
errors.Wrapf(err, "failed to split at row: %d", pk)
}
return leftRange, rightRange, nil
}