[#266] services/tree: Return operation log up to some height

Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
pull/266/head
Evgenii Stratonikov 2023-04-11 19:50:48 +03:00
parent 2dc2fe8780
commit f7679a8168
1 changed files with 5 additions and 1 deletions

View File

@ -531,9 +531,13 @@ func (s *Service) GetOpLog(req *GetOpLogRequest, srv TreeService_GetOpLogServer)
}
h := b.GetHeight()
lastHeight, err := s.forest.TreeHeight(cid, b.GetTreeId())
if err != nil {
return err
}
for {
lm, err := s.forest.TreeGetOpLog(cid, b.GetTreeId(), h)
if err != nil || lm.Time == 0 {
if err != nil || lm.Time == 0 || lastHeight < lm.Time {
return err
}