Skip to content
  • Jamie Tanna's avatar
    Introduce a smaller Renovate DB query for generating data · 9c679eb1
    Jamie Tanna authored
    As noted in #73, we've got a few cases where we're fetching the whole
    set of dependencies we've got across the database, but only using a
    subset of the data, which can be duplicated between other rows.
    
    We can replace this by doing a `SELECT DISTINCT` query for only the
    fields that are necessary.
    
    Unfortunately we cannot change this for `endoflifedate.Generate` (as
    highlighted in #80).
    
    For a - larger - dataset I'm testing against, this reduces from ~73k to
    ~16k rows being checked, which significantly improves performance,
    especially taking into account the way these are then used for HTTP
    calls.
    
    For now, we can directly depend on the
    `renovatedb.RetrieveDistinctPackagesRow` struct, but would likely want
    to break this dependency by adding a layer of abstraction in the future.
    
    Closes #73.
    9c679eb1
Loading