1. 19 3月, 2016 1 次提交
  2. 15 3月, 2016 1 次提交
    • Y
      Ignore eager loading in Project.search UNION · c7427602
      Yorick Peterse 提交于
      The queries that are UNION'd together don't need any eager loading
      (since we really only use the resulting SQL instead of having
      ActiveRecord actually run the queries). By dropping any eager loaded
      associations queries such as the following work instead of producing a
      SQL error:
      
          Project.all.includes(:namespace).search('foo')
      c7427602
  3. 12 3月, 2016 2 次提交
    • Y
      Use ILIKE in Project.search_by_title · db615d0a
      Yorick Peterse 提交于
      Similar to the changes made to Project.search the method
      Project.search_by_title now also uses Arel so it can automatically use
      ILIKE/LIKE instead of the lower() function.
      db615d0a
    • Y
      Use ILIKE/LIKE + UNION in Project.search · 135659a7
      Yorick Peterse 提交于
      This chance is broken up in two steps:
      
      1. Use ILIKE on PostgreSQL and LIKE on MySQL, instead of using
         "WHERE lower(x) LIKE lower(y)" as ILIKE is significantly faster than
         using lower(). In many cases the use of lower() will force a slow
         sequence scan.
      
      2. Instead of using 1 query that searches both projects and namespaces
         using a JOIN we're using 2 separate queries that are UNION'd
         together. Using a JOIN would force a slow sequence scan, using a
         UNION avoids this.
      
      This method now uses Arel as Arel automatically uses ILIKE on PostgreSQL
      and LIKE on MySQL, removing the need to handle this manually.
      135659a7
  4. 10 3月, 2016 1 次提交
  5. 09 3月, 2016 2 次提交
  6. 08 3月, 2016 2 次提交
  7. 26 2月, 2016 1 次提交
    • Y
      Flush repository caches before renaming projects · 1dfef90a
      Yorick Peterse 提交于
      This ensures that if a project is later re-created using the old path it
      doesn't end up re-using the old cache. This also ensures we don't keep
      the cache around until its expired by Redis itself.
      
      Fixes gitlab-org/gitlab-ce#13790
      1dfef90a
  8. 19 2月, 2016 1 次提交
  9. 06 1月, 2016 1 次提交
  10. 24 12月, 2015 1 次提交
  11. 12 12月, 2015 5 次提交
  12. 09 12月, 2015 2 次提交
  13. 03 12月, 2015 1 次提交
  14. 19 11月, 2015 1 次提交
  15. 18 11月, 2015 1 次提交
  16. 13 11月, 2015 1 次提交
  17. 06 10月, 2015 1 次提交
    • Y
      Revamp trending projects query · b7abba0c
      Yorick Peterse 提交于
      This changes the query to use a COUNT nested in an INNER JOIN, instead
      of a COUNT plus a GROUP BY. There are two reasons for this:
      
      1. Using a COUNT in an INNER JOIN can be quite a bit faster.
      2. The use of a GROUP BY means that method calls such as "any?"
         (and everything else that calls "count") operate on a Hash that
         counts the amount of notes on a per project basis, instead of just
         counting the total amount of projects.
      
      The query has been moved into Project.trending as its logic is simple
      enough. As a result of this testing the TrendingProjectsFinder class
      simply involves testing if the right methods are called, removing the
      need for setting up database records.
      b7abba0c
  18. 03 10月, 2015 1 次提交
  19. 02 10月, 2015 1 次提交
  20. 29 9月, 2015 2 次提交
  21. 23 9月, 2015 2 次提交
  22. 18 9月, 2015 1 次提交
  23. 11 8月, 2015 2 次提交
  24. 03 8月, 2015 1 次提交
  25. 29 7月, 2015 1 次提交
  26. 15 7月, 2015 1 次提交
  27. 22 6月, 2015 1 次提交
  28. 10 6月, 2015 1 次提交
  29. 27 5月, 2015 1 次提交