Error with Reporting Services Render with DOCX (stress test)

Hi Tahir,

Please can you share how you attempted to reproduce the issue.
Did you attempt to call the report server multiple times in parallel ?

It would help if I knew the approach you took.

Hi Neil,

Please accept my apologies for late response.

Thanks for your inquiry. I investigated your RDL with export option, one file at a time and did not found any issue. I know, the issue you are facing is with exporting RDL file in parallel (10 run in parallel (same rdl is being called). Also, after removing detail/group removes this exception.

To investigate/reproduce this issue, we need to use the same approach which you are following in your code. So, It would be great if you please create a test application with same RDL file and share it here for testing purposes. We really keen to help you but need some more details from your side.

Hi Tahir,

I will look to make an example app for you. I do not understand why you do not have existing infrastructure to run reports in parallel. I would have expected this to be available to you.

Hi Tahir,

attached is a sample console application that will run in parallel 1000 calls to SSRS. (Not sure how many threads are running in parallel however the error still occurs).

To run it:

ConcurrencyIssue.exe “http://{SERVER}:{PORT}/{SSRS Instance}/ReportExecution2005.asmx” “{SSRS PATH TO REPORT}/TestReport”

The first parameter is the URL to the ReportExecution2005 service and the second is the path to the report in SSRS. This will all depend on your setup.

I have attached TestReport.RDL to test with.

The code is attached and the .exe is in the debug directory. The documents are written to the debug\output directory and the error.txt file is created in the debug directory. It will show you the error.

I ran it twice on my side - the first time i saw the error was after 800 calls and the second time was after around 300 calls.

Let me know if there are any problems running it.

Hi Neil,

Thanks for sharing the details. I am working over your query and will get back to you soon.

Hi Neil,

Thanks for your patience. I have tested the scenario for parallel 1000 calls with same DLL shared by Vadim at this link. Please see the attachment. It would be great if you please test the same TestReport.rdl file at your end and share your findings with us. Please restart SQL Server Reporting Services before testing. I have attached an output document with this post.

Hi Tahir,

I have tried it on a second instance (on a different machine). I restarted it etc. What was interesting was that i ran the example application a couple of times and it was successful. After running it around the 4th/5th time I started to see the error.

Please can you try it a few times… OR if you want change the number of calls being made … maybe from 1000 to 3000. But I think you need to run it a few times based on what I have just seen.

Hi,

Is there an update on this ?

Hi Neil,

Could you please check caching options on the side of Reporting Server?
It is in Properties -> Execution tab in SSRS configuration pages.

Regards,
Vadim

Hi Vadim,

Please have a look at the attached screenshot. Are you referring to report level caching ? It looks like caching is off.

Hi Neil,

Right, this is report level caching.

Is it possible to switch on caching (say for 1 min)?
And then re-run the set of reports?

Regards,
Vadim

Hi Vadim,

Thanks,

I have tested the example app with caching on and have run it multiple times and have not seen the issue. I need to test it on the actual application, however SSRS caching will kick in for specific repeated parameters, and in the original identification of the problem the report was being called in parallel with differing parameter values for each call and therefore not sure if this would be a viable work around in this instance.

I will do a test though and will let you know. I would just like to confirm though - have you been able to reproduce the issue on your side ?

Hi Neil,

>have you been able to reproduce the issue on your side ?

I will try to reproduce today and will let you know.

Regards,
Vadim

Hi,

Enabling caching does not seem to have fixed the issue when parameters are changed for the different parallel calls.

Any luck reproducing the issue ?

Hi Neil,

Please accept my apologies for late response.

*neilst:

I have tried it on a second instance (on a different machine). I restarted it etc. What was interesting was that i ran the example application a couple of times and it was successful. After running it around the 4th/5th time I started to see the error.

Please can you try it a few times… OR if you want change the number of calls being made … maybe from 1000 to 3000. But I think you need to run it a few times based on what I have just seen.*

I have tested the same scenario for five times with parallel 1000 calls to SSRS and have not faced any issue. I am using the same TestReport.rdl report shared at this forum link. Are you using the same RDL file?

Hi Tahir,

Yes - I am using that rdl.

Can you confirm that you have not enabled caching on the report like Vadim indicated above.

Hi Neil,

Please accept my apologies for late response. Thanks for your inquiry. Yes, I have not enabled the caching on the report. Please see the attached image for detail.

Hi Tahir,

So what now ?

I have reproduced this issue one 2 different instances of Reporting Services and essentially 2 different code bases.

What can you guys do on your side to try take this further ?

Hi Neil,

Thanks for your inquiry. It would be great if you please share your working environment like Operating System, SQL Server Reporting Services version etc. Once you share the details, we will prepare the required platform to simulate the environment as of yours. We will test this scenario at same platform and share our finding with you. I have tested the scenario at Windows 7 and SQL Server 2012 and have not faced any exception.

Thanks Tahir,

The 1 environment is SQL SERVER 2008 with Windows 7
The second environment I will need to confirm…