Missing rules when using expirable maps/caches from popular open source libraries
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
Direzione di ricerca
Inizia individuando le definizioni delle regole Java del repository e i test per gli avvisi relativi a SnapStart. Esamina come i check identificano l’utilizzo di librerie e metodi, quindi copri Guava expireAfterAccess/expireAfterWrite e le varianti di scadenza di ExpiringMap. Il lavoro è completato quando i pattern pertinenti delle cache con scadenza producono un avviso, mentre l’utilizzo delle cache senza scadenza rimane invariato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
In case the expirable cache is initialized in the constructor of the Lambda class and some entries are put as well it may happen that the entries are not there anymore after the SnapStart snapshot is restored. The should be a warning of usage of time-based cached with the SnapStart is enabled.
In particular I'm thinking of the usage of 2 popular open source libraries:
- Google Guava ( artifact id guava and group id com.google.guava) and the code like this
myCache = CacheBuilder.newBuilder().expireAfterAccess(3600, TimeUnit.SECONDS) .build();
myCache.put("key", "value");
- Using artifact id expiringmap and the group id net.jodah and the code like this
expiredMap = ExpiringMap.builder().expiration(3600, TimeUnit.SECONDS).build();
expiredMap.put("key", "value");
I know that it's difficult to spot such use cases because both open source libraries offer standard and not expirable caches. But the invocation of the methods like CacheBuilder.newBuilder().expireAfterAccess/expireAfterWrite or multiple variations of methods ExpiringMap.builder().expiration* when creating the cache using these open source tools is a clear indication of the creation of expirable cache.
- Lingua principale
- Java
- Stelle
- 53
- Fork
- 10
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di aws/aws-lambda-snapstart-java-rules
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
aws/aws-lambda-snapstart-java-rules#35 · 1 commento ·
Tutte le issue di aws/aws-lambda-snapstart-java-rules
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
-
Two open-case totals on one screen: the Programs tile says 15,858 and the nav badge says 15,868 Apertabug frontend maui-pilot
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
objectionary/eo-graphs#74 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100