-
Notifications
You must be signed in to change notification settings - Fork 172
Open
Milestone
Description
Expected behavior and actual behavior:
I'm building a Seq that contains limit() and window() terms and I'm seeing some surprising behavior:
- If the
limit()comes after the window() it appears that the iterator that theSeqis based on gets completely drained even though the stream terminates as expected after the number of items specified in thelimit()are processed. - If the
limit()comes before thewindow()the iterator is not drained. (The stream also terminates as expected.)
In my real scenario, the iterator that the Seq is based on is an iterator on top of a DB cursor and the limit() comes after the window(). I really need the behavior to not be that the code tries to drain this iterator--i.e., read a ton of rows from the DB.
Is this a bug or just the way things work?
Steps to reproduce the problem:
I've attached a simple program that exhibits the behavior.
Versions:
- jOOλ: 0.9.12
- Java: 1.8
Reactions are currently unavailable