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
F17947827: D19814.diff
Thu, Jul 31, 6:52 PM
F17942295: D19814.id47329.diff
Thu, Jul 31, 6:37 AM
F17849884: D19814.diff
Sun, Jul 27, 9:13 AM
Unknown Object (File)
Jul 1 2025, 6:28 PM
Unknown Object (File)
Jun 1 2025, 9:44 AM
Unknown Object (File)
Jun 1 2025, 7:09 AM
Unknown Object (File)
May 30 2025, 12:15 PM
Unknown Object (File)
May 29 2025, 6:16 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.