11package ds
22
33import (
4+ "fmt"
45 "reflect"
56
67 "github.com/Gearbox-protocol/sdk-go/core"
@@ -89,14 +90,20 @@ func (mdl MergedPFManager) Save(details *core.Json) {
8990}
9091
9192func (mdl MergedPFManager ) GetMergedPFVersion (token string , blockNum int64 , syncAdapterAddr string ) schemas.MergedPFVersion {
93+ version , err := mdl .getMergedPFVersion (token , blockNum , syncAdapterAddr )
94+ log .CheckFatal (err )
95+ return version
96+ }
97+
98+ func (mdl MergedPFManager ) getMergedPFVersion (token string , blockNum int64 , syncAdapterAddr string ) (schemas.MergedPFVersion , error ) {
9299 for ind := len (mdl [token ]) - 1 ; ind >= 0 ; ind -- {
93100 if mdl [token ][ind ].BlockNumber <= blockNum {
94- return mdl [token ][ind ].MergedPFVersion
101+ return mdl [token ][ind ].MergedPFVersion , nil
95102 }
96103 }
97- log .Fatal ("Can't get mergedPFVersion" , mdl , blockNum , syncAdapterAddr )
98- return schemas .MergedPFVersion (0 )
104+ return schemas .MergedPFVersion (0 ), fmt .Errorf ("can't get mergedPFVersion %v at %d for adapter: %s" , mdl , blockNum , syncAdapterAddr )
99105}
106+
100107func (mdl MergedPFManager ) AddToken (token string , blockNum int64 , pfVersion schemas.PFVersion ) {
101108 var last schemas.MergedPFVersion
102109 if len (mdl [token ]) != 0 {
@@ -110,8 +117,8 @@ func (mdl MergedPFManager) AddToken(token string, blockNum int64, pfVersion sche
110117}
111118func (mdl MergedPFManager ) GetTokens (blockNum int64 ) (tokens []string ) {
112119 for token := range mdl {
113- version := mdl .GetMergedPFVersion (token , blockNum , "" )
114- if version != 0 {
120+ version , err := mdl .getMergedPFVersion (token , blockNum , "" )
121+ if version != 0 && err == nil {
115122 tokens = append (tokens , token )
116123 }
117124 }
0 commit comments