[ 
https://issues.apache.org/jira/browse/LUCENE-10143?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17424107#comment-17424107
 ] 

Uwe Schindler commented on LUCENE-10143:
----------------------------------------

bq. One issue: Lots of DataInput/Output subclasses, why so many? In some cases 
it seems like bad design. We are asking for poor performance by having so much 
custom/duplicate code.

That was exactly my problem 2 weeks ago! Why the shit do we have all this. One 
of the problems is that DataInput and DataOutput is its state as abstract 
class. It should be an interface with the default implementations ike 
readFoobar/writeFoobar as default methods (this was not possible in earlier 
days). This would also save us to have many copies because of IndexInput vs. 
DataInput only. Also some copies in FST were created to just make them 
implement another interface (FSTBytesReader extends DataInput with one 
additional method). This bad design made us to copy the whole class. With 
making DataInput just an Interface, we could solve all those problems: 
FSTBytesReader is another interface then. One that needs to work on byterrays 
can just add the FSTBytesReader interface and implement the missing method, but 
can be identical to the one I optimized already (ByteArrayDataInput).

> RateLimitedIndexOutput should delegate writeShort/writeInt/writeLong
> --------------------------------------------------------------------
>
>                 Key: LUCENE-10143
>                 URL: https://issues.apache.org/jira/browse/LUCENE-10143
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Adrien Grand
>            Priority: Minor
>         Attachments: screenshot-1.png
>
>          Time Spent: 3h 10m
>  Remaining Estimate: 0h
>
> Otherwise merges are not taking advantage of LUCENE-10125.
> cc [~uschindler]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to