[
https://issues.apache.org/jira/browse/CSV-285?focusedWorklogId=623638&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-623638
]
ASF GitHub Bot logged work on CSV-285:
--------------------------------------
Author: ASF GitHub Bot
Created on: 16/Jul/21 14:39
Start Date: 16/Jul/21 14:39
Worklog Time Spent: 10m
Work Description: belugabehr commented on pull request #169:
URL: https://github.com/apache/commons-csv/pull/169#issuecomment-881499609
@garydgregory
Weird timing that I just happened to pick up CSV commons work the other day.
I thought I was making big progress on performance, but my research just
revealed that there was a big performance regression as part of adding support
for String delimiters #76 which was just added to master recently. My
contributions this week made some incremental improvements, but really the big
performance improvement I addressed in #167 which bypasses the work in #76 by
short-circuiting for the common use case of a single delimiter character. With
#167 in place, the performance is much more similar to the current 1.8 version
and not nearly as impressive as I had thought.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 623638)
Time Spent: 1h 10m (was: 1h)
> Replace BufferedReader with PushbackReader
> ------------------------------------------
>
> Key: CSV-285
> URL: https://issues.apache.org/jira/browse/CSV-285
> Project: Commons CSV
> Issue Type: Improvement
> Reporter: David Mollitor
> Priority: Major
> Time Spent: 1h 10m
> Remaining Estimate: 0h
>
> {{commons-csv}} uses, as its base {{Reader}} a {{BufferedReader}}, however
> the more natural choice is {{PushBackReader}}.
> {quote}
> This is useful in situations where it is convenient for a fragment of code to
> read an indefinite number of data bytes that are delimited by a particular
> byte value; after reading the terminating byte, the code fragment can
> "unread" it, so that the next read operation on the input stream will reread
> the byte that was pushed back. For example, bytes representing the characters
> constituting an identifier might be terminated by a byte representing an
> operator character; a method whose job is to read just an identifier can read
> until it sees the operator and then push the operator back to be re-read.
> {quote}
> https://docs.oracle.com/javase/8/docs/api/java/io/PushbackInputStream.html
> {{commons-csv}} currently implements these "pushback" features on top of a
> {{BufferedReader}}.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)