Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • 12-9-stable
  • 12-7-stable
  • 12-6-stable
  • 12-8-stable
  • github/fork/Kloppi313/patch-1
  • 12-5-stable
  • 12-4-stable
  • github/fork/ramalokesh8477/master
  • 12-1-stable
  • 12-2-stable
  • 12-0-stable
  • 12-3-stable
  • 42-42-stable
  • github/fork/hussamgit398/patch-2
  • 12-3-auto-deploy-20190911
  • 12-3-auto-deploy-20190916
  • 12-3-auto-deploy-20190908
  • 12-3-auto-deploy-20190901
  • 12-3-auto-deploy-20190901-32664
  • v12.10.0.pre
  • v12.9.0
  • v12.9.0-rc42
  • v12.8.7
  • v12.8.6
  • v12.8.5
  • v12.8.4
  • v12.8.3
  • v12.6.8
  • v12.7.7
  • v12.8.2
  • v12.8.1
  • v12.9.0.pre
  • v12.8.0
  • v12.8.0-rc42
  • v12.5.10
  • v12.7.6
  • v12.6.7
  • v12.7.5
  • v12.5.9
40 results

schema.rb

  • Markus Koller's avatar
    a3e71610
    Optimize DB indexes for ES indexing of notes · a3e71610
    Markus Koller authored and Mayra Cabrera's avatar Mayra Cabrera committed
    To index notes, we exclude system notes and use `find_in_batches` to
    load them in batches for submission to the ES bulk import API.
    These queries often result in DB timeouts because the usage of
    `ORDER BY id` results in the `notes_pkey` index being used.
    
    This adds an optimized partial index, and removes the unused index
    `index_notes_on_noteable_type` which is already covered for our
    usage by the existing `index_notes_on_noteable_id_and_noteable_type`.
    
    Newer versions of PostgreSQL (at least 11) are smarter about this and
    use `index_notes_on_project_id_and_noteable_type` instead, so we might
    be able to remove the partial index again in the future.
    a3e71610
    History
    Optimize DB indexes for ES indexing of notes
    Markus Koller authored and Mayra Cabrera's avatar Mayra Cabrera committed
    To index notes, we exclude system notes and use `find_in_batches` to
    load them in batches for submission to the ES bulk import API.
    These queries often result in DB timeouts because the usage of
    `ORDER BY id` results in the `notes_pkey` index being used.
    
    This adds an optimized partial index, and removes the unused index
    `index_notes_on_noteable_type` which is already covered for our
    usage by the existing `index_notes_on_noteable_id_and_noteable_type`.
    
    Newer versions of PostgreSQL (at least 11) are smarter about this and
    use `index_notes_on_project_id_and_noteable_type` instead, so we might
    be able to remove the partial index again in the future.