Data Added to Preordered Log but Api not returning value
gremlin97 opened this issue · comments
Kunal Kasodekar commented
-
Hi, when using getLeafByIndex to fetch data from the preordered log I am getting a nil response.
However, when I check in adminer the data is appended to the log. -
Code Snippet:
//Get latest preference for a given customer number
func (tlc *trillianMapClient) getlatestPref(num int64, tc *trillianLogClient) (*preferenceproto.PostPreferenceRequest, int64) {
last, prev := tlc.travserseSmt(num)
_ = prev
index := last
fmt.Println("Leaf Index is:", index)
var data *preferenceproto.PostPreferenceRequest
//Struct for leaf request by index
getLeafReq := &trillian.GetLeavesByIndexRequest{
LogId: *tPlogID,
LeafIndex: []int64{index},
}
//Querying trillian preordered log to get leaf by index
getLeafResp, _ := tc.client.GetLeavesByIndex(context.Background(), getLeafReq)
leafRespData := getLeafResp.GetLeaves()
fmt.Printf("Leaf Response for querry is--------%v\n", getLeafResp)
for _, logleaf := range leafRespData {
leafData := logleaf.GetLeafValue()
//leafcheckindex := logleaf.LeafIndex
fmt.Printf("---------Leaf Data is--------%v\n", leafData)
//println("Leaf Data Index is--------", leafcheckindex)
err := json.Unmarshal(leafData, &data)
fmt.Println("Data Response", data)
if err != nil {
log.Println("Error parsing", err)
}
}
return data, index
}
- Can you please help me to resolve this error. Thanks!
Kunal Kasodekar commented
The issue was resolved after fixing the log type to preordered.