prepare_test.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package testprepare_test
  2. import (
  3. "fmt"
  4. "testing"
  5. "time"
  6. "git.wecise.com/wecise/mring"
  7. "git.wecise.com/wecise/odbserver/odb"
  8. "git.wecise.com/wecise/odbserver/odb/notify"
  9. "git.wecise.com/wecise/odbserver/odb/test"
  10. "gitee.com/wecisecode/util/logger"
  11. "gitee.com/wecisecode/util/merrs"
  12. )
  13. func TestPrepare(t *testing.T) {
  14. odb.ODB = odb.NewOMDB()
  15. odb.MRingHandle = mring.Default()
  16. option := &odb.Option{Cache: notify.CacheAll, Keyspace: "matrix", DisableInitialHostLookup: true, DisableNotify: true}
  17. g, err := test.NewG(option)
  18. if err != nil {
  19. logger.Error(err.Error())
  20. return
  21. } else {
  22. defer g.Close()
  23. }
  24. logger.SetConsole(true)
  25. logger.SetLevel(logger.TRACE)
  26. stat, err := g.Prepare(`select id from /matrix/ldap where id in ?`)
  27. if err != nil {
  28. logger.Errorf("%v", err)
  29. return
  30. }
  31. ids := []string{}
  32. for i := 1; i <= 10000; i++ {
  33. ids = append(ids, fmt.Sprint(i))
  34. }
  35. data, meta, err := stat.Exec(ids)
  36. if err != nil {
  37. logger.Errorf("%v", err)
  38. return
  39. }
  40. logger.Info(merrs.New(merrs.Map{"data": data, "meta": meta}))
  41. time.Sleep(5 * time.Second)
  42. logger.Info("ok")
  43. }