R308 – SHARED ROW checks not found (WMB)

SHARED ROW checks not found (WMB)

There are various strategies to safely use SHARED ROW variables in ESQL so that the state when they are written and read from are consistent.

In this case the rules checks that:

  • There is a check as to whether a shared variable is already populated must be implemented outside of an atomic block – allowing concurrent threads to proceed unimpeded in cases where the shared variable is already found to be populated.
  • There is an atomic block that is used to populate a shared variable.
  • There is a “locked” check check as to whether a shared variable is already populated must be implemented inside an atomic block. So that only a single thread is allowed to proceed with the population

There is more information available in the IBM documentation here and another useful article here.