pub struct ProgramConfig {
pub cache: bool,
pub profile: Option<CompilationProfile>,
pub runtime_version: Option<String>,
pub use_platform_compiler: bool,
}Expand description
Program configuration.
JSON schema
{
"description": "Program configuration.",
"type": "object",
"properties": {
"cache": {
"description": "If `true` (default), when a prior compilation with the same checksum\nalready exists, the output of that (i.e., binary) is used.\nSet `false` to always trigger a new compilation, which might take longer\nand as well can result in overriding an existing binary.",
"default": true,
"type": "boolean"
},
"profile": {
"oneOf": [
{
"type": "null"
},
{
"allOf": [
{
"$ref": "#/components/schemas/CompilationProfile"
}
]
}
]
},
"runtime_version": {
"description": "Override runtime version of the pipeline being executed.\n\nWarning: This setting is experimental and may change in the future.\nRequires the platform to run with the unstable feature `runtime_version`\nenabled. Should only be used for testing purposes, and requires\nnetwork access.\n\nA runtime version can be specified in the form of a version\nor SHA taken from the `feldera/feldera` repository main branch.\n\nExamples: `v0.96.0` or `f4dcac0989ca0fda7d2eb93602a49d007cb3b0ae`\n\nThe value `gen2` names an engine rather than a runtime commit: the SQL\ncompiler captures the circuit IR and the runner launches the Gen-2\nengine, so no pipeline binary is compiled.\n\nA platform of version `0.x.y` may be capable of running future and past\nruntimes with versions `>=0.x.y` and `<=0.x.y` until breaking API changes happen,\nthe exact bounds for each platform version are unspecified until we reach a\nstable version. Compatibility is only guaranteed if platform and runtime version\nare exact matches.\n\nNote that any enterprise features are currently considered to be part of\nthe platform.\n\nIf not set (null), the runtime version will be the same as the platform version.",
"type": [
"string",
"null"
]
},
"use_platform_compiler": {
"description": "Use the platform SQL compiler when a non-platform `runtime_version` is specified.\n\nWarning: This setting is experimental and may change in the future.\nRequires the platform to run with the unstable feature `runtime_version` enabled.\n\nWhen `false` (default), the SQL compiler matching the `runtime_version` is\ndownloaded and used. When `true`, the platform's SQL compiler is used instead.\n\nSetting this to `true` avoids downloading the runtime-version-specific SQL\ncompiler JAR (e.g., when network access is unavailable or slow), at the cost\nof potentially using a mismatched SQL compiler. The Rust runtime sources are\nstill checked out and compiled from the requested `runtime_version`.\n\nHas no effect when `runtime_version` is not set or the platform does not have\nthe unstable feature `runtime_version` enabled.",
"default": false,
"type": "boolean"
}
}
}Fields§
§cache: boolIf true (default), when a prior compilation with the same checksum
already exists, the output of that (i.e., binary) is used.
Set false to always trigger a new compilation, which might take longer
and as well can result in overriding an existing binary.
profile: Option<CompilationProfile>§runtime_version: Option<String>Override runtime version of the pipeline being executed.
Warning: This setting is experimental and may change in the future.
Requires the platform to run with the unstable feature runtime_version
enabled. Should only be used for testing purposes, and requires
network access.
A runtime version can be specified in the form of a version
or SHA taken from the feldera/feldera repository main branch.
Examples: v0.96.0 or f4dcac0989ca0fda7d2eb93602a49d007cb3b0ae
The value gen2 names an engine rather than a runtime commit: the SQL
compiler captures the circuit IR and the runner launches the Gen-2
engine, so no pipeline binary is compiled.
A platform of version 0.x.y may be capable of running future and past
runtimes with versions >=0.x.y and <=0.x.y until breaking API changes happen,
the exact bounds for each platform version are unspecified until we reach a
stable version. Compatibility is only guaranteed if platform and runtime version
are exact matches.
Note that any enterprise features are currently considered to be part of the platform.
If not set (null), the runtime version will be the same as the platform version.
use_platform_compiler: boolUse the platform SQL compiler when a non-platform runtime_version is specified.
Warning: This setting is experimental and may change in the future.
Requires the platform to run with the unstable feature runtime_version enabled.
When false (default), the SQL compiler matching the runtime_version is
downloaded and used. When true, the platform’s SQL compiler is used instead.
Setting this to true avoids downloading the runtime-version-specific SQL
compiler JAR (e.g., when network access is unavailable or slow), at the cost
of potentially using a mismatched SQL compiler. The Rust runtime sources are
still checked out and compiled from the requested runtime_version.
Has no effect when runtime_version is not set or the platform does not have
the unstable feature runtime_version enabled.
Implementations§
Source§impl ProgramConfig
impl ProgramConfig
pub fn builder() -> ProgramConfig
Trait Implementations§
Source§impl Clone for ProgramConfig
impl Clone for ProgramConfig
Source§fn clone(&self) -> ProgramConfig
fn clone(&self) -> ProgramConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more