Error: Reqiest failed - The file exists


#1

Getting the following debug/error when attempting to Request Certificate.
While I’ve checked all permissions on all the relevant folders I could think of, the issue persists.

2018-06-07 13:19:51.547 +10:00 [INF] Beginning Certificate Request Process: Maximizer
2018-06-07 13:19:51.552 +10:00 [INF] Registering Domain Identifiers
2018-06-07 13:19:51.552 +10:00 [INF] Attempting Domain Validation: FQDN
2018-06-07 13:19:51.552 +10:00 [INF] Registering and Validating FQDN 
2018-06-07 13:19:54.774 +10:00 [INF] Domain already has current authorization, skipping verification: FQDN
2018-06-07 13:19:54.774 +10:00 [INF] Requesting Certificate via Lets Encrypt
2018-06-07 13:20:06.650 +10:00 [INF] Maximizer: Request failed - The file exists.
 System.IO.IOException: The file exists.

   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.__Error.WinIOError()
   at System.IO.Path.InternalGetTempFileName(Boolean checkHost)
   at Certify.ACMESharpCompat.ACMESharpUtils.UpdateCertificate(String certificateRef, String PkiTool, String vaultProfile) in D:\Work\GIT\certify\src\Certify.Core\ACMESharpCompat\ACMESharpUtils.cs:line 865
   at Certify.VaultManager.PerformCertificateRequestProcess(String domainIdentifierRef, String[] alternativeIdentifierRefs) in D:\Work\GIT\certify\src\Certify.Core\Management\VaultManager.cs:line 1194
   at Certify.Management.APIProviders.ACMESharpProvider.PerformCertificateRequestProcess(String primaryDnsIdentifier, String[] alternativeDnsIdentifiers) in D:\Work\GIT\certify\src\Certify.Core\Management\APIProviders\ACMESharpProvider.cs:line 139
   at Certify.Management.CertifyManager.<PerformCertificateRequestProcessing>d__52.MoveNext() in D:\Work\GIT\certify\src\Certify.Core\Management\CertifyManager.cs:line 682
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Certify.Management.CertifyManager.<PerformCertificateRequest>d__51.MoveNext() in D:\Work\GIT\certify\src\Certify.Core\Management\CertifyManager.cs:line 420
2018-06-07 13:20:06.650 +10:00 [INF] Maximizer: Request failed - The file exists.
 System.IO.IOException: The file exists.

Implication from calls looks like suggestion of Temp files/folder?

ed: site detail replaced with FQDN

ed2: I guess I answered my own question (I know how often that happens for the people we help) - used procmon and found Certify having trouble with files in c:\windows\temp. Purged folder and fixed permissions, next request worked successfully. Not the first Windows install where the temp folder permissions have been mucked up by something.


#2

Hi Paul, yes the temp folder does play a part for some operations. Windows has a limit of 65535 temp files under the current temp path, so it’s common that it fills up then strange errors start to appear.