Octodiff exit code4

Hi guys,

we have following octodiff warnings during deployment.

                    |       Success: Upload package efc version
16:41:27   Verbose  |         Octopus Deploy: Calamari version 3.3.13+Branch.master.Sha.821b4ffaf94e26f64cd9c14be2f3969587822fad
16:41:27   Verbose  |         Name                           Value
16:41:27   Verbose  |         ----                           -----
16:41:27   Verbose  |         PSVersion                      4.0
16:41:27   Verbose  |         WSManStackVersion              3.0
16:41:27   Verbose  |         SerializationVersion 
16:41:27   Verbose  |         CLRVersion                     4.0.30319.42000
16:41:27   Verbose  |         BuildVersion                   6.3.9600.17400
16:41:27   Verbose  |         PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
16:41:27   Verbose  |         PSRemotingProtocolVersion      2.2
16:41:27   Verbose  |         Octopus Deploy: Calamari version 3.3.13+Branch.master.Sha.821b4ffaf94e26f64cd9c14be2f3969587822fad
16:41:27   Verbose  |         Package efc version hash 0699f3fc644b154e8032be02fd3876c8178cd0b4 has not been uploaded.
16:41:27   Verbose  |         Finding earlier packages that have been uploaded to this Tentacle.
16:41:31   Verbose  |         Found 2 earlier versions of efc on this Tentacle
16:41:31   Verbose  |         - C:\Octopus\sct-octo-02\Files\efc.
16:41:31   Verbose  |         - C:\Octopus\sct-octo-02\Files\efc.
16:41:31   Info     |         Found matching version C:\Octopus\Packages\efc\efc.
16:41:31   Info     |         Uploading package efc
16:41:31   Verbose  |         Requesting upload...
16:41:31   Info     |         Beginning streaming transfer of efc.
16:41:35   Info     |         Stream transfer complete
                    |         Running: Building delta for efc version
16:41:31   Info     |           Using package C:\Octopus\Packages\efc\efc. with hash e4419bf682f4656159e583f28f019c211f03db3a for creating delta
16:41:31   Verbose  |           Building signature file: C:\Octopus\OctopusServer\PackageCache\efc.
16:41:31   Verbose  |           - Using nearest package: C:\Octopus\Packages\efc\efc.
16:41:31   Warning  |           The previous command returned a non-zero exit code of: 4
16:41:31   Warning  |           The command that failed was: "C:\Program Files\Octopus Deploy\Octopus\Octodiff.exe" signature "C:\Octopus\Packages\efc\efc." "C:\Octopus\OctopusServer\PackageCache\efc." --progress

Any ideas why this is happening and how critical is it for deployment?
Server and tentacles version: 3.3.14

Hi Vladimir,

Thanks for geting in touch! Octodiff is our delta compression library. The delta compression is used to minimise the size of files being sent to tentacles during deployments.

As for what could be causing this issue, is it possible that an antivirus could be scanning the file as it is being created?

It is not too critical for your deployment if Octodiff is not run, you could turn it off if you do not want to see the error, it will make new package deployments slower.
If you wish to turn this feature off, create the project variable Octopus.Acquire.DeltaCompressionEnabled and set its value to False

Looking forward to hearing from you. :slight_smile:

Best regards,

Hi Daniel,

Thank you for reply.
We reviewed doc for Octodiff (https://github.com/OctopusDeploy/Octodiff)
Here is

Usage: Octodiff signature <basis-file> [<signature-file>] [<options>]
      basis-file             The file to read and create a signature from.
      signature-file         The file to write the signature to.

so arg should be signature-file, but in logs we have

 "C:\Program Files\Octopus Deploy\Octopus\Octodiff.exe" signature "C:\Octopus\Packages\efc\efc." "C:\Octopus\OctopusServer\PackageCache\efc." --progress

used just signature and exit code 4 also confirm wrong argument.

Any ideas how could it be fixed?

Hi Vladimir,

I have investigated this a little further.
It appears the problem is that octodiff.exe is being supplied with a partial signature file. i.e. C:\Octopus\OctopusServer\PackageCache\efc.

This shouldn’t happen. I have raised an issue, which you can watch.
We’ll get this resolved as soon as we can.

Apologies for any inconvenience.