Index: solr/core/src/test/org/apache/solr/schema/DocValuesTest.java
===================================================================
--- solr/core/src/test/org/apache/solr/schema/DocValuesTest.java	(revision 1468603)
+++ solr/core/src/test/org/apache/solr/schema/DocValuesTest.java	(working copy)
@@ -122,6 +122,26 @@
     assertQ(req("q", "*:*", "sort", "stringdv asc", "rows", "1", "fl", "id"),
         "//str[@name='id'][.='2']");
   }
+  
+  public void testDocValuesSorting2() {
+    assertU(adoc("id", "1", "doubledv", "12"));
+    assertU(adoc("id", "2", "doubledv", "50.567"));
+    assertU(adoc("id", "3", "doubledv", "+0"));
+    assertU(adoc("id", "4", "doubledv", "4.9E-324"));
+    assertU(adoc("id", "5", "doubledv", "-0"));
+    assertU(adoc("id", "6", "doubledv", "-5.123"));
+    assertU(adoc("id", "7", "doubledv", "1.7976931348623157E308"));
+    assertU(commit());
+    assertQ(req("fl", "id", "q", "*:*", "sort", "doubledv asc"),
+        "//result/doc[1]/str[@name='id'][.='6']",
+        "//result/doc[2]/str[@name='id'][.='5']",
+        "//result/doc[3]/str[@name='id'][.='3']",
+        "//result/doc[4]/str[@name='id'][.='4']",
+        "//result/doc[5]/str[@name='id'][.='1']",
+        "//result/doc[6]/str[@name='id'][.='2']",
+        "//result/doc[7]/str[@name='id'][.='7']"
+        );
+  }
 
   public void testDocValuesFaceting() {
     for (int i = 0; i < 50; ++i) {
