Thread (18 messages) flat view 18 messages, 3 authors, 2016-06-15
STALE3731d

[JGIT PATCH 00/13] Misc. bug fixes and cleanups

From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:46:40

This goes on top of my series from yesterday, as the first part of
it covers some minor corner-case bugs in the WindowCache rewrite.

The last patch in this series maybe should be held off for a while
as it deletes ObjectIdMap.  I'm inclined to just kill it off now,
as after 11/13, nobody uses it.

Shawn O. Pearce (13):
  Fix performance problem recently introduced to
    DeltaPackedObjectLoader
  Don't use ByteWindows when checking pack file headers/footers
  Rewrite WindowCache to be easier to follow and maintain
  Document the IllegalArgumentException thrown by
    WindowCache.reconfigure
  Create the new WindowCache before clearing the old one
  Better handle concurrent reads during a WindowCache reconfiguration
  Clear dead OffsetCache cells when clearing a reference
  Work around Sun JVM bug "Cleared SoftReference not added to queue"
  Replace inefficient new String(String) constructor to silence
    FindBugs
  Replace inefficient new Long(long) constructor to silence FindBugs
  Change IndexPack to use ObjectIdSubclassMap instead of ObjectIdMap
  Use getCachedBytes in IndexPack to avoid an unnecessary copy
  Remove ObjectIdMap from the JGit library

 .../org/spearce/jgit/lib/ConcurrentRepackTest.java |    4 -
 .../tst/org/spearce/jgit/lib/ObjectIdMapTest.java  |  103 ----
 .../src/org/spearce/jgit/lib/ByteArrayWindow.java  |   57 +--
 .../src/org/spearce/jgit/lib/ByteBufferWindow.java |   41 +-
 .../src/org/spearce/jgit/lib/ByteWindow.java       |   91 +---
 .../spearce/jgit/lib/DeltaPackedObjectLoader.java  |    1 +
 .../src/org/spearce/jgit/lib/ObjectIdMap.java      |  201 --------
 .../org/spearce/jgit/lib/ObjectIdSubclassMap.java  |   31 ++-
 .../src/org/spearce/jgit/lib/OffsetCache.java      |  536 ++++++++++++++++++++
 .../src/org/spearce/jgit/lib/PackFile.java         |  128 +++--
 .../org/spearce/jgit/lib/PackedObjectLoader.java   |    4 +-
 .../src/org/spearce/jgit/lib/RefDatabase.java      |    3 +-
 .../src/org/spearce/jgit/lib/WindowCache.java      |  417 ++++------------
 .../src/org/spearce/jgit/lib/WindowCursor.java     |   42 +-
 .../src/org/spearce/jgit/transport/IndexPack.java  |  129 +++--
 .../src/org/spearce/jgit/transport/LongMap.java    |  152 ++++++
 org.spearce.jgit/src/org/spearce/jgit/util/NB.java |   32 ++
 17 files changed, 1088 insertions(+), 884 deletions(-)
 delete mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/lib/ObjectIdMapTest.java
 delete mode 100644 org.spearce.jgit/src/org/spearce/jgit/lib/ObjectIdMap.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/lib/OffsetCache.java
 create mode 100644 org.spearce.jgit/src/org/spearce/jgit/transport/LongMap.java
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help