Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.x: ReplaySubject now supports backpressure #3918

Merged
merged 1 commit into from
Jun 15, 2016

Conversation

akarnokd
Copy link
Member

@akarnokd akarnokd commented May 8, 2016

In addition, the behavior of time-limited mode has been changed. Late subscribers will now skip stale data.

Related issue: #3917

@ZacSweers
Copy link
Contributor

Would it be possible to split this up into a couple commits? GitHub won't show the diff in its current state and says to view locally

@akarnokd
Copy link
Member Author

akarnokd commented May 9, 2016

No, ReplaySubject has simply too many expected features: unbounded, size bounded and size+time bounded modes, each adding 100s of lines. It is fully rewritten so comparison wouldn't do much help.

@stealthcode
Copy link

This makes it very difficult to review. What do you propose @akarnokd ?

@akarnokd
Copy link
Member Author

akarnokd commented May 9, 2016

Check out and have your IDE compare this PR against the master version.

@stealthcode
Copy link

stealthcode commented May 9, 2016

Late subscribers will now skip stale data.

Does this mean that subscribers were not skipping stale data? This change sounds like fixing a bug?

@akarnokd
Copy link
Member Author

akarnokd commented May 9, 2016

In the original, once the source completed, the current elements in the bounded buffers were frozen in time. Late subscribers would get all the data, including those who have become older by the time these subscriptions happen. Same was true for live, but inactive replays where a subscriber would start from an outdated element. These were expected by the unit tests but #3917 expected only fresh data.

@stevegury
Copy link
Member

👍

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

Successfully merging this pull request may close these issues.

4 participants