April 20, 2015 at 3:48 am
A friend of mine came up with an issue this morning to me. He is running a report on a Oracle Database from ReportServer but not getting any Data at times.
When he ran the same report, at the same time from SSDT (OK, this issue I believe would be same for 2008, 2012 so posting in one of the forums) he is getting the expected results and he had no idea why suddenly this behaviour.
Upon further analysis he came to know that the underlying table which is the source for his Dataset query is being updated at that time when he is running the report.
So it appears that when table is being updated, report runing from BIDS(SSDT) doesn't have any issue and shows Data (Uncommitted) whereas the report running from ReportServer hangs on and possibly wait for the Updates to get over and locks to be released. This is not expected behaviour for them and they want to ReportServer report to show Data as well.
If this information is enough, kindly advise what to do ? Any report server level properties to be set to read uncommitted data and not to wait for the locks (DB, as mentioned earlier is Oracle and not SQL).
To check this further, I created a table on my machine. All of below was done in SQL Server for testing purpose.
CREATE TABLE [dbo].[TabA](
[ColA] [nchar](10) NULL,
[ColB] [nchar](10) NULL
)
--Inserting 2 records
Insert into [Demo].[dbo].[TabA] values (1,100),(2,200)
Then created a report to get these information in a table. Deployed this report to Report Server as well.
Now I execute below update..
Begin
Update [Demo].[dbo].[TabA]
Set ColB=201
where ColA=2
WAITFOR DELAY '00:05:00'
Update [Demo].[dbo].[TabA]
Set ColB=202
where ColA=2
End
When I run the report now from SSDT(BIDS) I get value as 200 for ColB, whereas when I run the same report from ReportServer I get value as 201.
Is there a way I can set any server level property to get the value as 200 till the time Update completes ?
Viewing 0 posts
You must be logged in to reply to this topic. Login to reply