@@ -40,6 +40,7 @@ export type QueryJSON = {
40
40
hint ?: mixed ,
41
41
explain ?: boolean ,
42
42
readPreference ?: string ,
43
+ allowDiskUse ?: Boolean ,
43
44
includeReadPreference ?: string ,
44
45
subqueryReadPreference ?: string ,
45
46
} ;
@@ -239,6 +240,7 @@ class ParseQuery {
239
240
_count : boolean ;
240
241
_order : Array < string > ;
241
242
_readPreference : string ;
243
+ _allowDiskUse : boolean ;
242
244
_includeReadPreference : string ;
243
245
_subqueryReadPreference : string ;
244
246
_queriesLocalDatastore : boolean ;
@@ -278,6 +280,7 @@ class ParseQuery {
278
280
this . _limit = - 1 ; // negative limit is not sent in the server request
279
281
this . _skip = 0 ;
280
282
this . _readPreference = null ;
283
+ this . _allowDiskUse = false ;
281
284
this . _includeReadPreference = null ;
282
285
this . _subqueryReadPreference = null ;
283
286
this . _queriesLocalDatastore = false ;
@@ -457,6 +460,9 @@ class ParseQuery {
457
460
if ( this . _readPreference ) {
458
461
params . readPreference = this . _readPreference ;
459
462
}
463
+ if ( typeof this . _allowDiskUse === 'boolean' ) {
464
+ params . allowDiskUse = this . _allowDiskUse ;
465
+ }
460
466
if ( this . _includeReadPreference ) {
461
467
params . includeReadPreference = this . _includeReadPreference ;
462
468
}
@@ -534,6 +540,10 @@ class ParseQuery {
534
540
this . _readPreference = json . readPreference ;
535
541
}
536
542
543
+ if ( typeof json . allowDiskUse === 'boolean' ) {
544
+ this . _allowDiskUse = json . allowDiskUse ;
545
+ }
546
+
537
547
if ( json . includeReadPreference ) {
538
548
this . _includeReadPreference = json . includeReadPreference ;
539
549
}
@@ -566,6 +576,7 @@ class ParseQuery {
566
576
'subqueryReadPreference' ,
567
577
'hint' ,
568
578
'explain' ,
579
+ 'allowDiskUse' ,
569
580
] . indexOf ( key ) === - 1
570
581
) {
571
582
this . _extraOptions [ key ] = json [ key ] ;
@@ -840,6 +851,7 @@ class ParseQuery {
840
851
hint : this . _hint ,
841
852
explain : this . _explain ,
842
853
readPreference : this . _readPreference ,
854
+ allowDiskUse : this . _allowDiskUse ,
843
855
} ;
844
856
return controller . aggregate ( this . className , params , aggregateOptions ) . then ( results => {
845
857
return results . results ;
@@ -1955,6 +1967,17 @@ class ParseQuery {
1955
1967
return this ;
1956
1968
}
1957
1969
1970
+ /**
1971
+ * Changes the allowDiskUse preference that the backend will use when performing the query to the database.
1972
+ *
1973
+ * @param {boolean } enabled enable/disable allowDiskUse
1974
+ * @returns {Parse.Query } Returns the query, so you can chain this call.
1975
+ */
1976
+ allowDiskUse ( enabled : boolean ) : ParseQuery {
1977
+ this . _allowDiskUse = enabled ;
1978
+ return this ;
1979
+ }
1980
+
1958
1981
/**
1959
1982
* Subscribe this query to get liveQuery updates
1960
1983
*
0 commit comments