Class QueryOptions
Cache query options.
Inheritance
Namespace: Apache.Ignite.Linq
Assembly: Apache.Ignite.Linq.dll
Syntax
public class QueryOptions : object
Constructors
QueryOptions()
Initializes a new instance of the QueryOptions class.
Declaration
public QueryOptions()
Fields
DefaultPageSize
Default page size.
Declaration
public const int DefaultPageSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
DefaultUpdateBatchSize
Default value for UpdateBatchSize.
Declaration
public const int DefaultUpdateBatchSize = null
Field Value
Type | Description |
---|---|
System.Int32 |
Properties
Colocated
Gets or sets a value indicating whether this query operates on colocated data.
Whenever Ignite executes a distributed query, it sends sub-queries to individual cluster members. If you know in advance that the elements of your query selection are colocated together on the same node and you group by colocated key (primary or affinity key), then Ignite can make significant performance and network optimizations by grouping data on remote nodes.
Declaration
public bool Colocated { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
EnableDistributedJoins
Gets or sets a value indicating whether distributed joins should be enabled for this query.
When disabled, join results will only contain colocated data (joins work locally). When enabled, joins work as expected, no matter how the data is distributed.
Declaration
public bool EnableDistributedJoins { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
EnforceJoinOrder
Gets or sets a value indicating whether join order of tables should be enforced.
When true, query optimizer will not reorder tables in join.
It is not recommended to enable this property until you are sure that your indexes and the query itself are correct and tuned as much as possible but query optimizer still produces wrong join order.
Declaration
public bool EnforceJoinOrder { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
Lazy
Gets or sets a value indicating whether this query is lazy.
By default Ignite attempts to fetch the whole query result set to memory and send it to the client. For small and medium result sets this provides optimal performance and minimize duration of internal database locks, thus increasing concurrency.
If result set is too big to fit in available memory this could lead to excessive GC pauses and even OutOfMemoryError. Use this flag as a hint for Ignite to fetch result set lazily, thus minimizing memory consumption at the cost of moderate performance hit.
Declaration
public bool Lazy { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
Local
Local flag. When set query will be executed only on local node, so only local entries will be returned as query result.
Defaults to false
.
Declaration
public bool Local { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
PageSize
Page size, defaults to DefaultPageSize.
Declaration
public int PageSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |
Partitions
Gets or sets partitions for the query.
The query will be executed only on nodes which are primary for specified partitions.
Declaration
public int[] Partitions { get; set; }
Property Value
Type | Description |
---|---|
System.Int32[] |
ReplicatedOnly
Gets or sets a value indicating whether this query contains only replicated tables. This is a hint for potentially more effective execution.
Declaration
public bool ReplicatedOnly { get; set; }
Property Value
Type | Description |
---|---|
System.Boolean |
TableName
Gets or sets the name of the table.
Table name is equal to short class name of a cache value. When a cache has only one type of values, or only one QueryEntity defined, table name will be inferred and can be omitted (null).
Declaration
public string TableName { get; set; }
Property Value
Type | Description |
---|---|
System.String | The name of the table. |
Timeout
Gets or sets the query timeout. Query will be automatically cancelled if the execution timeout is exceeded.
Default is
Declaration
public TimeSpan Timeout { get; set; }
Property Value
Type | Description |
---|---|
TimeSpan |
UpdateBatchSize
Gets or sets batch size for update queries.
Default is 1 (DefaultUpdateBatchSize.
Declaration
public int UpdateBatchSize { get; set; }
Property Value
Type | Description |
---|---|
System.Int32 |