More Performance from LRS

 15 Replies
 0 Subscribed to this topic
 22 Subscribed to this forum
Sort:
Author
Messages
jellis
Veteran Member
Posts: 54
Veteran Member
    Currently we have a single LRS server with plenty of memory and CPU power but reporting is dismal and takes forever. The server with max users on it only hits 1-3% utilization. Currently we have limited the maximum RAS allowances to 60 reports at once since it crashes the RAS service with anything more.

    Since I am new to Lawson and just started working on this box yesterday here is what I have done to increase performance-

    This is CRAS 10, Tomcat 4.06 on a Windows 2003 server SP2.

    For Tomcat I set the environment variables -Xms512m and -Xmx512m for minimum and maximum. It appears to not be picking that up because when I check processes and memory used by tomcat.exe it is under the minimum of 512mb.

    In server.xml in \conf for Tomcat I increased the minProcessors to 35 and left the default of 75 for maxProcessors.

    In the CRAS.exe I added to the startup line -threads 50 -maxobjectsincache 100000 -ndbqthreads 10  which seems to have given the greatest performance boost. Also I increased the fetch and browse to 1000 each.

    Are there any other settings I am missing that can be adjusted to get more performance? Just these settings have helped a lot.

    Thanks.

    Chris Martin
    Veteran Member
    Posts: 277
    Veteran Member
      What version of LRS are you on? (ie 1.x)
      John Henley
      Posts: 3353
        I don't think the Tomcat settings would really have any effect on CRAS performance. I would look at report design--how are the reports connecting to the database? Are they using Lawson OLEDB or native database provider?
        Thanks for using the LawsonGuru.com forums!
        John
        Chris Martin
        Veteran Member
        Posts: 277
        Veteran Member
          Tomcat settings can help with overall system performance, but overall I agree with John. I ask about the version of LRS you are on, b/c from my experience RAS 10 has much bigger issues with memory leaks than RAS XI. If possible, I would recommend upgrading to a fully patched RAS XI. Of course, based on your version, upgrading to RAS XI may not be an option.
          Ruma Malhotra
          Veteran Member
          Posts: 412
          Veteran Member
            When we had this issue, we looked at optimizing all of our reports. For reports written on oledb we changed all of the reports from ODBC to oledb.

            Also for reports that could not be connected we looked at optimizing the way the reports were written by the use of forced indexes, groupings on the server etc. Lawson KB has an article specifically that talks about how to optimize your queries so they can run for a large amount of dat in lesser time. The biggest is to convert reports written in OLEDB to odbc and the difference in time is dramatic.

            Ruma Malhotra
            Veteran Member
            Posts: 412
            Veteran Member
              BY means of reports not connected I meant to say reports that cannot be converted from OLEDB to ODBC. We actually have the labor distribution report written in oledb that could not be converted that runs against the PRDISTRIB table that has all of the payroll distributions for every employee for every pay period. We used the articles from knowledge kb to optimize the query. the query that was taking 2 hours to complete now completes in 20 minutes. Our end users are very happy.
              John Henley
              Posts: 3353
                [quote] Posted By Ruma on 02/05/2009 06:24 PM

                convert reports written in OLEDB to odbc and the difference in time is dramatic. [/quote]



                Let's be careful here...I think Ruma is referring to converting Lawson OLEDB to native database provider's ODBC, which would result in a dramatic improvement, but with some trade-offs (see Reporting, Part 5: Using Crystal with Lawson's OLE DB Provider for more details).  However, OLEDB--as a technology--is faster than ODBC, meaning that if I convert a report from using Oracle OLEDB to Oracle ODBC, it will be slightly slower, not faster.
                Thanks for using the LawsonGuru.com forums!
                John
                Ruma Malhotra
                Veteran Member
                Posts: 412
                Veteran Member
                  John is absolutely right. OLEDB has lawson security inbuilt and ODBC does not. However our DBA has given read-only access to tables that a user can create repports from if they use ODBC while creating reports.
                  jellis
                  Veteran Member
                  Posts: 54
                  Veteran Member
                    Chris and John,

                    Thanks for your input. The Crystal is version 10. How do I find the version of LRS?

                    Ruma,

                    Thanks for the CR input. That is another area I have been having folks check into.

                    So far things are starting to get better. This is all temporary though as I am building the LBI stuff now.
                    Chris Martin
                    Veteran Member
                    Posts: 277
                    Veteran Member
                      Good question. How to find the LRS version number is actually escaping me right now. It's been too long. What I was really trying to verify is that you are on LRS (ie 1.x) not LBI (ie 9.x), as I was going to strongly recommend upgrading to LBI 9.0.3: Less buggy. RAS XI is much better then RAS 10. Websphere over Tomcat, etc. Sounds like you are already on your way though.
                      John Henley
                      Posts: 3353
                        Try looking at the Reporting Services Administration screen--I know that in 9.0.x it shows the version.
                        Thanks for using the LawsonGuru.com forums!
                        John
                        jellis
                        Veteran Member
                        Posts: 54
                        Veteran Member
                          Well I have managed to squeeze as much performance as I am going to out of the LRS..if anyone wants what settings I changed please let me know.
                          John Henley
                          Posts: 3353
                            Yes, please post.
                            Thanks for using the LawsonGuru.com forums!
                            John
                            jellis
                            Veteran Member
                            Posts: 54
                            Veteran Member
                              The LRS had its original settings for Tomcat set to –Xmx3000m. This is set by clicking on My Computer>Properties and then clicking on the Advanced tab and then the Environment Variables button. Within here is the environment variable CATALINA_OPTS. What I did was to add -Xms512m which sets the minimum amount of memory to grab and change -Xmx512m which sets the maximum amount of memory to add. According to some documentation I found, Tomcat 4.06.x does not support more than 1024m.
                              I also found that the settings for Tomcat were in the registry so I changed them to match the environment variables-HKLM>System>CurrentControlSet>Services>Tomcat_FS_18001>Parameters>JVMOption1=-Xms512m for JVMOption2=-Xmx512m.
                              The next settings I changed are found in c:\frameworkservices\jakarta-tomcat-4.06\conf\server.xml. Find the line with the following information-

                              Things changed were the minProcessors and maxProcessors settings. The originals were 5 and 750.
                              The next to last set of changes were to the crystalras.exe service startup parameters. Open up Crystal Configuration Manager by going to Start>Programs>Crystal Enterprise 10> and then click on Crystal Configuration Manager. Inside here click-on Crystal Report Application Server to highlight it and click the square to stop the service. Next click on Properties and a window will popup. The first tab is Properties. In the Command field I added the following lines AFTER the –server.
                              -threads 100 -maxobjectsincache 150000 -ndbqthreads 15
                              To undo just remove these settings.
                              The last change was in the same place, but on the Parameters tab. Under Option Type-Database, I set the Batch Size and Browse Data Size to 2000. The original settings were 100 on
                              John Henley
                              Posts: 3353

                                Thanks for the update!

                                Thanks for using the LawsonGuru.com forums!
                                John
                                Greg Moeller
                                Veteran Member
                                Posts: 1498
                                Veteran Member
                                  jellis: I'm looking to get the most performance out of our existing LBI instance (v9.0.1) running RAS XI.
                                  I was trying to follow along using your settings as an example, but I find that I don't have a -server setting. I have a -service. Did you perhaps just typo or are the options different since you are using RAS 10 and I'm at XI?