Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

The construction of arrays should be more flexible

Aperta
#97 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
csharp

Direzione di ricerca

Inizia esaminando le API di costruzione di Builder e IArrowArray specifiche per tipo descritte nell’issue, quindi confronta le issue collegate di Apache Arrow per delimitare l’ambito. L’issue elenca diversi obiettivi indipendenti, quindi per considerarla completata sarebbe necessario selezionare un miglioramento, definirne il comportamento e aggiungere la relativa copertura nel codice interessato per la costruzione degli array.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Today, arrays can only be constructed using a type-specific Builder. Builders start with some default initial size and grow either incrementally or by setting a new capacity. Once construction is complete, an immutable IArrowArray is produced. This mode of operation is safe but inflexible and potentially inefficient.

Some ideas for improving this are to

  • Allow an initial size to be specified for builders
  • Support (fixed-size) read-write arrays -- at least for fixed-width types -- in addition to read-only arrays
  • Allow ownership of memory to pass from the builder to the array upon construction so as not to require an additional allocation.
  • Allow native memory to be allocated without clearing it first
  • Allow a null value to be set directly in the builder, just as a non-null value can be
  • More flexible builders for nested types
  • Validating that the nullability of the type matches the values in the array

Inspired by:
https://github.com/apache/arrow/issues/21093
https://github.com/apache/arrow/issues/21386
https://github.com/apache/arrow/issues/21746
https://github.com/apache/arrow/issues/22309
https://github.com/apache/arrow/issues/25449
https://github.com/apache/arrow/issues/30567
https://github.com/apache/arrow/issues/35285
https://github.com/apache/arrow/issues/36133
https://github.com/apache/arrow/issues/40188

Lingua principale
C#
Stelle
41
Fork
31
Merge medio
20h 56m
PR unite (30g)
14

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/arrow-dotnet

Tutte le issue di apache/arrow-dotnet

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.