Skip to content

Conversation

shati-patel
Copy link
Contributor

No description provided.

jbj and others added 22 commits April 22, 2020 15:14
This predicate is effectively a Cartesian product between all enum
types. It's infeasible to compute it in full, so luckily the optimizer
has been able to apply enough magic to make it feasible. That's not a
robust solution, and it has indeed broken on at least one version of the
1.24 release candidate.

On a Chromium snapshot where I ran the LGTM suite overnight, the
`m#MistypedFunctionArguments::arithTypesMatch#bb` predicate (magic for
`arithTypesMatch`) took 170m5s. That was commit b69fdf5 from the
internal repo. I tried to reproduce it in VSCode, this time with commit
646646, but it wasn't quite as bad: the predicate took only 38 seconds.
In any case, making the problematic predicate `pragma[inline]` removes
the slow magic and makes the `MistypedFunctionArguments.ql` query
faster.
It looks like this change will stop `SignedOverflowCheck.ql` from
needlessly re-evaluating several cached stages.
Highlight "unique" as a keyword in CodeQL docs
C++: inline arithTypesMatch predicate
This `select` clause had become very slow after we started caching
`ElementBase::toString` because the query used string concatenation to
produce alert messages, and those string concatenations were done very
early in the pipeline, producing lots of strings that would be discarded
moments later.

By using `$@` to interpolate elements into strings, the concatenation is
done outside of QL.

Testing on a Chromium snapshot, this commit takes us from

    #select#ff ................ 6m2s

to

    #select#cpe#134#fff ....... 15.2s
C++: Speed up SuspiciousAddWithSizeof select
Learn CodeQL docs: add note about path queries to data flow tutorials
Update link text
…k-link

Add link to new Go cookbook space
Docs: Delete "Technical information" articles
Copy link
Contributor

@jf205 jf205 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

jmog 👍

@semmle-qlci semmle-qlci merged commit 62b7cbf into github:master Apr 29, 2020
@shati-patel shati-patel deleted the mergeback branch April 29, 2020 08:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants