4b116a2f5d3c6e2a0a7fe39d5eb956563138d542 |
|
20-Jun-2014 |
Neil Fuller <nfuller@google.com> |
Fix the OOME in ScannerParseLargeFileBenchmarkTest Scanner had no mechanism for recovering buffer space it didn't need. Now, if the buffer is more than 50% full of ignorable characters the remaining characters are shuffled to the beginning to recover space. For most expected usecases this means that the buffer will stay 1k and contain up to 512 characters of useful data. A growable, circular character buffer could have been introduced to avoid the copy but is not worth the effort. Previously the buffer would double in size until the data or memory was exhausted, and each read would also double in size to fill the empty half of the buffer. This was fine providing the input could fit in memory. On top of that the 1k, 2k, 4k, etc. buffer was repeatedly turned into a String and passed to the (native) matcher, and then the matcher was told to ignore more than half of it. As a consequence of keeping the buffer a fixed size (and only filling 50% of it at a time), this change may cause a performance regression: for most usecases where delimiters are closer together than 512 bytes, reads after the first will now usually be 512 bytes and not the 1k, 2k, 4k, etc. it was previously. Having fixed the test so it doesn't OOM, the test now takes 6 minutes to pass on host and so is unsuitable for inclusion in CTS tests and so is being suppressed. This change also includes so tidy up changes to the test and the Scanner class. The implementation could no doubt be improved but the API makes it inherently slow. It would be surprising if anybody uses the Scanner class on Android with so many better alternatives. Bug: 14865710 Change-Id: I40a7fc0c2bfaf6db4e42108efe417303e76bde24
|
84dc741f553e9f1f98456fe983bff2fb9914d727 |
|
20-Aug-2013 |
Elliott Hughes <enh@google.com> |
Fix java.util.Scanner bugs. Also improve the documentation for java.util.regex.Matcher and unify the Scanner tests. Bug: 10310707 Bug: https://code.google.com/p/android/issues/detail?id=40555 (cherry picked from commit 56ff05b16d4a82bc2386082409c78c3d94e0df01) Change-Id: I4d7ff44a77768821970c9bab560d5facdb75e1b9
|
56ff05b16d4a82bc2386082409c78c3d94e0df01 |
|
20-Aug-2013 |
Elliott Hughes <enh@google.com> |
Fix java.util.Scanner bugs. Also improve the documentation for java.util.regex.Matcher and unify the Scanner tests. Bug: 10310707 Bug: https://code.google.com/p/android/issues/detail?id=40555 Change-Id: I97bd8243845aaa31c084c8424eceb41bbcd8ebbd
|
5c8452e1fca6a47ecbe71ac7f71e378b3be16ec7 |
|
27-Jun-2013 |
Elliott Hughes <enh@google.com> |
Improve Scanner performance. We really don't want to compute a new regular expression and compile it into a new Pattern every time we call nextInt (and friends). Adding a single-element cache (flushed if the Scanner's locale changes) makes this 100x faster. There still exists a pathological case where you switch back and forth between bases. Also improve the documentation to make it clearer that you really don't want to use this awful class anyway. Also bring back a few more of the tests we lost in the gingerbread timeframe. Bug: https://code.google.com/p/android/issues/detail?id=57050 Change-Id: Id6095682fb44abae2887dda29dd3d32ac777c68f
|
9902f3494c6d983879d8b9cfe6b1f771cfefe703 |
|
10-May-2013 |
Elliott Hughes <enh@google.com> |
Finish off AutoCloseable. Bug: 3484927 Change-Id: Ia0f5ad3db9807459ce6cda05bc2f53564b63b375
|
d43b9ef11a1095967a3396b246639b563e1a4128 |
|
12-Sep-2012 |
Kenny Root <kroot@google.com> |
Add consistent reasons for NullPointerException Semi-automated replacement of empty and non-conforming NullPointerException reason messages. (cherry-pick of 86acc043d3334651ee26c65467d78d6cefedd397.) Change-Id: I6d893979f5c20a50e841e32af9fd7b2d8bc9d54d
|
86acc043d3334651ee26c65467d78d6cefedd397 |
|
12-Sep-2012 |
Kenny Root <kroot@google.com> |
Add consistent reasons for NullPointerException Semi-automated replacement of empty and non-conforming NullPointerException reason messages. Change-Id: Iedeb4b21949e973c4042ce5982dda315f2e785e1
|
fb0ec0e650bf8be35acb0d47da0311a7c446aa33 |
|
14-Jan-2011 |
Elliott Hughes <enh@google.com> |
Remove useless android-changed comments. I've changed useful ones to regular comments or TODOs, as appropriate. I've left ones in code like java.util.concurrent where we really are tracking an upstream source, making the change markers useful. I've left a handful of others where I intend to actually investigate the implied TODOs before deciding how to resolve them. Change-Id: Iaf71059b818596351cf8ee5a3cf3c85586051fa6
|
b46dab348e2007bc08abaf7ecae34d89a2474e50 |
|
09-Dec-2010 |
Elliott Hughes <enh@google.com> |
Rewrite all backwards comparisons. Strictly, all the ones I could find. This is everything with 0 or null on the left-hand side. Note that this touches several incorrect bounds checks, which I haven't fixed: I'm going to come back and finish that independent cleanup separately. Change-Id: Ibdb054b53df9aace47c7d2a00ff19122190053e8
|
a7a70410e26802f3ab480b08a1ab499338cb6f7e |
|
03-Oct-2010 |
Jesse Wilson <jessewilson@google.com> |
Use IoUtils.closeQuietly where possible. Change-Id: I354c1e00b7068108032d09c0a1c38e29f6283fb0
|
1d58625189328f29c10fa98d52512ee6cf8cc641 |
|
26-Aug-2010 |
Ben Dodson <bjdodson@google.com> |
Update for changes to @code processing Change-Id: Ifb7dbe3105bdef15dadb84740845a71b019d62e3
|
162a12c1442641a95fe95859fa4e561b22db049f |
|
25-May-2010 |
Elliott Hughes <enh@google.com> |
Remove @hide from Java 6 API. I've left the two new spi packages @hidden, because I think we shouldn't support them without convincing demand from developers (and I don't believe there could be such a thing --- they just don't make sense, and if we add anything, it should be the ability to provide extra ICU data). Also fix a handful of javadoc syntax errors in Arrays.java and TreeMap.java. Bug: 2497395 Change-Id: I4176b72daff0face4ed6c7ee1d1f4267d52006b4
|
b1396870f92135aa140bd2b86221768dea5bc11d |
|
25-May-2010 |
Elliott Hughes <enh@google.com> |
Remove the luni localized exception messages. Also fix a bug I introduced in KXmlSerializer: s.isEmpty() is not equivalent to "".equals(s) if s is allowed to be null. Bug: 1251121 Change-Id: I41a0a98ffb49f214041c9110f824d327af5c34e8
|
80a7fbab52b96c9fd47c72f8987d1babe2cd001d |
|
22-May-2010 |
Elliott Hughes <enh@google.com> |
Remove more localized exception messages. I also accidentally mixed two unrelated changes in here: replacing "".equals and equals("") with String.isEmpty, and removing some dead code in org.apache.harmony.luni.util.Util. Change-Id: I0aaad43290b083085b3095b624caf096de487223
|
f33eae7e84eb6d3b0f4e86b59605bb3de73009f3 |
|
13-May-2010 |
Elliott Hughes <enh@google.com> |
Remove all trailing whitespace from the dalvik team-maintained parts of libcore. Gentlemen, you may now set your editors to "strip trailing whitespace"... Change-Id: I85b2f6c80e5fbef1af6cab11789790b078c11b1b
|
fd6bb3510c2f94d636f3572dcf5f7f4dcd1a2726 |
|
13-May-2010 |
Elliott Hughes <enh@google.com> |
Remove //$NON-NLS-\d$ cruft. Mostly done by perl(1), with manual cleanup of the few misspelled instances. This makes our trailing whitespace slightly worse, but I'll fix all that with a follow-on change. Change-Id: I0b4ca98819be6f9519c4ba980d759bd1ee1a0303
|
9e95c528a090dac847aa97fec1b0ad331929c685 |
|
25-Mar-2010 |
Elliott Hughes <enh@google.com> |
Clean up a few toStrings. I couldn't find any more that were using getClass() rather than getClass().getName(). Change-Id: I30b375748d36bc36d1e6999349fc472496456746
|
7b00ce846d4cdadceadb197e3d207946168970ed |
|
18-Mar-2010 |
Elliott Hughes <enh@google.com> |
Add Java 6's Scanner.reset and fix RuleBasedCollator's javadoc. (The harmony ScannerTest.java is quite different from ours, and doesn't test this trivial method anyway.) Bug: 2497395 Change-Id: I8b2b3db7233f766ef70bfdbfdcdfbd0f23e4bdb4
|
4fefecee9d4a5d2a4510f516b4015607b19e8d09 |
|
13-Nov-2009 |
Jean-Baptiste Queru <jbq@google.com> |
eclair snapshot
|
5839b909d9528b7726e678a4b696ed37df15d897 |
|
10-Oct-2009 |
Jesse Wilson <jessewilson@google.com> |
Udating luni to Harmony r823222. Highlights: - InputStream.skip concurrency issue - "better" messages in bound exceptions for streams and arrays - prefer fewer writes to underlying streams (using byte[] buffers) - Rename subclasses to not reuse names from their superclasses - PlatformAddressFactory.allocMap bugfix Plus some spelling fixes, style fixes, serial version UIDs and other boilerplate improvements.
|
f5597e626ecf7949d249dea08c1a2964d890ec11 |
|
25-Jul-2009 |
Jesse Wilson <jessewilson@google.com> |
Integrate luni module (but not tests) to Harmony r772995. Notable changes - Stripped "@since Android 1.0" from many files. Most files are now 100% the same in Dalvik and Harmony. - AbstractStringBuilder.reverse() supports surrogates - AbstractStringBuilder shares less to waste less memory - Bitset optimized - BufferedInputStream changed to support unsynchronized close() - BufferedOutputStream does flushInternal - BufferedReader supports EBCDIC NEL - Collections.synchronizedList().indexOf() does a copy for more concurrency - Classes in nio module changed: DatagramChannelImpl, SocketChannelImpl and ServerSocketChannelImpl (these depend on internal APIs changed in this update) - DataInputStream/DataOutputStream now use a small buffer to limit the number of times the underlying stream is accessed - Date now has a minutes offset, more efficient toString() - ExposedByteArrayInputStream: new internal class - DeleteOnExit moved to top-level class - FileDescriptor.isValid() now non-native - Float, Double lessThan optimized (fix for compare(-0.0F, 0.0F) still pending) - FileURLConnection now guesses content types from streams - HashMap iterator changes - Hashtable iterator changes - INetworkSystem - removes bind2(), createMulticastSocket, sendStream(), - renames createSocket to createStreamSocket - JarURLConnection rewritten - LinkedHashMap: new iterator - Locale, Currency, TimeZone: now use ICU in Harmony, plain Java in Dalvik - ObjectInputStream: Accessor objects in Harmony, direct native in Dalvik - ProxyClassFile - many changes - String - optimized ascii for toLowerCase, toUpperCase, compare - Timer - rewritten - TreeMap - rewritten - URLClassLoader - new - URLConnection - new guessContentTypeFromStream(), uses org.apache.harmony.awt.www.content to lookup content type handlers
|
adc854b798c1cfe3bfd4c27d68d5cee38ca617da |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
1c0fed63c71ddb230f3b304aac12caffbedf2f21 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
dd828f42a5c83b4270d4fbf6fce2da1878f1e84a |
|
18-Dec-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Code drop from //branches/cupcake/...@124589
|
fdb2704414a9ed92394ada0d1395e4db86889465 |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|