Skip to content

Commit

Permalink
merge multi page stats for glean query
Browse files Browse the repository at this point in the history
Summary: Merge stats if multiple pages

Reviewed By: josefs

Differential Revision: D63093220

fbshipit-source-id: 6a942340e06597d2d3b096bd9bc8dcaa50bd3036
  • Loading branch information
Julia Molin authored and facebook-github-bot committed Sep 23, 2024
1 parent 02669e6 commit 916c653
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions glean/tools/gleancli/GleanCLI/Query.hs
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ instance Plugin QueryCommand where
| m > n = Just $ Just (m-n)
| otherwise = Nothing

loop cont limit = do
loop prev_stats cont limit = do
UserQueryResults{..} <- Glean.userQuery backend repo def
{ userQuery_query = query_bytes
, userQuery_encodings = [UserQueryEncoding_json
Expand All @@ -170,16 +170,18 @@ instance Plugin QueryCommand where
Just _ -> def
}
}
let stats = prev_stats <> userQueryResults_stats
n <- case userQueryResults_results of
UserQueryEncodedResults_json UserQueryResultsJSON{..} -> do
mapM_ (B8.hPutStrLn h_out) userQueryResultsJSON_facts
return $ length userQueryResultsJSON_facts
_ -> die 1 "error: unexpected results encoding"
print_stats userQueryResults_stats
print_debug userQueryResults_diagnostics
case userQueryResults_continuation of
Just new_cont
| Just new_limit <- subtract_limit limit $ fromIntegral n ->
loop (Just new_cont) new_limit
_ -> return ()
loop Nothing $ fromIntegral <$> limitFacts
loop stats (Just new_cont) new_limit
_ -> do
print_stats stats
return ()
loop Nothing Nothing $ fromIntegral <$> limitFacts

0 comments on commit 916c653

Please sign in to comment.