You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Aug 22, 2024. It is now read-only.
Static analysis of the kind that MIRAI does is inherently exponential. There are numerous hacks and heuristics for trying to make sure it never happens in practice., but they only go so far. Given a particular instance of exponential behavior it is often possible to resolve it by adding a heuristic. Unfortunately this is extremely complex and time-consuming, so it going to take a while.
One way to work around this in the meanwhile is to figure out which function is causing the analysis to diverge. One you know the culprit, please 1) update this issue with your findings and 2) either just modify the code to make the function into a dummy (when you analyze with MIRAI: cfg!(mirai)) and add a foreign_contracts module with an explicit summary of the function.
Issue
Analyzing a create is taking huge amounts of memory. If there is no way around that, it should at least be called out in the docs.
Steps to Reproduce
Clone LLDAP (https://github.com/lldap/lldap).
Run
cargo mirai
.Expected Behavior
Diagnostics returned in a reasonable amount of time
Actual Results
10GB of resident memory (12+GB of virtual memory) on a system with 16, and I think issues with swapping.
Environment
rustc 1.67.1 (d5a82bbd2 2023-02-07)
Mirai installed with
info: latest update on 2023-03-22, rust version 1.70.0-nightly (1db9c061d 2023-03-21)
The text was updated successfully, but these errors were encountered: