-
-
Notifications
You must be signed in to change notification settings - Fork 2.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Don't loop through all selected features multiple times (once per field) when the attribute form is opened #41382
Conversation
@rduivenvoorde can you test please? |
compiling.... |
Thanks Nyall! If I test the steps from the issue with that downloadable osm dataset, it works! No more freezing/blowing fans... I also tried if the 'multi edit' was working, and that seems to work OK. Did this come from #31234 ? I do see multi edit buttons, but I'm not sure how to test the auxiliary storage attribute buttons... Ok, I tried using https://oslandia.com/en/2017/10/17/auxiliary-storage-support-in-qgis-3/ So I moved some labels using fid as primary key, and then in the form the multi edit looks like this (aka I see a button there...): @troopa81 can you maybe test this better? |
@nyalldawson Wouldn't it make sense to have all code in |
I agree - but I was trying to fix the deeper cause of the slowness here, since it would also affect use of the form in multi edit mode. |
@rduivenvoorde @nyalldawson does this patch helps with #36863 ? |
Yes, that I saw, and totally agree with the treat the cause, not the symptom idea. But while there, it might be a good idea to separate the logic of the search and edit form, those are needlessly mixed and might cause trouble in the future. |
af8937c
to
724e1ba
Compare
@uclaros does 724e1ba look right to you? |
I agree it looks odd, but they are handling completely different logic. I can't see any clean way to avoid this without unnecessary code duplication. |
724e1ba
to
1521588
Compare
1521588
to
8b5bb56
Compare
field) when the attribute form is opened. This is incredibly expensive, yet only required in a very very small corner case (field is from a joined layer without the upsert on edit capabilities). Refine logic to avoid the scan wherever we can. Fixes qgis#41366 Fixes qgis#36863
8b5bb56
to
3321006
Compare
This is incredibly expensive, yet only required in a very very small
corner case (field is from a joined layer without the upsert on edit
capabilities).
Refine logic to avoid the scan wherever we can.
Fixes #41366