This is an automated email from the ASF dual-hosted git repository.
mcgilman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/master by this push:
new 08d2e69 Revert "NIFI-6244: Provide default ORDER BY clause in MSSQL
adapters"
08d2e69 is described below
commit 08d2e698788e47fb11435ab2bcd863563ca72eb7
Author: Matthew Burgess <[email protected]>
AuthorDate: Mon Jun 3 15:12:36 2019 -0400
Revert "NIFI-6244: Provide default ORDER BY clause in MSSQL adapters"
This reverts commit 7fc49c2cb80ce765afd940d1e4209a8677e5d3f2.
This closes #3512
---
.../processors/standard/db/impl/MSSQL2008DatabaseAdapter.java | 9 ++-------
.../nifi/processors/standard/db/impl/MSSQLDatabaseAdapter.java | 3 +--
.../standard/db/impl/TestMSSQL2008DatabaseAdapter.java | 8 --------
.../processors/standard/db/impl/TestMSSQLDatabaseAdapter.java | 6 ++----
4 files changed, 5 insertions(+), 21 deletions(-)
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQL2008DatabaseAdapter.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQL2008DatabaseAdapter.java
index fed4dfa..610b34d 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQL2008DatabaseAdapter.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQL2008DatabaseAdapter.java
@@ -65,14 +65,9 @@ public class MSSQL2008DatabaseAdapter extends
MSSQLDatabaseAdapter {
query.append(columnNames);
}
- if (limit != null && offset != null && !useColumnForPartitioning) {
+ if (limit != null && offset != null && orderByClause != null &&
!useColumnForPartitioning) {
query.append(", ROW_NUMBER() OVER(ORDER BY ");
- if (orderByClause != null && !orderByClause.isEmpty()) {
- query.append(orderByClause);
- } else {
- // Add a default ORDER BY clause using the newid() function
- query.append("newid()");
- }
+ query.append(orderByClause);
query.append(" asc) rnum");
}
query.append(" FROM ");
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQLDatabaseAdapter.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQLDatabaseAdapter.java
index 8740302..ec276fc 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQLDatabaseAdapter.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/db/impl/MSSQLDatabaseAdapter.java
@@ -83,8 +83,7 @@ public class MSSQLDatabaseAdapter implements DatabaseAdapter {
if (StringUtils.isEmpty(columnForPartitioning)) {
if (offset != null && limit != null && limit > 0) {
if (StringUtils.isEmpty(orderByClause)) {
- // Add a default ORDER BY clause using the newid() function
- query.append(" ORDER BY newid()");
+ throw new IllegalArgumentException("Order by clause cannot
be null or empty when using row paging");
}
query.append(" OFFSET ");
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQL2008DatabaseAdapter.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQL2008DatabaseAdapter.java
index 6cc4eb3..912a720 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQL2008DatabaseAdapter.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQL2008DatabaseAdapter.java
@@ -48,14 +48,6 @@ public class TestMSSQL2008DatabaseAdapter {
}
@Test
- public void testPagingNoOrderBy() throws Exception {
- String sql1 = db.getSelectStatement("database.tablename",
"some(set),of(columns),that,might,contain,methods,a.*","",null,10L,0L);
- String expected1 = "SELECT * FROM (SELECT TOP 10
some(set),of(columns),that,might,contain,methods,a.*, ROW_NUMBER() OVER(ORDER
BY newid() asc) rnum "
- + "FROM database.tablename) A WHERE rnum > 0 AND rnum <= 10";
- Assert.assertEquals(sql1,expected1);
- }
-
- @Test
public void testTOPQuery() throws Exception {
String sql = db.getSelectStatement("database.tablename",
"some(set),of(columns),that,might,contain,methods,a.*", "", "", 100L, null);
String expected1 = "SELECT TOP 100
some(set),of(columns),that,might,contain,methods,a.* FROM database.tablename";
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQLDatabaseAdapter.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQLDatabaseAdapter.java
index c760052..de33753 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQLDatabaseAdapter.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/db/impl/TestMSSQLDatabaseAdapter.java
@@ -47,11 +47,9 @@ public class TestMSSQLDatabaseAdapter {
db.getSelectStatement("",
"some(set),of(columns),that,might,contain,methods,a.*","","",null,null);
}
- @Test
+ @Test(expected = IllegalArgumentException.class)
public void testPagingNoOrderBy() throws Exception {
- String sql1 = db.getSelectStatement("database.tablename",
"some(set),of(columns),that,might,contain,methods,a.*","","",10L,0L);
- String expected1 = "SELECT
some(set),of(columns),that,might,contain,methods,a.* FROM database.tablename
ORDER BY newid() OFFSET 0 ROWS FETCH NEXT 10 ROWS ONLY";
- Assert.assertEquals(sql1,expected1);
+ db.getSelectStatement("database.tablename",
"some(set),of(columns),that,might,contain,methods,a.*","","",10L,0L);
}
@Test