From 35ba92e9550f47feadd2ed170108bfaa5aa79584 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 24 Jul 2024 09:34:47 +0800 Subject: [PATCH] 1 --- server/jccommon/dbutils.go | 3 ++ server/light_backtask/task/chain_activity.go | 49 +++++++++++--------- 2 files changed, 31 insertions(+), 21 deletions(-) diff --git a/server/jccommon/dbutils.go b/server/jccommon/dbutils.go index 8f45d0ff..52012f67 100644 --- a/server/jccommon/dbutils.go +++ b/server/jccommon/dbutils.go @@ -1,5 +1,8 @@ package jccommon +import ( +) + func AddDbLog(dataSource string, logType int32, subType int32, params map[string]string) error { return nil diff --git a/server/light_backtask/task/chain_activity.go b/server/light_backtask/task/chain_activity.go index 04bdc98b..3e6511a2 100644 --- a/server/light_backtask/task/chain_activity.go +++ b/server/light_backtask/task/chain_activity.go @@ -10,6 +10,8 @@ import ( "strings" ) +const DBPARAM_CHAIN_ACTIVITY_PRE = "chain_activity" + type chainActivity struct { } @@ -40,31 +42,36 @@ func (this* chainActivity) unInit() { } func (this* chainActivity) processLockAndUnLockEvent(netId int32, lockContractAddress string) { - f5.GetGoStyleDb().IncrementLoad( - constant.BCEVENT_DB, - "chainActivity." + q5.ToString(netId) + "." + lockContractAddress, - "t_blockchain_event", - 0, - func (lastIdx int64, maxIdx int64) (string, []string) { - sql := fmt.Sprintf(` + key := fmt.Sprintf("chainActivity.lastIdx.%d.%s", netId, lockContractAddress) + if dbLastIdxStr, err := jccommon.GetDbParam(constant.BCEVENT_DB, key); err == nil { + f5.GetGoStyleDb().IncrementLoad( + constant.BCEVENT_DB, + "chainActivity." + q5.ToString(netId) + "." + lockContractAddress, + "t_blockchain_event", + q5.ToInt64(dbLastIdxStr), + func (lastIdx int64, maxIdx int64) (string, []string) { + sql := fmt.Sprintf(` SELECT * FROM t_blockchain_event WHERE idx > %d AND idx <= %d AND net_id = %d AND contract_address = ? AND event_name IN (?, ?) ORDER BY idx LIMIT 10 `, - lastIdx, - maxIdx, - netId) - params := []string{ - lockContractAddress, - "Lock", - "UnLock", - } - return sql, params - }, - func (newLastIdx int64) { - - }, - this.saveToDb) + lastIdx, + maxIdx, + netId) + params := []string{ + lockContractAddress, + "Lock", + "UnLock", + } + return sql, params + }, + func (newLastIdx int64) { + jccommon.SaveDbParam(constant.BCEVENT_DB, key, q5.ToString(newLastIdx)) + }, + this.saveToDb) + } else { + panic(fmt.Sprintf("chainActivity.processLockAndUnLockEvent getDBParam error %s", err)) + } } func (this* chainActivity) saveToDb(ds *f5.DataSet) bool {