(r *Request, d *Router)
| 565 | } |
| 566 | |
| 567 | func (s *Session) handleRequestSlotsScan(r *Request, d *Router) error { |
| 568 | var nblks = len(r.Multi) - 1 |
| 569 | switch { |
| 570 | case nblks <= 1: |
| 571 | r.Resp = redis.NewErrorf("ERR wrong number of arguments for 'SLOTSSCAN' command") |
| 572 | return nil |
| 573 | } |
| 574 | switch slot, err := redis.Btoi64(r.Multi[1].Value); { |
| 575 | case err != nil: |
| 576 | r.Resp = redis.NewErrorf("ERR parse slotnum '%s' failed, %s", r.Multi[1].Value, err) |
| 577 | return nil |
| 578 | case slot < 0 || slot >= MaxSlotNum: |
| 579 | r.Resp = redis.NewErrorf("ERR parse slotnum '%s' failed, out of range", r.Multi[1].Value) |
| 580 | return nil |
| 581 | default: |
| 582 | return d.dispatchSlot(r, int(slot)) |
| 583 | } |
| 584 | } |
| 585 | |
| 586 | func (s *Session) handleRequestSlotsMapping(r *Request, d *Router) error { |
| 587 | var nblks = len(r.Multi) - 1 |
no test coverage detected