• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

AfterShip / clickhouse-sql-parser / 30480769660

29 Jul 2026 06:37PM UTC coverage: 54.563% (+0.3%) from 54.268%
30480769660

Pull #293

github

therealpandey
Keep GLOBAL an operator unless a join actually follows it

Ending the expression whenever GLOBAL was not followed by IN/NOT left the
keyword for the enclosing clause to pick up, and the select item parser
takes any non-reserved keyword as an implicit alias. So
`SELECT a GLOBAL FROM t` began parsing as `SELECT a AS GLOBAL FROM t`,
which ClickHouse rejects as a syntax error. Looking ahead for the join
operator instead narrows the back-off to the locality it was meant for and
leaves GLOBAL binding like IN everywhere else, as it did before.

The ARRAY JOIN guard compared against the uppercase keyword, but
parseJoinOp records each modifier's source spelling, so
`GLOBAL array JOIN arr` slipped past it and read the column list as a
table expression.
Pull Request #293: Fix parsing of the GLOBAL/LOCAL join locality and GLOBAL NOT IN

65 of 69 new or added lines in 3 files covered. (94.2%)

514 existing lines in 3 files now uncovered.

9004 of 16502 relevant lines covered (54.56%)

3074.65 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

77.99
/parser/parser_column.go


Source Not Available

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc