Сохранение созданного исключения для CONCURRENT_MAP_REMOVE при использовании Hazelcast (Java)

Я использую hazelcast -2.5 в кластере. Я пытаюсь загрузить ArrayList объектов, определенных пользователем (с несколькими строковыми полями и одним целым числом) в реализации загрузки хранилища моей карты Hazelcast (String, ArrayList). Первоначальная загрузка all не дает мне никаких исключений. Однако, если загрузка вызывается из-за вызова get на карте для ключа, для которого нет значения в карте (и, следовательно, вызывается загрузка), я вижу следующее исключение (я также делаю удаление операции на карте после этого момента времени):

Store thrown exception for CONCURRENT_MAP_REMOVE

Это дает мне исключение приведения класса, в котором говорится, что мой объект UD не может быть приведен к строке. Я не удивлюсь, если я что-то пропустил в своей реализации - просто когда этот вызов сделан, я пытаюсь выполнить операцию получения на карте и присвоить результат ArrayList пользовательского объекта. Операция загрузки в хранилище-загрузке также возвращает ArrayList определенного пользователем объекта (загрузка хранилища объявляется таким же образом).

WARNING: [192.168.1.1]:5703 [dev] Store thrown exception for CONCURRENT_MAP_REMOVE
java.lang.ClassCastException: models.test.TestClass cannot be cast to java.lang.String
    at models.test.StoreLoadTestMap.load(StoreLoadTestMap.java:1)
    at com.hazelcast.impl.concurrentmap.MapStoreWrapper.load(MapStoreWrapper.java:143)
    at com.hazelcast.impl.ConcurrentMapManager$RemoveOperationHandler$RemoveLoader.doMapStoreOperation(ConcurrentMapManager.java:2681)
    at com.hazelcast.impl.ConcurrentMapManager$AbstractMapStoreOperation.run(ConcurrentMapManager.java:3860)
    at com.hazelcast.impl.executor.ParallelExecutorService$ParallelExecutorImpl$ExecutionSegment.run(ParallelExecutorService.java:212)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)
    at com.hazelcast.impl.ExecutorThreadFactory$1.run(ExecutorThreadFactory.java:38) 

Любые идеи по устранению неполадок?


person ali haider    schedule 26.03.2013    source источник
comment
Мне нужно подтвердить, но похоже, что я получу это исключение, если список массивов, возвращаемый из операции загрузки (в реализации загрузки хранилища), пуст.   -  person ali haider    schedule 27.03.2013


Ответы (1)


Похоже, что вы получите это исключение, если список массивов, возвращаемый из операции загрузки hazelcast (в реализации загрузки хранилища), пуст.

person ali haider    schedule 16.04.2013