// insertCPutFn is used by insertRow when conflicts should be respected. // logValue is used for pretty printing. func insertCPutFn(b *client.Batch, key *roachpb.Key, value *roachpb.Value) { // TODO(dan): We want do this V(2) log everywhere in sql. Consider making a // client.Batch wrapper instead of inlining it everywhere. if log.V(2) { log.InfofDepth(1, "CPut %s -> %s", *key, value.PrettyPrint()) } b.CPut(key, value, nil) }
// Import loads some data in sstables into the database. Only the keys between // startKey and endKey are loaded. func Import( ctx context.Context, sst engine.RocksDBSstFileReader, txn *client.Txn, startKey, endKey engine.MVCCKey, ) error { var v roachpb.Value importFunc := func(kv engine.MVCCKeyValue) (bool, error) { v = roachpb.Value{RawBytes: kv.Value} v.ClearChecksum() if log.V(3) { log.Infof(ctx, "Put %s %s\n", kv.Key.Key, v.PrettyPrint()) } if err := txn.Put(kv.Key.Key, &v); err != nil { return true, err } return false, nil } return sst.Iterate(startKey, endKey, importFunc) }
// insertPutFn is used by insertRow when conflicts should be ignored. // logValue is used for pretty printing. func insertPutFn(b *client.Batch, key *roachpb.Key, value *roachpb.Value) { if log.V(2) { log.InfofDepth(1, "Put %s -> %s", *key, value.PrettyPrint()) } b.Put(key, value) }