In B1 Usability Package 2022.05 and CRM for Outlook 2022.05, we have added a new experimental feature that makes Data-Access faster in HANA 2.0 Environments (SAP Business One 10 for HANA and higher).
This new feature is off by default for the time being but has great potential of boosting the overall performance.
How to turn this on:
- Make sure you run your product in version 2022.05 or higher (the below will not help on lower versions)
- On your Windows Desktop make a new empty txt file called "ENABLE_LONG_LIVED_CONNECTIONS.txt"
- Move the created txt file to the following folder, based on what product you wish to enable it for:
B1 Usability Package (Add-on) C:\Program Files\SAP\SAP Business One\AddOns\BOY\B1 Usability Package B1 Usability Package (Server-Component) C:\Program Files\Boyum IT\B1UP Server component CRM for Outlook (Server-Component) C:\Program Files\Boyum IT\CRM for Outlook Server CRM for Outlook (Client) Not needed (No effect)
- Restart your product
How to turn this off:
- Simply remove the file again and restart the product
Q: Why is this needed, were the products implemented incorrectly or made slow on purpose?
A: Not as such. The way we do data access by default (aka short-lived connections) in these products has been fast since the first version of SAP HANA but in HANA 2.0, SAP did a change for security reasons, and our default connection method became slower, compared to add-ons that use long-lived connections.
Q: How big is the slowdown?
A: As this kind of slow-down is not dependent on the size/complexity of the SQL it runs, but rather on the number of SQLs executed (each has a small overhead in its connection), it is rather difficult to measure it exactly but here is what we have observed:
- CRM for Outlook (Server Component) is the most impacted due to it executing most SQL
- B1 Usability Package (Add-on) is to some degree impacted but due to heavy caching not as much as CRMFO... But if you have many and often run validations that use SQL, the impact can be to a higher extend
- B1 Usability Package (Server Component) is to some degree impacted (same reasoning as above)
Se a videos of before/after effect of turning on the feature here:
(CRMFO Client is not impacted, and B1 Web Dashboards are so little impacted that we have not added the experimental feature for that as of now)
Q: Why now? (HANA 2.0 / SAP Business One 10 has been out for a while)
A: Since the slowdown is not detectable for single connections, we (Boyum) did not notice this and attributed the slower systems to bigger hardware requirements in HANA 2.0. It was only recently that SAP notified us of the change that caused the slowdown, upon which we began creating a connection method that uses long-lived connections instead. (This SAP note explains it in more detail: https://launchpad.support.sap.com/#/notes/3199233)
Q: Why is this not on by default (why do I need to turn it on with the file)?
A: We are taking this approach out of cautiousness, as the change from short-lived to long-lived connections are essential a re-write of the current data-access-logic code, we have decided to value correctness over performance, so while we have tested, we want a gradual adoption of the change. At a future date, we will make long-lived connections the default.
Q: Is it recommended that I turn this on?
A: Yes, If you feel comfortable with what you have read so far, then we recommend you try it out as there are potentially great performance benefits (with a worst case, of if you encounter issues (SQL errors or the like, you can easily turn the feature off again))
Q: Can I use this on SAP Business One 9.x versions?
A: No, and it would not really make sense anyway since only HANA 2.0 need this modification (in HANA 1.0 that SAP Business One 9.x used both connection methods were equally fast)
Q: How about the other Boyum Products - Can I use them on those as well?
A: No, but it is not needed anyway. Both Beas, PMX, and Cloud Apps use a similar system already
Q: What about systems running MSSQL?
A: Such systems are not affected (fast already) and will just ignore the setting
Q: I'm a nerd... What is this more specifically?
A: In SAP HANA 2.0 ODBC's Connection-method is slower than in HANA 1.0 as some extra security checks are being performed. This drawing shows it in more detail on the left and how the new implementation is on the right.
Q: I think I found a bug in the new system or I have further questions. What to do?
A: Please log a support ticket or write in the comment on this article.