Page MenuHomePhabricator

Continue cleaning up queries in the wake of changes to "%Q"
ClosedPublic

Authored by epriestley on Nov 15 2018, 2:00 PM.
Tags
None
Referenced Files
F15433395: D19814.id47329.diff
Mon, Mar 24, 10:59 PM
F15392895: D19814.diff
Sat, Mar 15, 6:18 PM
F15381741: D19814.diff
Fri, Mar 14, 9:11 AM
Unknown Object (File)
Mon, Mar 3, 7:52 AM
Unknown Object (File)
Feb 16 2025, 1:36 PM
Unknown Object (File)
Feb 13 2025, 10:35 PM
Unknown Object (File)
Feb 9 2025, 2:10 PM
Unknown Object (File)
Feb 9 2025, 2:09 PM
Subscribers

Details

Summary

Depends on D19810. Ref T13217. Ref T13216. I mostly used grep implode | grep OR and grep implode | grep AND to find these -- not totally exhaustive but should be a big chunk of the callsites that are missing %LO / %LA.

Test Plan

These are tricky to test exhaustively, but I made an attempt to hit most of them:

  • Browsed Almanac interfaces.
  • Created/browsed Calendar events.
  • Enabled/disabled/showed the lock log.
  • Browsed repositories.
  • Loaded Facts UI.
  • Poked at Multimeter.
  • Used typeahead for users and projects.
  • Browsed Phriction.
  • Ran various fulltext searches.

Not sure these are reachable:

  • All the lint stuff might be dead/unreachable/nonfunctional?

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

amckinley added inline comments.
src/infrastructure/query/policy/PhabricatorCursorPagedPolicyAwareQuery.php
1749

We clearly need an`%L+` operator for this extremely common pattern.

This revision is now accepted and ready to land.Nov 16 2018, 7:36 PM

Haha, yeah. Differential had one UNION ALL too but %LU seemed a little ridiculous.

MySQL has a SUM() function but it only works on aggregates and I couldn't find any way to express this as ADD_THESE_UP(%LQ).

This revision was automatically updated to reflect the committed changes.