Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Current implementation has some code for specific 15011 error code. The processor uses EvtSubscribeStrict flag which produces ERROR_EVT_QUERY_RESULT_STALE (15011) event when event records are missing. Currently, the processor only logs the error code. But does not renew subscription.
https://docs.microsoft.com/en-us/windows/desktop/api/winevt/nc-winevt-evt_subscribe_callback
When error 15011 happens, the processor stopped reading further events. It looks as if the processor hangs. The processor doesn't renew subscription because it thinks it already has a valid subscription. The current implementation determines if a subscription is valid by these lines of code:
private boolean isSubscribed() { return subscriptionHandle != null && subscriptionHandle.getPointer() != null; }
If already subscribed, the processor polls received messages from the internal queue. But since the subscription has encountered an error, no further messages available.
Attachments
Issue Links
- relates to
-
NIFI-6996 ConsumeWindowsEventLog leads to a stackoverflow when subscription fails
- Resolved
- links to