List View Pulling Records From ORacle Table Is Very Slow

  • 7 September 2018
  • 6 replies
  • 9 views

Badge +4

Hello. One of the things I have noticed about K2 ever since starting to use it for a year and a half now is when a form has to return a List to display and there are many records, I find K2 to be almost unbearably slow to list them. For example, I have a simple List View against an Oracle table to return records. There are currently 2664 records in the table. Now I admit thats quite a few records and may impact performance a little but not like it is. It takes 20 seconds to load the page. I do have filters to allow records to pull faster but for it to take that long when wanting to view all records on the form, to me is terrible. Is there something I am missing or something that can be done to improve performance of the K2 form returning these oracle records?

 

Thanks for your time and help.

Steve


6 replies

Badge +4

Thank you so much for the response. I just want to make sure I clarify that I am not using a query on the oracle side to then List in. I am actually using K2's out of the box, SMO against a table and using the default List method against it. I wanted to make sure I made that clear before I start engaging my Oracle DBA's to suggest the issue is on the ORacle side and not K2. Do we still think it might be an Oracle issue?

Badge +4

So we did try adjusting those settings but to no avail. 

Userlevel 5
Badge +13

One question I have is whether you can determine if the query is slow, or is it perhaps the rendering of 2000+ rows in the list view? Do you have paging turned on to limit how much K2 tries to display at once?

Badge +4

Hello again. So we did a couple of tests using ODBC against the Oracle table as well as within Oracle itslef and simply doing at select * from <table> is immediate. Also, its an editable list view in K2 so paging is not an option for me. 

Userlevel 5
Badge +13

Ah, well, an editable list of 2000+ records will be slow... is there any way you can add filter options so you aren't returning the entire result set for editting? Like prompt the user to enter a "Client" (or whatever value is in your list that would make a good filter) and THEN populate the edit list with a subset of the 2000+ records.

Userlevel 6
Badge +16

Hi steven_rossi,


 


It sounds like the issue is related to number of returned records. Perhaps, you can run a SQL profiler trace against K2 database while exectuting the SmartObject from SmartObject Service Tester tool, this might give you an idea of where the slowness would take place. My guess is, when the SmartObject is executed and the call goes out to get the data from backend system. Perhaps, the call is trying to bulk insert data into temp table before it can be processed and re-selected back by SmartObject call to display the result.


 


 

Reply