EducationSoftwareStrategy.com
StrategyCommunity

Knowledge Base

Product

Community

Knowledge Base

TopicsBrowse ArticlesDeveloper Zone

Product

Download SoftwareProduct DocumentationSecurity Hub

Education

Tutorial VideosSolution GalleryEducation courses

Community

GuidelinesGrandmastersEvents
x_social-icon_white.svglinkedin_social-icon_white.svg
Strategy logoCommunity

© Strategy Inc. All Rights Reserved.

LegalTerms of UsePrivacy Policy
  1. Home
  2. Topics

KB264118: "Table 'MSI_STATS_LOG' does not exist" error occurs in DSSErrors.log during data load in MicroStrategy Enterprise Manager


Community Admin

• Strategy


This issue has been classified as a defect by MicroStrategy. A workaround is available in the current document. A solution/code fix for this issue is not available in current releases but is being reviewed for a future MicroStrategy release.

SUMMARY
This issue has been classified as a defect by Strategy. A workaround is available in the current document. A solution/code fix for this issue is not available in current releases but is being reviewed for a future Strategy release.
SYMPTOM
 
In Strategy 10.0 - 10.1 Secure Enterprise Platform, error "Table 'MSI_STATS_LOG' does not exist" is seen in DSSErrors.log during Enterprise Manager data load.
Below error is caught in the DSSErrors.log:


[Database Classes][Error] Execute Query failed. 
Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [42S02:2706: on SQLHANDLE] [Strategy][ODBC SQL Server Wire Protocol driver][Microsoft SQL Server]Table 'MSI_STATS_LOG' does not exist. Connection String: DSN=XXX;UID=XXX;DB=XXX;PORT=1433;HOST=XXX;. SQL Statement: UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN.

Below error is caught in the Strategy Enterprise Manager data load log, MAEntMgr.xml:

<log4j:event logger="MAEntMgr" timestamp="1442613613121" level="DEBUG" thread="pool-1-thread-3">
<log4j:message type ="DEFAULT"><![CDATA[Executing: Executing script: C:\Program Files (x86)\MicroStrategy\Enterprise Manager\Scripts\Upd_Fact_Table_Stats_SQL.sql on XXX]]></log4j:message>
</log4j:event>

<log4j:event logger="MAEntMgr" timestamp="1442613613433" level="INFO" thread="pool-1-thread-1">
<log4j:message type ="DEFAULT"><![CDATA[Executing SP_IS_SESSION]]></log4j:message>
</log4j:event>

<log4j:event logger="MAEntMgr" timestamp="1442616568722" level="ERROR" thread="pool-1-thread-2">
<log4j:message><![CDATA[UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN]]></log4j:message>
</log4j:event>

<log4j:event logger="MAEntMgr" timestamp="1442616568722" level="ERROR" thread="pool-1-thread-2">
<log4j:message type ="DEFAULT"><![CDATA[Error executing: UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN]]></log4j:message>
</log4j:event>

<log4j:event logger="MAEntMgr" timestamp="1442616568878" level="ERROR" thread="pool-1-thread-2">
<log4j:message><![CDATA[java.sql.SQLException: Execute Query failed. 
Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [42S02:2706: on SQLHANDLE] [Strategy][ODBC SQL Server Wire Protocol driver][Microsoft SQL Server]Table 'MSI_STATS_LOG' does not exist.]]></log4j:message>
<log4j:throwable><![CDATA[com.Strategy.maem.exceptions.EMException: java.sql.SQLException: Execute Query failed. 
Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [42S02:2706: on SQLHANDLE] [Strategy][ODBC SQL Server Wire Protocol driver][Microsoft SQL Server]Table 'MSI_STATS_LOG' does not exist.
                at com.Strategy.maem.connections.database.DatabaseConnection.executeStatement(Unknown Source)
                at com.Strategy.maem.dataload.admin.ScriptBasedCommand.executeCommand(Unknown Source)
                at com.Strategy.maem.dispatcher.command.BaseCommand.execute(Unknown Source)
                at com.Strategy.maem.dispatcher.command.BaseCommand.run(Unknown Source)
                at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
                at java.lang.Thread.run(Unknown Source)
Caused by: java.sql.SQLException: Execute Query failed. 
Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [42S02:2706: on SQLHANDLE] [Strategy][ODBC SQL Server Wire Protocol driver][Microsoft SQL Server]Table 'MSI_STATS_LOG' does not exist.
                at com.Strategy.tools.MADbJniDriver.MADbJniStatement.nativeExecute(Native Method)
                at com.Strategy.tools.MADbJniDriver.MADbJniStatement.execute(Unknown Source)
                at com.Strategy.tools.MADbJniDriver.MADbJniStatement.execute(Unknown Source)
                ... 7 more
]]></log4j:throwable>
</log4j:event>

 
CAUSE
 
This is a known issue with Strategy 10.0 - 10.1 Enterprise Manager data load.
The data load is run with the option 'Update Database Statistics' enabled. The script file 'Upd_Stat_Table_Stats_SQL.sql' still has a reference to the unused table MSI_STATS_LOG and hence the error:

UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN

 
The table MSI_STATS_LOG is not used since Strategy version 9.x; refer to the following technical document for more details:
KB15895: What are the statistics tables and what information do they contain in Strategy Intelligence Server 9.x?
ACTION
This issue has been fixed in Strategy 10.2. Upgrade to this version to take advantage of the fix.
 
WORKAROUND

  1. Find the file  'Upd_Stat_Table_Stats_SQL.sql' which is found at: <install_drive>:\Program Files (x86)\MicroStrategy\Enterprise Manager\Scripts.
  2. Create a backup of this file and save it in a dufferent location.
  3. Find the line 'UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN;' and comment the line (as shown below) in this script file.


/*UPDATE STATISTICS MSI_STATS_LOG WITH FULLSCAN;*/

 


Comment

0 comments

Details

Knowledge Article

Published:

April 3, 2017

Last Updated:

April 3, 2017