From d188366c3ddf6ac2b0e3863d068afd4254beba04 Mon Sep 17 00:00:00 2001 From: nathan-smit-1 Date: Wed, 19 Jan 2022 13:24:38 +0200 Subject: [PATCH] DBZ-4404 Added signal table support for Oracle 11G --- .../connector/oracle/OracleConnection.java | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/debezium-connector-oracle/src/main/java/io/debezium/connector/oracle/OracleConnection.java b/debezium-connector-oracle/src/main/java/io/debezium/connector/oracle/OracleConnection.java index b1db87af6..db408da9a 100644 --- a/debezium-connector-oracle/src/main/java/io/debezium/connector/oracle/OracleConnection.java +++ b/debezium-connector-oracle/src/main/java/io/debezium/connector/oracle/OracleConnection.java @@ -454,12 +454,23 @@ public String buildSelectWithRowLimits(TableId tableId, .append(" WHERE ") .append(condition.get()); } - sql - .append(" ORDER BY ") - .append(orderBy) - .append(" FETCH NEXT ") - .append(limit) - .append(" ROWS ONLY"); + if (getOracleVersion().getMajor() < 12) { + sql + .insert(0, " SELECT * FROM (") + .append(" ORDER BY ") + .append(orderBy) + .append(")") + .append(" WHERE ROWNUM <=") + .append(limit); + } + else { + sql + .append(" ORDER BY ") + .append(orderBy) + .append(" FETCH NEXT ") + .append(limit) + .append(" ROWS ONLY"); + } return sql.toString(); }