apache / apache/arrow

[C++] MapGenerator should optionally forward reentrant pressure

Aperta
#28,855 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Component: C++ Type: bug
Lingua principale
C++
Stelle
17.1k
Fork
4.3k
Merge medio
3g 23h
PR unite (30g)
101

Descrizione

Currently the map generator will allow the map function to run in parallel but it will not forward reentrant pressure onto the source generator.  Instead it queues requests.

In some cases this is the right decision (if source is not async reentrant) but in some cases we want it to forward the pressure (so that the entire chain can run in parallel).

By making it an option when the mapped generator is created we can allow pressure to be forwarded where appropriate.

 

Phrasing it another way.  If we have source, map function A, map function B, map function C, and then a reentrant pull we would currently only run C in parallel.

**Reporter**: [Weston Pace](https://issues.apache.org/jira/browse/ARROW-13155) / @westonpace
#### PRs and other links:
- [GitHub Pull Request #10795](https://github.com/apache/arrow/pull/10795)

**Note**: *This issue was originally created as [ARROW-13155](https://issues.apache.org/jira/browse/ARROW-13155). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia esaminando il percorso di creazione di MapGenerator e la pull request #10795 collegata, quindi traccia come i pull rientranti si spostano dal generatore mappato alla sua source. Il lavoro è completato quando un’opzione controlla se la pressione rientrante viene inoltrata attraverso la catena source/map A/map B/map C invece di essere accodata.

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

Valutazione

Stack tecnologico
cpp
Ambito
data
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.