Community
Participate
Working Groups
build I20081211-1908 When i do code assist and then type some new characters, there is no new code assist request but the previously computed list of proposals is filtered 1) type 'new Arr' 2) do ctrl+space after S a list of proposals is computed and displayed 3) type 'ayLi' the list of proposal is filtered During code assist when the timeout is reached only a subset of possible completions is proposed. Then if i do a code assist request which reach the timeout and then type some new characters, the missing proposals won't be proposed even if a new code assist request would not reach the timeout. Currently i did not reach often the timeout but when i tested my patch for bug 6930 it happen more easily during code assist on constructors. When the timeout is reached it could be better to do a new code assist request instead of filter the old proposals. If it is not easy to do then the message in the status bar "Java code assist took too long: the proposal list might be incomplete." could be improved to suggest a way to obtain missing proposals. Something like "Java code assist took too long: the proposal list might be incomplete. Close the list and type more characters to obtain the missing proposals".
>Currently i did not reach often the timeout In which cases did you? I've never hit it since we have it in place.
Jerome and I saw it recently. I believe this is a must fix going into 3.5, or we'd have to back out the timeout since this would be a regression (no completion at all).
I'm seeing this as well when my machine starts swapping. Today I saw at least 2 instances of empty list of proposals.
I saw it when completed types with one letter prefix in a big workspace. Something like: void foo() { A| } And two or three times when i wrote code in jdtcore. But i was unable to reproduce it. So i saw it but it is very very rare.
>Jerome and I saw it recently. I believe this is a must fix going into 3.5, or >we'd have to back out the timeout since this would be a regression (no >completion at all). I see. However, JDT Core should also investigate the cases where it takes so long to complete and try to improve there. Fix is to either give a hint to type more characters or to avoid the timeout on second Ctrl+Space at identical location.
I've improved the hint for 3.5. A better fix is hard (needs much more work) because currently the timeout is only known in JDT land but the content assist triggering and filtering is in lower layers.