docs: document the symbol capacity auto-scaling keys - #541
Open
PedroHenrique0713 wants to merge 1 commit into
Open
docs: document the symbol capacity auto-scaling keys#541PedroHenrique0713 wants to merge 1 commit into
PedroHenrique0713 wants to merge 1 commit into
Conversation
cairo.auto.scale.symbol.capacity and cairo.auto.scale.symbol.capacity.threshold govern the automatic symbol capacity described in concepts/symbol, but neither key was listed on the Cairo engine configuration page. Defaults and behaviour taken from the core: PropServerConfiguration reads the flag with a default of true and the threshold with a default of 0.8, rejecting a non-positive or non-finite threshold at startup. Neither key is in the dynamicProps set of DynamicPropServerConfiguration, so both need a restart.
1 task
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
cairo.auto.scale.symbol.capacityandcairo.auto.scale.symbol.capacity.thresholdare not on the Cairo engine configuration page, even though they control the automatic symbol capacity thatconcepts/symbolalready describes as the behaviour from 9.0.0 onwards. This adds both to the Symbol and indexing section.Values taken from the core rather than from the sample config:
PropServerConfiguration.java:1077reads the flag withgetBoolean(..., true), so the default istrue. That matches @nwoolmer's note on multiple inconsistencies between the default configuration variables, their documentation and naming conventions #274 that feat(sql): enable symbol capacity auto-scaling by default questdb#6352 enabled it by default, and it is the opposite of what the commented-out line in the shippedserver.confsuggests (#cairo.auto.scale.symbol.capacity=false), which is what made the reporter read it as a contradiction.PropServerConfiguration.java:1078reads the threshold withgetDouble(..., "0.8"), and the next line rejects a non-positive or non-finite value with aServerConfigurationException, so an invalid value stops startup instead of falling back to the default.dynamicPropsset inDynamicPropServerConfiguration.java, so neither is reloadable and both need a restart. The comment above that same line in the defaultserver.confsays the opposite ("Database restart is NOT required when this setting is changed"), so I documented what the code does. Happy to drop the restart sentence if the config comment is the intended contract and the set is what is out of date.Descriptions follow the javadoc on
CairoConfiguration.This covers the second of the three points in #274. The first (
query.timeout) went in with #483; the third (line.tcp.auth.db.pathmissing from the generated config) is a core concern rather than a docs one.