Skip to content

Crash due to unknown string encoding #21569

@edmcman

Description

@edmcman

I'm getting a crash when I run codeql database analyze my-db codeql/cpp-queries:codeql-suites/cpp-security-extended.qls --format sarif-latest --output results.sarif:

Oops! A fatal internal error occurred. Details:
com.semmle.inmemory.DBError: Unknown string encoding: 4389148. Maximum current encoding is: 4387101. There are 704544 extensional strings,643554 cached strings and 3682557 intensional strings.
    at com.semmle.inmemory.stringpool.StringPool.noSuchStringError(StringPool.java:536)
    at com.semmle.inmemory.stringpool.StringPool.getBinaryEncodingOfString(StringPool.java:689)
    at com.semmle.inmemory.relations.BinaryQueryResultSetsEncoder$StringPoolQueryResultsBuilder.encodeString(BinaryQueryResultSetsEncoder.java:99)
    at com.semmle.inmemory.relations.BinaryQueryResultSetsEncoder$Encoder$4.encode(BinaryQueryResultSetsEncoder.java:44)
    at com.semmle.inmemory.relations.BinaryQueryResultSetsEncoder$BinaryQueryResultSetEncoder.addTuple(BinaryQueryResultSetsEncoder.java:169)
    at com.semmle.inmemory.relations.BaseIntArrayRelation.map(BaseIntArrayRelation.java:88)
    at com.semmle.inmemory.caching.PagedRelation.map(PagedRelation.java:158)
    at com.semmle.inmemory.MemoryBackend.getResultSets(MemoryBackend.java:258)
    at com.semmle.inmemory.MemoryBackend$QueryOrchestrator.lambda$startEverything$1(MemoryBackend.java:486)
    at com.semmle.inmemory.scheduler.CapstoneTask.evaluate(CapstoneTask.java:178)
    at com.semmle.inmemory.scheduler.CapstoneTask$2.doWork(CapstoneTask.java:168)
    at com.semmle.inmemory.scheduler.execution.ThreadableWork.doSomeWork(ThreadableWork.java:396)
    at com.semmle.inmemory.scheduler.execution.ExecutionScheduler.runnerMain(ExecutionScheduler.java:713)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)

It takes about an hour to trigger. So far, it has happened 2/2 attempts.

This is the repository I am analyzing: https://github.com/arichardson/juliet-test-suite-c/

I'm using codeql 2.25.0.

I'm happy to upload more data/information; just tell me what you need.

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions