Skip to content

Flowable.groupBy hangs with group consumed via observeOn and take(timed) #6982

@akarnokd

Description

@akarnokd

Continuing evaluating the problems from #6974

The following test hangs after a while:

 @Test public void issue6974Part2Case1ObserveOnNoCap() { final int groups = 20; int flatMapMaxConcurrency = 1_000_000; Flowable .range(1, 500_000) .map(i -> i % groups) .doOnRequest(v -> { System.out.println("Source: " + v); }) .groupBy(i -> i) .flatMap(gf -> gf .observeOn(Schedulers.computation()) .take(10, TimeUnit.MILLISECONDS) , flatMapMaxConcurrency) .test() .awaitDone(5, TimeUnit.SECONDS) .assertNoErrors() .assertComplete(); }

Adding hide makes it pass which indicates the fusion between the group and observeOn seems to stop requesting more items.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions