ePO 5.9.1 and the DLP Endpoint Management extension both implement different versions of the Bouncy Castle library. If ePO initializes its implementation of the Bouncy Castle library before the DLP Endpoint Management extension is loaded, then a cyclic inheritance occurs in Java. This cyclic inheritance causes Java to stop the DLP Endpoint Management extension from loading.
Normally, the extension load order in ePO is deterministic. But, certain workflows exist that can trigger extensions to load in a non-deterministic order. For example, suppose that you try to log on to the ePO console when extensions are still loading. This action triggers ePO to load its Bouncy Castle implementation before the DLP Endpoint extension loads. The reason is because ePO uses the Bouncy Castle library to encrypt and decrypt the password provided by the user. This example is just one of many for how this problem might occur.