matrixorigin / matrixorigin/matrixone
[Refactoring]: Migrate string position and length parameters
- Dominant language
- Go
- Stars
- 1.9k
- Forks
- 311
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 768
Description
## Parent
- #28893
## Dependency
Depends on the shared contract delivered by the binding-layer foundation subtask.
## Scope
Migrate ordinary string position/count/length consumers to the approved integer-parameter contract:
- LEFT, RIGHT, SUBSTRING/SUBSTR/MID
- LPAD, RPAD, INSERT, LOCATE
- REPEAT, SPACE, ELT
SPLIT_PART and REGEXP optional selectors are tracked in #28979 because their existing execution signatures use narrower UINT32/INT8 contracts and require explicit range-preserving executor work rather than metadata-only migration.
Retain historical execution identities for compatibility and remove them only from new overload selection.
## Acceptance criteria
- All listed integer-only parameters use shared binding coercion and canonical signed ranges.
- Fractional constants, columns, prepared values, selectors, NULL, and overflow have focused coverage.
- Existing persisted identities remain executable.
- No new coercion semantics, protocol identity, or global binder special case is introduced. Any such need must return to design review rather than expanding this migration PR.
Contributor guide
Assessment
This issue has not been assessed yet.