You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by gd...@apache.org on 2011/03/17 16:13:52 UTC

svn commit: r1082527 - in /cassandra/trunk/drivers/java: src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java test/org/apache/cassandra/cql/JdbcDriverTest.java

Author: gdusbabek
Date: Thu Mar 17 15:13:51 2011
New Revision: 1082527

URL: http://svn.apache.org/viewvc?rev=1082527&view=rev
Log:
oh yeah. RSMD column index all need to be off-by-one

Modified:
    cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java
    cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java

Modified: cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java?rev=1082527&r1=1082526&r2=1082527&view=diff
==============================================================================
--- cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java (original)
+++ cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraResultSet.java Thu Mar 17 15:13:51 2011
@@ -2021,6 +2021,7 @@ class CassandraResultSet<N, V> implement
 
         public boolean isNameCaseSensitive(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getNameType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getNameType()).isCaseSensitive();
@@ -2030,6 +2031,7 @@ class CassandraResultSet<N, V> implement
         
         public boolean isValueCaseSensitive(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getValueType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getValueType()).isCaseSensitive();
@@ -2039,6 +2041,7 @@ class CassandraResultSet<N, V> implement
 
         public boolean isNameCurrency(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getNameType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getNameType()).isCurrency();
@@ -2048,6 +2051,7 @@ class CassandraResultSet<N, V> implement
         
         public boolean isValueCurrency(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getValueType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getValueType()).isCurrency();
