You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by kr...@apache.org on 2016/05/06 13:58:32 UTC
lucene-solr:branch_6x: SOLR-8184: Negative tests for JDBC Connection
String
Repository: lucene-solr
Updated Branches:
refs/heads/branch_6x ed1db6d20 -> 219ddbb99
SOLR-8184: Negative tests for JDBC Connection String
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/219ddbb9
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/219ddbb9
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/219ddbb9
Branch: refs/heads/branch_6x
Commit: 219ddbb998cf0e011c087e7a0629908f40dd0d5d
Parents: ed1db6d
Author: Kevin Risden <kr...@apache.org>
Authored: Fri May 6 08:39:00 2016 -0500
Committer: Kevin Risden <kr...@apache.org>
Committed: Fri May 6 08:58:13 2016 -0500
----------------------------------------------------------------------
solr/CHANGES.txt | 4 +++-
.../solr/client/solrj/io/sql/JdbcDriverTest.java | 6 ++++++
.../solr/client/solrj/io/sql/JdbcTest.java | 19 ++++++++++++++++++-
3 files changed, 27 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/219ddbb9/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 06ba91a..c92d5ac 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -222,10 +222,12 @@ Other Changes
* SOLR-9053: Upgrade commons-fileupload to 1.3.1, fixing a potential vulnerability (Jeff Field, Mike Drob via janhoy)
-* SOLR-9066 Make CountMetric return long instead of double (Kevin Risden)
+* SOLR-9066: Make CountMetric return long instead of double (Kevin Risden)
* SOLR-9065: Migrate SolrJ distributed tests to SolrCloudTestCase. (Alan Woodward)
+* SOLR-8184: Negative tests for JDBC Connection String (Susheel Kumar, Jason Gerlowski, Kevin Risden)
+
================== 6.0.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/219ddbb9/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcDriverTest.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcDriverTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcDriverTest.java
index 3b2d089..e9e262c 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcDriverTest.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcDriverTest.java
@@ -54,6 +54,12 @@ public class JdbcDriverTest extends SolrTestCaseJ4 {
Connection con = DriverManager.getConnection("jdbc:solr://", new Properties());
}
+ @Test(expected = SQLException.class)
+ public void testConnectionStringJumbled() throws Exception {
+ final String sampleZkHost="zoo1:9983/foo";
+ DriverManager.getConnection("solr:jdbc://" + sampleZkHost + "?collection=collection1", new Properties());
+ }
+
@Test
public void testProcessUrl() throws Exception {
DriverImpl driver = new DriverImpl();
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/219ddbb9/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcTest.java
----------------------------------------------------------------------
diff --git a/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcTest.java b/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcTest.java
index 1829c70..728a24b 100644
--- a/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcTest.java
+++ b/solr/solrj/src/test/org/apache/solr/client/solrj/io/sql/JdbcTest.java
@@ -22,6 +22,7 @@ import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
import java.sql.Statement;
import java.sql.Types;
import java.util.ArrayList;
@@ -398,7 +399,6 @@ public class JdbcTest extends SolrCloudTestCase {
@Test
public void testErrorPropagation() throws Exception {
-
//Test error propagation
Properties props = new Properties();
props.put("aggregationMode", "facet");
@@ -412,7 +412,24 @@ public class JdbcTest extends SolrCloudTestCase {
}
}
}
+ }
+ @Test
+ public void testSQLExceptionThrownWhenQueryAndConnUseDiffCollections() throws Exception {
+ String badCollection = COLLECTION + "bad";
+ String connectionString = "jdbc:solr://" + zkHost + "?collection=" + badCollection;
+ String sql = "select id, a_i, a_s, a_f from " + badCollection + " order by a_i desc limit 2";
+
+ //Bad connection string: wrong collection name
+ try(Connection connection = DriverManager.getConnection(connectionString)) {
+ try (Statement statement = connection.createStatement()) {
+ try (ResultSet ignored = statement.executeQuery(sql)) {
+ fail("Expected query against wrong collection to throw a SQLException.");
+ }
+ }
+ } catch (SQLException ignore) {
+ // Expected exception due to miss matched collection
+ }
}
@Test