Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-2000

Assumptions


AssumptionNotes
1

Solution should be CPS-Core based not just in NCMP

Caffeine Cache is a CPS-Core solution
Upgrade is also possible without NCMP
2

Upgrades are backward compatible


Issues & Decisions


#

Issue

Notes 

Decision

1Preferred AlternativeCPS Team prefers Alternative 2

  Team and stakeholders agreed on Alternative 2

2Integration or jUnit Test First

Solution Proposal

Assumption

...


Agreed but only possible using Unit Test (stil using real cache etc.)

Solution Proposals

Alternative 0: Remove existing cache

  • tried but mush much slower and ODL memory leak experienced

...


ProCon
1
Update CPS-Core to produce and consume Kafka messages
2
More Kafka messages (new interface)
3No unnecessary validation
4Upgrade itself not delayed

Alternative 2 (chosen): Clear Cache upon validation error

  1. Worst case scenario: an update (with newly modelled data) happens before cache expiry. Update gets reject (fails validation)
    1. mitigation: Invalidate cache upon validation error and try again (consider this as an extension alternative 2 once)

ProCon
1
10 minutes window where additional validation might occur
2fails-safe wil cover all scenarios
3NO new message/interface
4Simplest solution
5Upgrade itself not delayed
6
Real validation errors will always  tried twice and perform relatively slowly

Alternative 3: (existing) Kafka Message with (new) Kafka Confirmation

Not viable without knowing how many instances need to form ie need Hazelcast Cache

...

...

Alternative 4:

...

New COS-Core Kafka Message with (new) Hazelcast Cache (semaphore)

...

Confirmation

...

Just an extension of Alternative 1 which is not the preferred option

Alternative 5: (existing) Polling (status watchdog) with (new) confirmation

Not viable because upgrades can be completed well withing polling time

...

...

Alternative 6: Add version info the cache-key


ProCon
1No issue with non-distributed cache
2
NCMP specific solution?
23
Version infor info NOT readily avaialble availably (many impacts)