Issue: Info window can be really slow on many columns and pagination
TESTED USE CASES
A. regular product info with lot custom column - approx 25 cols (slow)
B. product info simple with fewer columns. up to 10 (fast)
My test case: When I reduce product info from 25 to 5 columns, then the info window was really fast.
Also we got feedback from customer, and reproducible, pagination to the next pages are really slow.
Obeservation: SQL generated by the info window, and the query took in 0,7sec on the server, however, the info window rendered/return rows up to 3-6 sec. This depends on the result (rows returned, if less then performance is better) 4-6 sec around 600 rows.
Due small dataset we can't reproduce on test.idempiere.org. Our tests was done on our multi-tenant production installation, however, this was confirmed from another installation from michalzilincar and AlanLescano.
Alan Lescano, forum thread
I also noticed a slowness, especially when the info window has many columns (>20) and many rows returned. Decreasing the paging size and reducing columns helps a lot. I couldn't investigate much, but I found a suspicious loop that iterates through all cells (rows x columns), to format dates/amounts (localized), and that may be the cause.
test private instance
Ive found that WInfoWindowListItemRenderer when getting CellComponent was causing for each cell with Table/TableDir Component to refresh its lookup in WTableDirEditor:208. I think it should be considered as BUG, because when we have in Info Window Column selected IsReadOnly checkbox, Table Direct component should have set IsReadWrite as False.
hi , yes, that’s not correct, it should be readonly for info window. If you have the fix for it, please create a pull request for it.
Created PR, added passing ReadOnly Parameter from InfoColum to GridField.
Testing 13000 products %kviet% search result approx 1600 rows, pagination is up to 500ms