[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-03-04 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1059085772 For the record this DocIdSetBuilder.Buffer has been so damaging to our code, insanely, I'm still here trying to calm down the explosion of horribleness caused by it. I opene

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-03-03 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1058571689 @iverase @jpountz I "undrafted" the PR and added a commit with the `grow(long)` that just truncates-n-forwards. It seems like the best compromise based on discussion above.

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-26 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1052127011 if we add `grow(long)` that simply truncates and forwards, then it encapsulates this within this class. The code stays simple and the caller doesn't need to know about it. -- Thi

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-25 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1050876486 seriously, look at `threshold`. its `maxDoc >>> 7`. `maxDoc` is an int. when you call `grow(anywhere close to Integer.MAX_VALUE)` then buffers exits the stage permanently.

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-25 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1050869655 There's no way we're allowing more than `Integer.MAX_VALUE` calls going to this buffers thing. -- This is an automated message from the Apache Git Service. To respond to the mess

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-24 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1050188471 > I don't think the grow(long) is necessary, we can always added to the IntersectVisitor instead. Maybe would be worthy to adjust how we call grow() in BKDReader#addAll as it does n

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-24 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1049967927 If we want to add the `grow(long)` sugar method that simply truncates to `Integer.MAX_VALUE` and clean up all the points callsites, or write a cool FixedBitSet.approximateCardinalit

[GitHub] [lucene] rmuir commented on pull request #709: LUCENE-10311: remove complex cost estimation and abstraction leakage around it

2022-02-24 Thread GitBox
rmuir commented on pull request #709: URL: https://github.com/apache/lucene/pull/709#issuecomment-1049948027 Here's a first stab of what i proposed on https://github.com/apache/lucene/pull/692 You can see how damaging the current cost() implementation is. As followup commits w