• Yorick Peterse's avatar
    Fixed pagination of web hook logs · f3008907
    Yorick Peterse authored
    For reasons unknown, the logs of a web hook were paginated in memory.
    This would result in the "Edit" page of a web hook timing out once it
    has more than a few thousand log entries.
    
    This commit makes the following changes:
    
    1. We use LIMIT/OFFSET to paginate the data, instead of doing this in
       memory.
    
    2. We limit the logs to the last two days, just like the documentation
       says (instead of retrieving everything).
    
    3. We change the indexes on "web_hook_logs" so the query to get the data
       can perform a backwards index scan, without the need for a Filter.
    
    These changes combined ensure that Projects::HooksController#edit no
    longer times out.
    f3008907
20180628124813_alter_web_hook_logs_indexes.rb 851 Bytes