Description

This article explains the errors "Statement creation failed" or "statement not found" observed while updating the security policy from Security Director Cloud, and how to resolve them.

Symptoms

Users may encounter the following error when they perform a Security Policy update from the Security Director Cloud to the device.

 

Here is an example of a "Statement creation failed" error: 

Cannot invoke "net.juniper.space.sd.versioning.VersionMetaDataMO.getId()" because "versionMO" is null

 Exception occurred during batch processing of sub-jobs, deploy failed for the following device(s), with attached error:{<Rule_name>=deploy failed with error:[ErrorSeverity:error,ErrorPath:,ErrorMessage:statement creation failed,BadElement:<Object>}

Start Time

Aug 7, 2025, 9:50:37 PM

End Time

Aug 7, 2025, 9:51:02 PM

Owner

<email>

Job Id

<jobID>

Here is the actual workflow of how auto-resync works:

  • During the Update job, SD will SSH to the device and perform the configuration delta that will display in the preview.
  • Then SD does the commit operation.
  • On the device, when a commit operation is performed, "requested 'commit' operation" will trigger a Syslog message to the Security Director Cloud indicating the commit operation performed on the device.
  • When Security Director Cloud receives the syslog message about the commit operation, the auto-resync job will trigger, which will sync the latest configurations from the device to its database.

Root cause of the statement creation failed message:

  • The "Statement creation failed" issue occurs if the auto-resync job fails to trigger, causing the configurations pushed to the device from SD not to be updated in the Security Director Cloud database.
  • Because of this issue, when users perform the Update job, the first occurrence of the Update Job will be a success in most of cases, and the following update after some changes to the SD will fail with an error "Statement creation failed". This is because the preview will show the "Already updated configuration" and the "Newly made changes".

Root cause of the statement not found message:

  • The problem is caused because the configuration line has already been deleted from the device, either from an SD deploy or a Device change, but this change hasn't been detected by Security Director, so the deploy job will fail, requiring a manual resync with the network to reflect those changes.
  • This issue is identified because the line that's being deleted no longer exists in the device configuration(CLI).
  • Example of a configuration line from the preview changes tab from the Security Director app.
  • delete security address-book global address address_name X.X.X.X/X

Solution

First, try performing "Resynchronize Devices | SD Cloud", and then perform a couple of updates to see if the issue is occurring. If the issue is not occurring, the reported issue is resolved.


If in case the issue is not resolved, then open a case with JTAC for further assistance.

 

Modification History

2025-08-14 : Article Created