You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by re...@apache.org on 2012/03/22 16:30:04 UTC

svn commit: r1303836 - in /jackrabbit/branches/2.2: ./ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java

Author: reschke
Date: Thu Mar 22 15:30:04 2012
New Revision: 1303836

URL: http://svn.apache.org/viewvc?rev=1303836&view=rev
Log:
JCR-3266 JCR-SQL2 query with multiple columns in result only returns last column when using Row.getValues() (ported to 2.2)

Modified:
    jackrabbit/branches/2.2/   (props changed)
    jackrabbit/branches/2.2/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java
    jackrabbit/branches/2.2/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java

Propchange: jackrabbit/branches/2.2/
------------------------------------------------------------------------------
  Merged /jackrabbit/trunk:r1303438

Modified: jackrabbit/branches/2.2/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.2/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java?rev=1303836&r1=1303835&r2=1303836&view=diff
==============================================================================
--- jackrabbit/branches/2.2/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java (original)
+++ jackrabbit/branches/2.2/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/join/AbstractRow.java Thu Mar 22 15:30:04 2012
@@ -40,8 +40,9 @@ abstract class AbstractRow implements Ro
 
     public Value[] getValues() throws RepositoryException {
         Value[] values = new Value[columns.size()];
-        for (Operand operand : columns.values()) {
-            values = evaluator.getValues(operand, this);
+        int i = 0;
+        for (String columnName : columns.keySet()) {
+            values[i++] = getValue(columnName);
         }
         return values;
     }

Modified: jackrabbit/branches/2.2/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.2/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java?rev=1303836&r1=1303835&r2=1303836&view=diff
==============================================================================
--- jackrabbit/branches/2.2/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java (original)
+++ jackrabbit/branches/2.2/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/query/SQL2QueryResultTest.java Thu Mar 22 15:30:04 2012
@@ -27,7 +27,9 @@ import javax.jcr.Node;
 import javax.jcr.RepositoryException;
 import javax.jcr.nodetype.NodeTypeManager;
 import javax.jcr.query.QueryResult;
+import javax.jcr.query.Row;
 
+import org.apache.jackrabbit.commons.JcrUtils;
 import org.apache.jackrabbit.commons.cnd.CndImporter;
 
 /**
@@ -112,6 +114,10 @@ public class SQL2QueryResultTest extends
                     .getColumnNames())));
             assertTrue("Got unexpected columns: " + expectedCols,
                     expectedCols.isEmpty());
+            for (Row row : JcrUtils.getRows(r)) {
+                assertNotNull(row.getValues());
+                assertEquals(expected, row.getValues().length);
+            }
         }
     }
 }