Index: modules/facet/src/test/org/apache/lucene/facet/taxonomy/directory/TestDirectoryTaxonomyWriter.java
===================================================================
--- modules/facet/src/test/org/apache/lucene/facet/taxonomy/directory/TestDirectoryTaxonomyWriter.java	(revision 1241955)
+++ modules/facet/src/test/org/apache/lucene/facet/taxonomy/directory/TestDirectoryTaxonomyWriter.java	(working copy)
@@ -81,7 +81,7 @@
     ltw.close();
     DirectoryReader r = IndexReader.open(dir);
     assertEquals("2 categories plus root should have been committed to the underlying directory", 3, r.numDocs());
-    Map <String, String> readUserCommitData = r.getCommitUserData();
+    Map <String, String> readUserCommitData = r.getIndexCommit().getUserData();
     assertTrue("wrong value extracted from commit data", 
         "1 2 3".equals(readUserCommitData.get("testing")));
     r.close();
Index: modules/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyReader.java
===================================================================
--- modules/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyReader.java	(revision 1241955)
+++ modules/facet/src/java/org/apache/lucene/facet/taxonomy/TaxonomyReader.java	(working copy)
@@ -242,7 +242,7 @@
    * Retrieve user committed data.
    * @see TaxonomyWriter#commit(Map)
    */
-  public Map<String, String> getCommitUserData();
+  public Map<String, String> getCommitUserData() throws IOException;
 
   /**
    * Expert: increments the refCount of this TaxonomyReader instance. 
Index: modules/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyReader.java
===================================================================
--- modules/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyReader.java	(revision 1241955)
+++ modules/facet/src/java/org/apache/lucene/facet/taxonomy/directory/DirectoryTaxonomyReader.java	(working copy)
@@ -361,8 +361,8 @@
     
     // validate that a refresh is valid at this point, i.e. that the taxonomy 
     // was not recreated since this reader was last opened or refresshed.
-    String t1 = indexReader.getCommitUserData().get(DirectoryTaxonomyWriter.INDEX_CREATE_TIME);
-    String t2 = r2.getCommitUserData().get(DirectoryTaxonomyWriter.INDEX_CREATE_TIME);
+    String t1 = indexReader.getIndexCommit().getUserData().get(DirectoryTaxonomyWriter.INDEX_CREATE_TIME);
+    String t2 = r2.getIndexCommit().getUserData().get(DirectoryTaxonomyWriter.INDEX_CREATE_TIME);
     if (t1==null) {
     	if (t2!=null) {
     		r2.close();
@@ -450,9 +450,9 @@
     }
   }
 
-  public Map<String, String> getCommitUserData() {
+  public Map<String, String> getCommitUserData() throws IOException {
     ensureOpen();
-    return indexReader.getCommitUserData();
+    return indexReader.getIndexCommit().getUserData();
   }
   
   private ChildrenArrays childrenArrays;
Index: lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java
===================================================================
--- lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java	(revision 1241955)
+++ lucene/core/src/test/org/apache/lucene/index/TestIndexWriterCommit.java	(working copy)
@@ -620,11 +620,11 @@
       TestIndexWriter.addDoc(w);
     w.close();
 
-    assertEquals(0, DirectoryReader.getCommitUserData(dir).size());
+    assertEquals(0, DirectoryReader.getLastCommitUserData(dir).size());
 
     DirectoryReader r = IndexReader.open(dir);
     // commit(Map) never called for this index
-    assertEquals(0, r.getCommitUserData().size());
+    assertEquals(0, r.getIndexCommit().getUserData().size());
     r.close();
 
     w = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)).setMaxBufferedDocs(2));
@@ -635,17 +635,17 @@
     w.commit(data);
     w.close();
 
-    assertEquals("test1", DirectoryReader.getCommitUserData(dir).get("label"));
+    assertEquals("test1", DirectoryReader.getLastCommitUserData(dir).get("label"));
 
     r = IndexReader.open(dir);
-    assertEquals("test1", r.getCommitUserData().get("label"));
+    assertEquals("test1", r.getIndexCommit().getUserData().get("label"));
     r.close();
 
     w = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT, new MockAnalyzer(random)));
     w.forceMerge(1);
     w.close();
 
-    assertEquals("test1", DirectoryReader.getCommitUserData(dir).get("label"));
+    assertEquals("test1", DirectoryReader.getLastCommitUserData(dir).get("label"));
 
     dir.close();
   }
Index: lucene/core/src/java/org/apache/lucene/index/StandardDirectoryReader.java
===================================================================
--- lucene/core/src/java/org/apache/lucene/index/StandardDirectoryReader.java	(revision 1241955)
+++ lucene/core/src/java/org/apache/lucene/index/StandardDirectoryReader.java	(working copy)
@@ -302,12 +302,6 @@
   }
 
   @Override
-  public Map<String,String> getCommitUserData() {
-    ensureOpen();
-    return segmentInfos.getUserData();
-  }
-
-  @Override
   public boolean isCurrent() throws CorruptIndexException, IOException {
     ensureOpen();
     if (writer == null || writer.isClosed()) {
Index: lucene/core/src/java/org/apache/lucene/index/DirectoryReader.java
===================================================================
--- lucene/core/src/java/org/apache/lucene/index/DirectoryReader.java	(revision 1241955)
+++ lucene/core/src/java/org/apache/lucene/index/DirectoryReader.java	(working copy)
@@ -314,16 +314,16 @@
   }
   
   /**
-   * Reads version number from segments files. The version number is
-   * initialized with a timestamp and then increased by one for each change of
-   * the index.
+   * Returns the version number of the most recent commit to
+   * the index.  The version number is initialized with zero
+   * and then increased by one for each change of the index.
    * 
    * @param directory where the index resides.
    * @return version number.
    * @throws CorruptIndexException if the index is corrupt
    * @throws IOException if there is a low-level IO error
    */
