DbalQueryExtractor implements BatchableExtractor, Extractor, LimitPushDown, RewindableExtractor uses Batches, PushesLimit
FinalYes
batchSize() is a yield cap, not a fetch size: fetchAllAssociative() materialises the whole result set per parameter set, so lowering it cannot lower peak memory. The paginating extractors default to 1000 because their number IS a round trip.
A pushed limit is global across parameter sets - their batches are concatenated - and no set is queried once it is reached. The query is a raw string, so the first queried set is never bounded server-side.
Interfaces
- BatchableExtractor
- Extractor
- LimitPushDown
- RewindableExtractor
Methods
- __construct() : mixed
- extract() : Generator<Signal|null, void>
- isRepeatable() : bool
- schema() : Schema
- single() : self
- withParameters() : self
- withSchema() : static
- withTypes() : self
Methods
__construct()
public
__construct(Connection $connection, string $query) : mixed
Parameters
- $connection : Connection
- $query : string
extract()
public
extract(FlowContext $context) : Generator<Signal|null, void>
Parameters
- $context : FlowContext
Return values
Generator<Signal|null, void>isRepeatable()
public
isRepeatable() : bool
Return values
boolschema()
public
schema() : Schema
Return values
Schemasingle()
public
static single(Connection $connection, string $query[, array<string, mixed>|array<int, mixed> $parameters = [] ][, array<int<0, max>|string, ArrayParameterType|ParameterType|string|Type> $types = [] ]) : self
Parameters
- $connection : Connection
- $query : string
- $parameters : array<string, mixed>|array<int, mixed> = []
- $types : array<int<0, max>|string, ArrayParameterType|ParameterType|string|Type> = []
Return values
selfwithParameters()
public
withParameters(ParametersSet $parametersSet) : self
Parameters
- $parametersSet : ParametersSet
Return values
selfwithSchema()
public
withSchema(Schema $schema) : static
Parameters
- $schema : Schema
Return values
staticwithTypes()
public
withTypes(array<int<0, max>|string, ArrayParameterType|ParameterType|string|Type> $types) : self
Parameters
- $types : array<int<0, max>|string, ArrayParameterType|ParameterType|string|Type>