Skip to content

GH-552: [Vector] Add absent methods to the UnionFixedSizeListWriter#1052

Open
axreldable wants to merge 1 commit intoapache:mainfrom
axreldable:manual-fix-size-writer-align-list
Open

GH-552: [Vector] Add absent methods to the UnionFixedSizeListWriter#1052
axreldable wants to merge 1 commit intoapache:mainfrom
axreldable:manual-fix-size-writer-align-list

Conversation

@axreldable
Copy link
Contributor

@axreldable axreldable commented Mar 7, 2026

What's Changed

Add absent methods to the UnionFixedSizeListWriter.

  1. Aligned the UnionFixedSizeListWriter template with the UnionListWriter template, which added the following previously absent methods to the generated UnionFixedSizeListWriter class:
- duration() methods
    - DurationWriter duration()
    - DurationWriter duration(String name, org.apache.arrow.vector.types.TimeUnit unit)
    - DurationWriter duration(String name)
- timeStampSecTZ() methods
    - TimeStampSecTZWriter timeStampSecTZ()
    - TimeStampSecTZWriter timeStampSecTZ(String name, String timezone)
    - TimeStampSecTZWriter timeStampSecTZ(String name)
- timeStampMilliTZ() methods
    - TimeStampMilliTZWriter timeStampMilliTZ()
    - TimeStampMilliTZWriter timeStampMilliTZ(String name, String timezone)
    - TimeStampMilliTZWriter timeStampMilliTZ(String name)
- timeStampMicroTZ() methods
    - TimeStampMicroTZWriter timeStampMicroTZ()
    - TimeStampMicroTZWriter timeStampMicroTZ(String name, String timezone)
    - TimeStampMicroTZWriter timeStampMicroTZ(String name)
- timeStampNanoTZ() methods
    - TimeStampNanoTZWriter timeStampNanoTZ()
    - TimeStampNanoTZWriter timeStampNanoTZ(String name, String timezone)
    - TimeStampNanoTZWriter timeStampNanoTZ(String name)
- fixedSizeBinary() methods
    - FixedSizeBinaryWriter fixedSizeBinary()
    - FixedSizeBinaryWriter fixedSizeBinary(String name, int byteWidth)
    - FixedSizeBinaryWriter fixedSizeBinary(String name)
- write() methods for Duration
    - void writeDuration(long value)
    - void write(DurationHolder holder)
- write() methods for TimeStampSecTZ 
    - void writeTimeStampSecTZ(long value)
    - void write(TimeStampSecTZHolder holder)
- write() methods for TimeStampMilliTZ
    - void writeTimeStampMilliTZ(long value)
    - void write(TimeStampMilliTZHolder holder)
- write() methods for TimeStampMicroTZ
    - void writeTimeStampMicroTZ(long value)
    - void write(TimeStampMicroTZHolder holder)
- write() methods for TimeStampNanoTZ
    - void writeTimeStampNanoTZ(long value)
    - void write(TimeStampNanoTZHolder holder)
- write() methods for FixedSizeBinary
    - void writeFixedSizeBinary(ArrowBuf buffer)
    - void write(FixedSizeBinaryHolder holder)
  1. Add structName = name; for 2 existing methods (align them with other similar methods):
- DecimalWriter decimal(String name)
- Decimal256Writer decimal256(String name)
  1. Remove unused assignments from the UnionListWriter template.

This fix doesn't change the code of the UnionListWriter generated class and extend/fix the code of the UnionFixedSizeListWriter generated class. So, the change is backward compatible.

See this gist for a diff of the generated UnionFixedSizeListWriter class.


Inspired by this PR.


Closes #552 .

@github-actions
Copy link

github-actions bot commented Mar 7, 2026

Thank you for opening a pull request!

Please label the PR with one or more of:

  • bug-fix
  • chore
  • dependencies
  • documentation
  • enhancement

Also, add the 'breaking-change' label if appropriate.

See CONTRIBUTING.md for details.

@axreldable
Copy link
Contributor Author

Please add the enhancement label.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

UnionFixedSizeListWriter does not support TimeStamp*TZ

1 participant