|
@@ -650,8 +650,13 @@ func timedTaskOnce() {
|
|
|
curTime := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, time.Local)
|
|
|
task_sid := util.BsonIdToSId(bson.NewObjectIdWithTime(preTime))
|
|
|
task_eid := util.BsonIdToSId(bson.NewObjectIdWithTime(curTime))
|
|
|
+ //间隔时间 半年
|
|
|
+ between_time := curTime.Unix()-(86400*180)
|
|
|
lastid := task_sid
|
|
|
- log.Println(task_sid, task_eid)
|
|
|
+ lasttime := int64(0)
|
|
|
+ //
|
|
|
+
|
|
|
+ log.Println(task_sid, task_eid,curTime.Unix(),between_time)
|
|
|
|
|
|
//ObjectId("5da3f31aa5cb26b9b798d3aa")
|
|
|
//ObjectId("5da418c4a5cb26b9b7e3e9a6")
|
|
@@ -660,7 +665,7 @@ func timedTaskOnce() {
|
|
|
|
|
|
defer util.Catch()
|
|
|
//区间id
|
|
|
- q := map[string]interface{}{
|
|
|
+ q_start := map[string]interface{}{
|
|
|
"_id": map[string]interface{}{
|
|
|
"$gte": StringTOBsonId(task_sid),
|
|
|
"$lte": StringTOBsonId(task_eid),
|
|
@@ -668,22 +673,38 @@ func timedTaskOnce() {
|
|
|
}
|
|
|
sess_start := mgo.GetMgoConn()
|
|
|
defer mgo.DestoryMongoConn(sess_start)
|
|
|
- it_start := sess_start.DB(mgo.DbName).C(extract).Find(&q).Sort("publishtime").Iter()
|
|
|
+ it_start := sess_start.DB(mgo.DbName).C(extract).Find(&q_start).Sort("publishtime").Iter()
|
|
|
startNum := 0
|
|
|
for tmp_start := make(map[string]interface{}); it_start.Next(&tmp_start); startNum++ {
|
|
|
if startNum%10000 == 0 {
|
|
|
log.Println("正序遍历:", startNum)
|
|
|
}
|
|
|
- if util.IntAll(tmp_start["dataging"]) == 1 { //取起始id
|
|
|
- lastid = BsonTOStringId(tmp_start["_id"])
|
|
|
- break
|
|
|
+ //取-符合-发布时间半年内的数据
|
|
|
+ if util.IntAll(tmp_start["dataging"]) == 1 {
|
|
|
+ pubtime := util.Int64All(tmp_start["publishtime"])
|
|
|
+ if pubtime>0 && pubtime>between_time {
|
|
|
+ lastid = BsonTOStringId(tmp_start["_id"])
|
|
|
+ lasttime = pubtime
|
|
|
+ break
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- DM = NewDatamap(dupdays, lastid)
|
|
|
+
|
|
|
+ DM = TimedTaskDatamap(dupdays,lasttime)
|
|
|
log.Println("本地数据加载完成,定时任务数据判重开始")
|
|
|
+
|
|
|
+
|
|
|
sess := mgo.GetMgoConn()
|
|
|
defer mgo.DestoryMongoConn(sess)
|
|
|
+
|
|
|
+ q := map[string]interface{}{
|
|
|
+ "_id": map[string]interface{}{
|
|
|
+ "$gte": StringTOBsonId(lastid),
|
|
|
+ "$lte": StringTOBsonId(task_eid),
|
|
|
+ },
|
|
|
+ }
|
|
|
+
|
|
|
it := sess.DB(mgo.DbName).C(extract).Find(&q).Sort("publishtime").Iter()
|
|
|
updateExtract := [][]map[string]interface{}{}
|
|
|
log.Println("线程数:", threadNum)
|