Missing rules when using expirable maps/caches from popular open source libraries
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 48/100
Piste de recherche
Commencez par localiser les définitions de règles Java du dépôt et les tests associés aux avertissements liés à SnapStart. Examinez comment les checks identifient l’utilisation de bibliothèques et de méthodes, puis couvrez Guava expireAfterAccess/expireAfterWrite ainsi que les variantes d’expiration de ExpiringMap. La tâche est terminée lorsque les modèles pertinents de caches avec expiration produisent un avertissement, tandis que l’utilisation de caches sans expiration reste inchangée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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.
- Langage dominant
- Java
- Étoiles
- 53
- Forks
- 10
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de aws/aws-lambda-snapstart-java-rules
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
aws/aws-lambda-snapstart-java-rules#35 · 1 commentaire ·
Toutes les issues de aws/aws-lambda-snapstart-java-rules
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
grimmory-tools/grimmory#2850 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 90/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
aoqia194/leaf-loader#19 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
apache/streampark#4521 ·
-
Update license yearOuverte0 - Backlog 1 - Ready documentation good first issue help wanted
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100