@@ -2057,6 +2061,7 @@ class CassandraResultSet<N, V> implement
 
         public boolean isNameSigned(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             TypedColumn col = values.get(column);
             if (col.getNameType() == IntegerType.instance || col.getNameType() == LongType.instance)
@@ -2069,6 +2074,7 @@ class CassandraResultSet<N, V> implement
         
         public boolean isValueSigned(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             TypedColumn col = values.get(column);
             if (col.getValueType() == IntegerType.instance || col.getValueType() == LongType.instance)
@@ -2086,12 +2092,14 @@ class CassandraResultSet<N, V> implement
 
         public int getValueDisplaySize(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getValueString().length();
         }
 
         public int getNamePrecision(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             TypedColumn col = values.get(column);
             if (col.getNameType() instanceof ColumnMetaData)
@@ -2110,6 +2118,7 @@ class CassandraResultSet<N, V> implement
         
         public int getValuePrecision(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             TypedColumn col = values.get(column);
             if (col.getValueType() instanceof ColumnMetaData)
@@ -2128,6 +2137,7 @@ class CassandraResultSet<N, V> implement
 
         public int getNameScale(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getValueType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getNameType()).getScale();
@@ -2137,6 +2147,7 @@ class CassandraResultSet<N, V> implement
         
         public int getValueScale(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             if (values.get(column).getValueType() instanceof ColumnMetaData)
                 return ((ColumnMetaData)values.get(column).getValueType()).getScale();
@@ -2146,12 +2157,14 @@ class CassandraResultSet<N, V> implement
 
         public int getNameType(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return getJdbcType(values.get(column).getNameType());
         }
         
         public int getValueType(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return getJdbcType(values.get(column).getValueType());
         }
@@ -2177,24 +2190,28 @@ class CassandraResultSet<N, V> implement
 
         public String getNameTypeName(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getNameType().getClass().getSimpleName();
         }
         
         public String getValueTypeName(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getValueType().getClass().getSimpleName();
         }
 
         public String getNameClassName(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getNameType().getType().getName();
         }
 
         public String getValueClassName(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getValueType().getType().getName();
         }
@@ -2216,6 +2233,7 @@ class CassandraResultSet<N, V> implement
 
         public boolean isAutoIncrement(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getValueType() instanceof CounterColumnType; // todo: check Value is correct.
         }
@@ -2258,6 +2276,7 @@ class CassandraResultSet<N, V> implement
 
         public String getColumnName(int column) throws SQLException
         {
+            column--;
             checkIndex(column);
             return values.get(column).getNameString();
         }

Modified: cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java?rev=1082527&r1=1082526&r2=1082527&view=diff
==============================================================================
--- cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java (original)
+++ cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java Thu Mar 17 15:13:51 2011
@@ -121,13 +121,13 @@ public class JdbcDriverTest extends Embe
         
         ResultSetMetaData md = rs.getMetaData();
         assert md.getColumnCount() == 2;
-        expectedMetaData(md, 0, BigInteger.class.getName(), "JdbcInteger", "Keyspace1", "1", Types.BIGINT, IntegerType.class.getSimpleName(), true, false);
-        expectedMetaData(md, 1, BigInteger.class.getName(), "JdbcInteger", "Keyspace1", "2", Types.BIGINT, IntegerType.class.getSimpleName(), true, false);
+        expectedMetaData(md, 1, BigInteger.class.getName(), "JdbcInteger", "Keyspace1", "1", Types.BIGINT, IntegerType.class.getSimpleName(), true, false);
+        expectedMetaData(md, 2, BigInteger.class.getName(), "JdbcInteger", "Keyspace1", "2", Types.BIGINT, IntegerType.class.getSimpleName(), true, false);
 
         CassandraResultSetMetaData cmd = md.unwrap(CassandraResultSetMetaData.class);
         for (int i = 0; i < md.getColumnCount(); i++)
             expectedMetaData(
-                    cmd, i, 
+                    cmd, i+1, 
                     BigInteger.class.getName(), Types.BIGINT, IntegerType.class.getSimpleName(), true, false,
                     BigInteger.class.getName(), Types.BIGINT, IntegerType.class.getSimpleName(), true, false);
         
@@ -145,13 +145,13 @@ public class JdbcDriverTest extends Embe
         
         ResultSetMetaData md = rs.getMetaData();
         assert md.getColumnCount() == 2;
-        expectedMetaData(md, 0, Long.class.getName(), "JdbcLong", "Keyspace1", "1", Types.BIGINT, LongType.class.getSimpleName(), true, false);
-        expectedMetaData(md, 1, Long.class.getName(), "JdbcLong", "Keyspace1", "2", Types.BIGINT, LongType.class.getSimpleName(), true, false);
+        expectedMetaData(md, 1, Long.class.getName(), "JdbcLong", "Keyspace1", "1", Types.BIGINT, LongType.class.getSimpleName(), true, false);
+        expectedMetaData(md, 2, Long.class.getName(), "JdbcLong", "Keyspace1", "2", Types.BIGINT, LongType.class.getSimpleName(), true, false);
         
         CassandraResultSetMetaData cmd = md.unwrap(CassandraResultSetMetaData.class);
         for (int i = 0; i < md.getColumnCount(); i++)
             expectedMetaData(
-                    cmd, i,
+                    cmd, i+1,
                     Long.class.getName(), Types.BIGINT, LongType.class.getSimpleName(), true, false,
                     Long.class.getName(), Types.BIGINT, LongType.class.getSimpleName(), true, false);
     }
@@ -173,21 +173,21 @@ public class JdbcDriverTest extends Embe
         
         ResultSetMetaData md = rs0.getMetaData();
         assert md.getColumnCount() == 2;
-        expectedMetaData(md, 0, String.class.getName(), "JdbcAscii", "Keyspace1", "a", Types.VARCHAR, AsciiType.class.getSimpleName(), false, true);
-        expectedMetaData(md, 1, String.class.getName(), "JdbcAscii", "Keyspace1", "b", Types.VARCHAR, AsciiType.class.getSimpleName(), false, true);
+        expectedMetaData(md, 1, String.class.getName(), "JdbcAscii", "Keyspace1", "a", Types.VARCHAR, AsciiType.class.getSimpleName(), false, true);
+        expectedMetaData(md, 2, String.class.getName(), "JdbcAscii", "Keyspace1", "b", Types.VARCHAR, AsciiType.class.getSimpleName(), false, true);
         md = rs1.getMetaData();
         assert md.getColumnCount() == 2;
-        expectedMetaData(md, 0, String.class.getName(), "JdbcUtf8", "Keyspace1", "a", Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true);
-        expectedMetaData(md, 1, String.class.getName(), "JdbcUtf8", "Keyspace1", "b", Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true);
+        expectedMetaData(md, 1, String.class.getName(), "JdbcUtf8", "Keyspace1", "a", Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true);
+        expectedMetaData(md, 2, String.class.getName(), "JdbcUtf8", "Keyspace1", "b", Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true);
         
         CassandraResultSetMetaData cmd0 = rs0.getMetaData().unwrap(CassandraResultSetMetaData.class);
         CassandraResultSetMetaData cmd1 = rs1.getMetaData().unwrap(CassandraResultSetMetaData.class);
         for (int i = 0; i < 2; i++)
         {
-            expectedMetaData(cmd0, i,
+            expectedMetaData(cmd0, i+1,
                     String.class.getName(), Types.VARCHAR, AsciiType.class.getSimpleName(), false, true,
                     String.class.getName(), Types.VARCHAR, AsciiType.class.getSimpleName(), false, true);
-            expectedMetaData(cmd1, i,
+            expectedMetaData(cmd1, i+1,
                     String.class.getName(), Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true,
                     String.class.getName(), Types.VARCHAR, UTF8Type.class.getSimpleName(), false, true);
             
@@ -219,12 +219,12 @@ public class JdbcDriverTest extends Embe
         assert Arrays.equals(bb, rs.getBytes(FBUtilities.bytesToHex(b)));
         ResultSetMetaData md = rs.getMetaData();
         assert md.getColumnCount() == 2;
-        expectedMetaData(md, 0, ByteBuffer.class.getName(), "JdbcBytes", "Keyspace1", FBUtilities.bytesToHex(a), Types.BINARY, BytesType.class.getSimpleName(), false, false);
-        expectedMetaData(md, 1, ByteBuffer.class.getName(), "JdbcBytes", "Keyspace1", FBUtilities.bytesToHex(b), Types.BINARY, BytesType.class.getSimpleName(), false, false);
+        expectedMetaData(md, 1, ByteBuffer.class.getName(), "JdbcBytes", "Keyspace1", FBUtilities.bytesToHex(a), Types.BINARY, BytesType.class.getSimpleName(), false, false);
+        expectedMetaData(md, 2, ByteBuffer.class.getName(), "JdbcBytes", "Keyspace1", FBUtilities.bytesToHex(b), Types.BINARY, BytesType.class.getSimpleName(), false, false);
         
         CassandraResultSetMetaData cmd = md.unwrap(CassandraResultSetMetaData.class);
         for (int i = 0; i < md.getColumnCount(); i++)
-            expectedMetaData(cmd, 0,
+            expectedMetaData(cmd, i+1,
                     ByteBuffer.class.getName(), Types.BINARY, BytesType.class.getSimpleName(), false, false,
                     ByteBuffer.class.getName(), Types.BINARY, BytesType.class.getSimpleName(), false, false);
     }