The IDatabase::select documentation suggests to put simple JOINs directly in the WHERE conditions. (This StackOverflow answer describes this as “traditional” / ANSI-89 syntax, with JOIN being ANSI-92 syntax.) @jcrespo says these joins should not be used, and I see no reason not to believe him, so let’s fix the documentation so it doesn’t encourage antipatterns. (See parent task for some details.)
Description
Description
Details
Details
Related Changes in Gerrit:
| Subject | Repo | Branch | Lines +/- | |
|---|---|---|---|---|
| rdbms: Strongly discourage simple joins in $conds | mediawiki/core | master | +14 -3 |
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Resolved | Ladsgroup | T246232 Bad Wikidata query format in DatabaseTermInLangIdsResolver::selectTermsViaJoin | |||
| Resolved | Lucas_Werkmeister_WMDE | T258693 Discourage “traditional” / ANSI-89 JOINs (in WHERE instead of JOIN) in IDatabase documentation |
Event Timeline
Comment Actions
Change 615709 had a related patch set uploaded (by Lucas Werkmeister (WMDE); owner: Lucas Werkmeister (WMDE)):
[mediawiki/core@master] rdbms: Strongly discourage simple joins in $conds
Comment Actions
Change 615709 merged by jenkins-bot:
[mediawiki/core@master] rdbms: Strongly discourage simple joins in $conds