Sql-Server

SSRS 報告停留在載入中,但 ExecutionLog 另有說明

  • November 17, 2021

正在載入

我有一份報告卡在報告伺服器門戶中載入(已經超過一天)。但是,當我檢查 ExecutionLog…

select * from ExecutionLog3 
WHERE UserName = 'SOMEREPORTSERVER\SomeName'
AND ExecutionID = 'cbk0hdnpzrspg5qpkvqxubyn'
order by TimeStart desc

…它說狀態是’rsSuccess’。結果

這是可能有幫助的 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),這也可能是罪魁禍首。

這個問題有幾個可能的解決方案:

  1. 使用分頁限制將在瀏覽器中呈現的數據量。數據檢索和處理時間應該保持不變,但渲染時間將減少,因為它只返回第一頁,並且只會在您導航到使用箭頭的頁面時呈現其他頁面。回想前面提到的大量字節數,所以在某個地方它可能已經打破了駱駝的背部。處理完數據後,導出為靜態格式(例如 Excel 或 PDF)也可能會成功,如果失敗應該拋出錯誤,而不是嘗試在瀏覽器中將整個報告呈現為 HTML。
  2. 使用訂閱將導出格式的報告部署到文件共享。這將允許程序在伺服器的後台執行,並將其直接呈現到文件中。如果您無法定期安排此操作,則使用者向管理員請求並要求管理員手動部署它可能有點不方便。但是,我相信這比報表使用者多次重新執行同一個報表,導致並發執行,進一步複雜化處理問題,影響所有使用者要好。

我有完全相同的問題。我的 SSRS 報告綁定到 SQL 儲存過程。在多次嘗試執行後,我登錄到 SQL 伺服器,打開“活動監視器”,發現幾個暫停的威脅。我殺死了所有執行緒並且我的報告有效

引用自:https://dba.stackexchange.com/questions/202012