Hi Octopus Team,
I keep getting the stated error ‘The request failed with HTTP status 503: Server Too Busy’ when I run a reports deployment from Octopus steps, however if I run the scripts locally, it seems fine, no issue.
Following is the script run on Octopus step:
& cmd /C “C:\installers\Deployment.bat 500”
Where the Deployment.bat script is shown below:
“C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\rs.exe” -i DeployRDL.rss -s http://myserver/ReportServer -v
v_pathToRDLs=“C:\Temp\RDLs” -v v_folderName=“test” -v v_user=“account” -v v_pass=“password”
Thanks for getting in touch.
There is a troubleshooting guide from Microsoft regarding SSRS here: https://msdn.microsoft.com/en-us/library/ms159778.aspx I think the section on HTTP.SYS logging may help.
Can you run your script from the same machine and with the same user that the Octopus deployment is using?
Thanks for getting back, I have tried to run the script locally on the same machine and with the same user, it works perfectly fine.
If it is the memory issue, the second scenario should not be working neither.
Just additional note, if I run it using Octopus step, it first started generating reports fine, but it thrown the 503 error around the half way through.
Is it because Octopus Deploy itself consume a lot of memory?
It sounds like it might be memory pressure, especially if the report started to generate and then stops with 503. From https://docs.microsoft.com/en-us/sql/reporting-services/report-server/configure-available-memory-for-report-server-applications:
Server applications that request more memory are denied. Current requests are slowed down and take longer to complete. New requests are not accepted. The report server swaps in-memory data files to disk.
If memory constraints become severe and there is no memory available to handle new requests, the report server will return an HTTP 503 server unavailable error while current requests are completing.
Octopus Tentacle should not be using much memory. Tentacles loads Calamari and PowerShell while your script is running. It would probably be worth keeping an eye on memory usage while the report is generating to see if memory pressure is a likely cause of the error.