Opened 10 years ago

Closed 10 years ago

Last modified 8 years ago

#8950 closed task (fixed)

ComboBox: should cancel unwanted queries

Reported by: bill Owned by: Douglas Hays
Priority: high Milestone: 1.4
Component: Dijit - Form Version: 1.3.0b3
Keywords: Cc:
Blocked By: Blocking:

Description

ComboBox should cancel queries that are going to be ignored.

For example, if the user types "C" (which triggers a query), and then types another letter "o" before the first query has finished, then the first query should be canceled (ie, call abort() on the handle returned from dojo.store.fetch()), rather than waiting for the result to be returned and ignoring it.

Should also call abort() when ComboBox is being destroyed.

This will be more efficient than current implementation for some data stores, at least in theory.

Change History (7)

comment:1 Changed 10 years ago by bill

Once implemented, this can be tested using SlowStore?.js in tests/_data.... it will log the cancel requests.

comment:2 Changed 10 years ago by Douglas Hays

Milestone: tbd1.4
Owner: set to Douglas Hays

cancel/abort API implemented in #8315

comment:3 Changed 10 years ago by Douglas Hays

Resolution: fixed
Status: newclosed

(In [17618]) Fixes #8950. Save data.store fetch handle and call abort() if the previous query is still pending.

comment:4 Changed 10 years ago by bill

Resolution: fixed
Status: closedreopened

Hi, sorry to reopen this but we also need to abort the request if ComboBox is being destroyed, right? It's probably unlikely that ComboBox is destroyed in the middle of a data store query but might as well handle that case.

comment:5 Changed 10 years ago by bill

(In [17696]) Update test cases for #8950 and #8931 (ComboBox?/data store interaction). Refs #8931 and #8950 !strict.

comment:6 Changed 10 years ago by Douglas Hays

Resolution: fixed
Status: reopenedclosed

(In [17699]) Fixes #8950. Abort the in-flight query on _hideResultList and amend testcase to demonstrate.

comment:7 Changed 8 years ago by bill

Component: DijitDijit - Form
Note: See TracTickets for help on using tickets.