Имам клъстер hazelcast на два сървъра, с два възела на всеки сървър. Използвам буркана hazelcast, така че възлите на всеки сървър се рестартират при всяко рестартиране на сървъра. Всеки път, когато се случи внедряване на двата сървъра, те се рестартират с 30 секунди разлика. Имах един конкретен случай, когато всеки път, когато приложението поиска определена част от данните, това изключение се хвърля. Използвам MultiMap за кеширане на данни.
Caused by: com.hazelcast.spi.exception.PartitionMigratingException: Partition is migrating! this:Address[app01]:5701, partitionId: 0, operation: com.hazelcast.map.impl.operation.PutOperation, service: hz:impl:mapService
at com.hazelcast.spi.impl.BasicOperationService$OperationHandler.ensureNoPartitionProblems(BasicOperationService.java:833)
at com.hazelcast.spi.impl.BasicOperationService$OperationHandler.handle(BasicOperationService.java:741)
at com.hazelcast.spi.impl.BasicOperationService$OperationHandler.access$500(BasicOperationService.java:725)
at com.hazelcast.spi.impl.BasicOperationService$BasicDispatcherImpl.dispatch(BasicOperationService.java:576)
at com.hazelcast.spi.impl.BasicOperationScheduler$OperationThread.process(BasicOperationScheduler.java:466)
at com.hazelcast.spi.impl.BasicOperationScheduler$OperationThread.doRun(BasicOperationScheduler.java:458)
at com.hazelcast.spi.impl.BasicOperationScheduler$OperationThread.run(BasicOperationScheduler.java:432)
Виждам няколко от тях след изключение.
2015-04-10 14:51:03,403 WARN com.hazelcast.spi.impl.BasicInvocation - [app01]:5701 [dev] [3.4.2] Retrying invocation: BasicInvocation{ serviceName='hz:impl:mapService', op=PutOperation{alert-coms}, partitionId=0, replicaIndex=0, tryCount=250, tryPauseMillis=500, invokeCount=100, callTimeout=60000, target=Address[app01]:5701, backupsExpected=0, backupsCompleted=0}, Reason: com.hazelcast.spi.exception.PartitionMigratingException: Partition is migrating! this:Address[app01]:5701, partitionId: 0, operation: com.hazelcast.map.impl.operation.PutOperation, service: hz:impl:mapService
Разбирам, че се опитва отново същата операция, тъй като беше хвърлено изключение, но проблемът е, че миграцията на дяла не завърши цял уикенд, докато не рестартирах сървърите отново.
Моля, помогнете ми да разбера защо се случва това и какви мерки могат да бъдат взети, за да го предотвратя.
Благодаря.