Sql-Server
SSRS 報告停留在載入中,但 ExecutionLog 另有說明
我有一份報告卡在報告伺服器門戶中載入(已經超過一天)。但是,當我檢查 ExecutionLog…
select * from ExecutionLog3 WHERE UserName = 'SOMEREPORTSERVER\SomeName' AND ExecutionID = 'cbk0hdnpzrspg5qpkvqxubyn' order by TimeStart desc
這是可能有幫助的 AdditionalInfo XML…查詢大約需要 1 分鐘才能執行,這是在 SSMS 中執行所需的時間。對於返回的數據量,渲染似乎相當公平,所以我不確定發生了什麼。
我確保 Interactive Sizing 是標準的 8.5 x 11,因此它可以在處理其他頁面時至少顯示一些數據,但這並沒有幫助。
<AdditionalInfo> <ProcessingEngine>2</ProcessingEngine> <ScalabilityTime> <Pagination>0</Pagination> <Processing>0</Processing> </ScalabilityTime> <EstimatedMemoryUsageKB> <Pagination>263471</Pagination> <Processing>3795406</Processing> </EstimatedMemoryUsageKB> <DataExtension> <SQL>2</SQL> </DataExtension> <Connections> <Connection> <ConnectionOpenTime>24</ConnectionOpenTime> <DataSets> <DataSet> <Name>nocontacts</Name> <RowsRead>79650</RowsRead> <TotalTimeDataRetrieval>10297</TotalTimeDataRetrieval> <QueryPrepareAndExecutionTime>0</QueryPrepareAndExecutionTime> <ExecuteReaderTime>10225</ExecuteReaderTime> <DataReaderMappingTime>0</DataReaderMappingTime> <DisposeDataReaderTime>0</DisposeDataReaderTime> </DataSet> </DataSets> </Connection> <Connection> <ConnectionOpenTime>30</ConnectionOpenTime> <DataSets> <DataSet> <Name>contacts</Name> <RowsRead>724715</RowsRead> <TotalTimeDataRetrieval>70893</TotalTimeDataRetrieval> <QueryPrepareAndExecutionTime>0</QueryPrepareAndExecutionTime> <ExecuteReaderTime>26506</ExecuteReaderTime> <DataReaderMappingTime>0</DataReaderMappingTime> <DisposeDataReaderTime>0</DisposeDataReaderTime> </DataSet> </DataSets> </Connection> </Connections> </AdditionalInfo>
編輯:SSRS - 14.0.807.134 / SSMS - 14.0.17177.0 / 瀏覽器 - Chrome 編輯:嘗試 IE - 11.309.16299.0 - 我無權更新報告查看器設置。
有時,即使程序仍在後台執行並最終成功,瀏覽器也會超時或不返回呈現的報告。瀏覽器可能甚至不會告訴您它失敗了,它只會繼續旋轉或返回一個空白頁面。日誌表示“成功”,這意味著程序本身確實執行正確,但日誌不會告訴您瀏覽器是否成功返回了呈現的報告。無論伺服器的配置或報告級別超時設置如何,我通常都會在 10 分鐘左右看到這種情況。您的執行日誌顯示超過 10 分鐘,因此這可能是原因。此外,執行日誌返回了大量的字節數(~353 MB),這也可能是罪魁禍首。
這個問題有幾個可能的解決方案:
- 使用分頁限制將在瀏覽器中呈現的數據量。數據檢索和處理時間應該保持不變,但渲染時間將減少,因為它只返回第一頁,並且只會在您導航到使用箭頭的頁面時呈現其他頁面。回想前面提到的大量字節數,所以在某個地方它可能已經打破了駱駝的背部。處理完數據後,導出為靜態格式(例如 Excel 或 PDF)也可能會成功,如果失敗應該拋出錯誤,而不是嘗試在瀏覽器中將整個報告呈現為 HTML。
- 使用訂閱將導出格式的報告部署到文件共享。這將允許程序在伺服器的後台執行,並將其直接呈現到文件中。如果您無法定期安排此操作,則使用者向管理員請求並要求管理員手動部署它可能有點不方便。但是,我相信這比報表使用者多次重新執行同一個報表,導致並發執行,進一步複雜化處理問題,影響所有使用者要好。
我有完全相同的問題。我的 SSRS 報告綁定到 SQL 儲存過程。在多次嘗試執行後,我登錄到 SQL 伺服器,打開“活動監視器”,發現幾個暫停的威脅。我殺死了所有執行緒並且我的報告有效