-  public static long getCurrentVersion(Directory directory) throws CorruptIndexException, IOException {
+  public static long getLastCommitVersion(Directory directory) throws CorruptIndexException, IOException {
     return SegmentInfos.readCurrentVersion(directory);
   }
     
@@ -339,9 +339,9 @@
    * @throws CorruptIndexException if the index is corrupt
    * @throws IOException if there is a low-level IO error
    *
-   * @see #getCommitUserData()
+   * @see IndexCommit#getUserData()
    */
-  public static Map<String, String> getCommitUserData(Directory directory) throws CorruptIndexException, IOException {
+  public static Map<String, String> getLastCommitUserData(Directory directory) throws CorruptIndexException, IOException {
     return SegmentInfos.readCurrentUserData(directory);
   }
 
@@ -415,14 +415,6 @@
   public abstract long getVersion();
 
   /**
-   * Retrieve the String userData optionally passed to
-   * IndexWriter#commit.  This will return null if {@link
-   * IndexWriter#commit(Map)} has never been called for
-   * this index.
-   */
-  public abstract Map<String,String> getCommitUserData();
-
-  /**
    * Check whether any new changes have occurred to the
    * index since this reader was opened.
    *
Index: lucene/core/src/java/org/apache/lucene/index/IndexWriter.java
===================================================================
--- lucene/core/src/java/org/apache/lucene/index/IndexWriter.java	(revision 1241955)
+++ lucene/core/src/java/org/apache/lucene/index/IndexWriter.java	(working copy)
@@ -2630,7 +2630,7 @@
    *  @param commitUserData Opaque Map (String->String)
    *  that's recorded into the segments file in the index,
    *  and retrievable by {@link
-   *  DirectoryReader#getCommitUserData}.  Note that when
+   *  IndexCommit#getUserData}.  Note that when
    *  IndexWriter commits itself during {@link #close}, the
    *  commitUserData is unchanged (just carried over from
    *  the prior commit).  If this is null then the previous
Index: lucene/CHANGES.txt
===================================================================
--- lucene/CHANGES.txt	(revision 1241955)
+++ lucene/CHANGES.txt	(working copy)
@@ -748,6 +748,11 @@
 * LUCENE-3672: Deprecate Directory.fileModified and
   IndexCommit.getTimestamp and .getVersion. (Andrzej Bialecki, Robert
   Muir, Mike McCandless)
+
+* LUCENE-3760: In IndexReader/DirectoryReader, rename getCurrentVersion to
+  getLastCommitVersion, getCommitUserData to getLastCommitUserData,
+  and deprecated getCommitUserData (use getIndexCommit().getUserData()
+  instead).  (Ryan McKinley, Robert Muir, Mike McCandless)
   
 Security fixes
 
