new ScanPolicy( [props])
Initializes a new ScanPolicy from the provided policy values.
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
props |
Object |
<optional> |
Policy values |
- Since:
-
- v3.0.0
- Source:
Extends
Members
-
compress :boolean
-
Use zlib compression on write or batch read commands when the command buffer size is greater than 128 bytes. In addition, tell the server to compress it's response on read commands. The server response compression threshold is also 128 bytes.
This option will increase cpu and memory usage (for extra compressed buffers), but decrease the size of data sent over the network.
Requires Enterprise Server version >= 4.8.
Type:
- boolean
- Since:
-
- v3.14.0
- Inherited From:
- Overrides:
- Source:
-
durableDelete :boolean
-
Specifies whether a tombstone should be written in place of a record that gets deleted as a result of this operation.
Type:
- boolean
- Default Value:
-
false
(do not tombstone deleted records)
- Source:
-
filterExpression
-
Optional expression filter. If filter exp exists and evaluates to false, the transaction is ignored. This can be used to eliminate a client/server roundtrip in some cases.
expression filters can only be applied to the following commands:
- Inherited From:
- Overrides:
- Source:
-
maxRecords :number
-
Approximate number of records to return to client. This number is divided by the number of nodes involved in the scan. The actual number of records returned may be less than maxRecords if node record counts are small and unbalanced across nodes.
Requires server >= 4.9.
Type:
- number
- Since:
-
- v3.16.0
- Default Value:
-
- 0 (do not limit record count)
- Source:
-
maxRetries :number
-
Maximum number of retries before aborting the current transaction. The initial attempt is not counted as a retry.
If
maxRetries
is exceeded, the transaction will return errorERR_TIMEOUT
.WARNING: Database writes that are not idempotent (such as "add") should not be retried because the write operation may be performed multiple times if the client timed out previous transaction attempts. It is important to use a distinct write policy for non-idempotent writes which sets
maxRetries
to zero.Type:
- number
- Inherited From:
- Overrides:
- Source:
-
recordsPerSecond :number
-
Limit returned records per second (RPS) rate for each server. Do not apply RPS limit if
recordsPerSecond
is zero.Requires server >= 4.7.
Type:
- number
- Since:
-
- v3.14.0
- Default Value:
-
- 0
- Source:
-
socketTimeout :number
-
Socket idle timeout in milliseconds when processing a database command.
If
socketTimeout
is not zero and the socket has been idle for at leastsocketTimeout
, bothmaxRetries
andtotalTimeout
are checked. IfmaxRetries
andtotalTimeout
are not exceeded, the transaction is retried.If both
socketTimeout
andtotalTimeout
are non-zero andsocketTimeout
>totalTimeout
, thensocketTimeout
will be set tototalTimeout
. IfsocketTimeout
is zero, there will be no socket idle limit.Type:
- number
- Inherited From:
- Overrides:
- Default Value:
-
- 0 (no socket idle time limit).
- Source:
-
totalTimeout :number
-
Total transaction timeout in milliseconds.
The
totalTimeout
is tracked on the client and sent to the server along with the transaction in the wire protocol. The client will most likely timeout first, but the server also has the capability to timeout the transaction.If
totalTimeout
is not zero andtotalTimeout
is reached before the transaction completes, the transaction will return errorERR_TIMEOUT
. IftotalTimeout
is zero, there will be no total time limit.Type:
- number
- Inherited From:
- Overrides:
- Default Value:
-
- 1000
- Source: