This commit improves HazelcastSessionRepository.SessionUpdateEntryProcessor to avoid NPE in scenario where save operation was invoked for session that was already deleted.
See gh-1076
This commit introduces several optimizations to write operations in `HazelcastSessionRepository`.
- when storing a new session, `IMap#set` is now used instead of `IMap#put`
- when updating an existing session, `IMap#executeOnKey` and a dedicated `EntryProcessor` are used
To make these two changes possible, internal `HazelcastSession` now adds a flag to determine which of the two mentioned write scenarios to use, and also tracks a delta of session attributes in order to optimize updates.
Closes gh-850
This commit improves Hazelcast configuration by introducing `@SpringSessionHazelcastInstance` qualifier for explicitly declaring a `HazelcastInstance` to be used by Spring Session. This is in particular useful in scenarios with multiple `HazelcastInstance` beans present in the application context.
Closes gh-912