From 9dd7bb8196b8c03c19bc3f1fbfe8a1f93341fdfe Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期四, 11 七月 2019 10:06:30 +0800
Subject: [PATCH] fix cache
---
shardmap/shardmap.go | 18 +++++-------------
dbpersoninfo.go | 31 ++++++++++++++++---------------
2 files changed, 21 insertions(+), 28 deletions(-)
diff --git a/dbpersoninfo.go b/dbpersoninfo.go
index 844b568..39d3f0b 100644
--- a/dbpersoninfo.go
+++ b/dbpersoninfo.go
@@ -9,6 +9,8 @@
"basic.com/pubsub/cache.git/esutil"
"basic.com/pubsub/cache.git/shardmap"
+ "test/cache/esutil"
+ "test/cache/shardmap"
"basic.com/valib/gosdk.git"
)
@@ -64,14 +66,9 @@
fmt.Println()
}
-//func main(){
-// Init()
-// Getdbpersonmsg("")
-//}
+func Getdbpersonmsg(tableid string, teststring []byte, IsCompare bool) (map[string]float32) {
-func Getdbpersonmsg(tableid string, teststring []byte, IsCompare bool) ([]byte) {
-
- var buf []byte
+ totalmap := make(map[string]float32)
if !IsCompare {
return nil
@@ -82,17 +79,21 @@
}
if tableid == "" {
- for _, val := range Cmap.cam{
- tmpbuf := val.Walk(Printest, teststring)
- buf =append(buf, tmpbuf...)
+ for id, val := range Cmap.cam{
+ fmt.Println("the id is: ", id)
+ tmpmap := val.Walk(Printest, teststring)
+ for key, sec := range tmpmap {
+ totalmap[key] = sec
+ }
}
-
}else{
-
for id, value := range Cmap.cam{
if id == tableid{
- fmt.Println(id)
- buf =value.Walk(Printest, teststring)
+ fmt.Println("the id is: ", id)
+ tmpmap :=value.Walk(Printest, teststring)
+ for key, sec := range tmpmap {
+ totalmap[key]= sec
+ }
break
}
}
@@ -103,7 +104,7 @@
firsttime := time.Now()
fmt.Println(time.Since(firsttime))
- return buf
+ return totalmap
}
func Printest(ci []byte, co string ) (float32){
diff --git a/shardmap/shardmap.go b/shardmap/shardmap.go
index 848db6d..4868281 100644
--- a/shardmap/shardmap.go
+++ b/shardmap/shardmap.go
@@ -4,8 +4,8 @@
import (
"sync"
- "encoding/json"
- "fmt"
+ //"encoding/json"
+ //"fmt"
)
var commonmux sync.Mutex
@@ -78,11 +78,9 @@
}
// modify by long.
-func (s *ShardMap) Walk(wf wfOp, cfrom []byte) ([]byte){
+func (s *ShardMap) Walk(wf wfOp, cfrom []byte) ( map[string]float32 ){
var wg sync.WaitGroup
var second float32
- var buf []byte
- var err error
ids := make(map[string]float32)
for _, si := range s.shards {
@@ -109,15 +107,9 @@
}
wg.Wait()
- fmt.Println("value of map: ",ids)
- buf, err = json.Marshal(ids)
- if err != nil {
- fmt.Println("compare json err")
- buf = nil
-
- }
- return buf
+ return ids
+
}
// print all
--
Gitblit v1.8.0