Сборщик мусора может очистить часть моих данных? - PullRequest
0 голосов
/ 05 сентября 2018

В своем приложении Java, которое предоставляет API для моих клиентов, я создал систему авторизации между пользователями, сущностями, веб-службами и типами профилей.

Все эти разрешения сохраняются в таблице при запуске приложения, а затем обновляются, как только я создаю новое разрешение, или новый веб-сервис, или новый профиль

Объявить класс:

@Component("accessChecker")
@Scope("singleton")
public class AccessChecker {

Конструктор:

 HashMap<String, List<Permission>> permissions = new HashMap<String, List<Permission>>();


public AccessChecker(PermissionRepository permissionRepository, WebServiceRepository webServiceRepository,
                     ProfilRepository profilRepository, UserRepository userRepository) {
    super();
    this.permissionRepository = permissionRepository;
    this.webServiceRepository = webServiceRepository;
    this.profilRepository = profilRepository;
    this.userRepository = userRepository;

    this.updatePermissions();
}

Метод в том же классе для загрузки данных!

public void updatePermissions() {
    log.info("**** DEBUT MISE A JOUR DES PERMISSIONS");
    List<Permission> permissionsTmp = permissionRepository.findAllWithEagerRelationships();

    // clear permissions
    this.permissions = new HashMap<String, List<Permission>>();

    // load all permissions
    for (Permission permission : permissionsTmp) {
        Profil profil = profilRepository.findOne(permission.getProfil().getId());
....

Проблема, с которой я столкнулся в последнее время, заключается в том, что я чувствую, что время от времени теряю часть контента. Иногда клиент звонит мне и говорит, что у него нет доступа к данным. Перезагружая разрешения путем создания разрешения. После этого все кажется в порядке

У вас есть идеи, почему я теряю эти данные?

Мое приложение развернуто на Heroku

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...