We developed barcode scanning system.
Using the machine like POS, the user scans the barcode and that data is inserted into AX.
After that AX returns OK sign and scanning machine shows the message “Data Inserted”
But here comes the problem. The first scanning takes above 1 minute.
However, after the first scanning, scanning became fast. about 10 Sec.
So we made a log, then found ProdMultiReportFinshed.insert() and ProdMultiReportFinished.run() are slow.
Each of classes took about 20 seconds.
I think cache can be a cause. There will be no cache data to refer at the first time.
And it also can explain that scanning became fast after first scanning. Because cache will be there in that time.
I am not planning to modify the code. Just want to explain this phenomenon to our client.
So, the question is :
The first scanning is dragging because there is no cache data after restarting the AOS. After the first scanning, cache data has created so scanning become fast. Am i thinking right?
Can you please look deeper into Trace Parser logs and identify what exactly is slow in insert() and run() methods?
ProdMultiReportFinished is a class, therefore it’s not cached by itself.
Thanks for your reply.
Trace Parser can be a great tool to find out where is the problem. Thank you for your suggestion.
Unfortunately, I can`t check that AX system right now. It’s about the security and business things.
I will post the result if I can connect the system and use Trace Parser .
Cache loading for the first time is very likely, either AOS or SQL or both. It is also to be expected after AOS or SQL restart as neither SQL or AOS loads everything at start up to have ready for whatever the user may do. It loads up some base classes and objects and the rest as needed. Some of the data is then stored in Global Object Cache, entire table cache and so forth. SQL also stores loaded pages in memory for a quicker access if data is queried again. Then again, Trace Parse might also reveal a bottleneck one can easily fix, best if you can check to provide an accurate response. Also, best to avoid restart of AOS and SQL unnecessary as it flushes cache and introduces performance penalties due to cold reads there after.
But to answer your question, Customer should be aware that slower first loads/execution is normal after restart, regardless of system … up to a point at least.
Thanks for your reply.
Like you said, I also thought restarting can be a cause of this issue. Just no evidence. Still, I have no permission to access that customers system. I think explaining your solution will be the best I can do. Unfortunately…