mO SharemO Share

"GINESYS Report engine not yet configured or service is not running." - error message showing during Report SYNC while Ginesys runs on HTTPS

Symptom

User may get an error during Report SYNC, where the Ginesys Web is running on HTTPS. The message says,

Cannot Sync reports:
Reason: GINESYS Report engine not yet configured or service is not running. Please get in touch with your administrator or call GINESYS helpdesk.


It is also observed that in such condition Ginesys Web works normally. But users may or may not experience issues in Reports operations. Some Report features, like, Report Modification, Template upload / download, Duplicate a system report etc. may alos be impacted.

Observation

Further observation Ginesys Web log may help to narrow down the actual issue. If we check the debug log for Ginesys Web API, then following error message can be seen.

Log Location

\GSL\GINESYS12\WebAPI\Logs\DebugApp.log

Error Message

Ginesys.App.Controllers.ReportManagementController [CompareReportXMLFile] - Return From REPORT Server : RequestEntityTooLarge and Request Entity Too Large
Ginesys.App.Controllers.ReportManagementController [CompareReportXMLFile] - Error in https://ho.server/GinesysReportUI//SaveXML.aspx

 

The log can be only seen where Ginesys version is 11.150.2 or later. For earlier versions, the above error message may not be printed in the log. But as long as the Web application is running on HTTPS and symptom is same, then we can attempt this suggested work around.

Cause

IIS has a limit for the size of the files users can upload to an application. If the file size exceeds the limit, the application will throw “RequestEntityTooLarge and Request Entity Too Large” error. The default file upload size is 49 KB (49152 bytes). The application records the log if user tries to upload a file that is bigger than this size. 

Why this issue occurs for HTTPS sites? The reason is that the request body must be preloaded during the SSL handshake process. Hence the buffer size exceeds the default limit of 49KB

During client renegotiation process the request entity body must be preloaded using SSL preload. SSL preload will use the value of the UploadReadAheadSize metabase property, which is used for ISAPI extensions

Workaround

We need to set appropriate value uploadReadAheadSize in IIS Server. The tested value is 10MB (10485760 bytes), hence the value for uploadReadAheadSize should be 10485760.

Following steps guide on how to do the necessary configuration. change.

Method 1

  1. Open IIS Manager (inetmgr)

  2. Select the site. Most of the cases, Ginesys is installed under Default Web Site.

  3. Double click Configuration Editor from Management section in right pane.

  4. In Configuration Editor window, in Section field drop-down, select system.webServer and then serverRuntime [See screenshot]

  5. Modify the value beside uploadReadAheadSize. Type 10485760.

  6. Click Apply.

Method 2

  1. Run command prompt as administrator and set current directory as C:\Windows\System32\inetsrv

  2. Run the following command to set the value of uploadReadAheadSize as 10MB.

C:\Windows\System32\inetsrv\appcmd.exe set config -section:system.webserver/serverruntime /uploadreadaheadsize:10485760 /commit:apphost

 

Method 3

Modify the IIS configuration file manually.

This method advanced understanding of IIS, hence preferred to be done by experts. Keep a backup of configuration file before proceed for modification.

  1. Go to IIS server configuration directory C:\Windows\System32\inetsrv\config

  2. Keep a backup of the file applicationHost.config.

  3. Open the config file applicationHost.config in text editor (run the editor with elevated access).

  4. Find the section <serverRuntime />. Insert the following line immediate next line.

    <serverRuntime uploadReadAheadSize="10485760" />

  5. Restart the IIS (iisreset).