diff options
author | Simon Brandhof <simon.brandhof@sonarsource.com> | 2014-12-02 10:08:34 +0100 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@sonarsource.com> | 2014-12-02 10:08:34 +0100 |
commit | 984f87ae7fcb870dfdb33a9bf71bab456757aefa (patch) | |
tree | 0b68ddda8484fc808065d70ca4ad9de6df73295e /sonar-core | |
parent | db4c7282d6f6e6b20f7113dd2d584a9300470cc3 (diff) | |
download | sonarqube-984f87ae7fcb870dfdb33a9bf71bab456757aefa.tar.gz sonarqube-984f87ae7fcb870dfdb33a9bf71bab456757aefa.zip |
Scroll FILE_SOURCES rows one by one
Diffstat (limited to 'sonar-core')
5 files changed, 20 insertions, 0 deletions
diff --git a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/AbstractDialect.java b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/AbstractDialect.java index 0ba44347446..f8225b142be 100644 --- a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/AbstractDialect.java +++ b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/AbstractDialect.java @@ -82,4 +82,9 @@ abstract class AbstractDialect implements Dialect { public int getScrollDefaultFetchSize() { return 200; } + + @Override + public int getScrollSingleRowFetchSize() { + return 1; + } } diff --git a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/Dialect.java b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/Dialect.java index ffaae93959f..a15fbbcc261 100644 --- a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/Dialect.java +++ b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/Dialect.java @@ -79,4 +79,12 @@ public interface Dialect { * @since 5.0 */ int getScrollDefaultFetchSize(); + + /** + * Fetch size to scroll one row at a time. It sounds strange because obviously value is 1 in most cases, + * but it's different on MySQL... + * + * @since 5.0 + */ + int getScrollSingleRowFetchSize(); } diff --git a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/MySql.java b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/MySql.java index ec740155b9f..47b1c3d3bbc 100644 --- a/sonar-core/src/main/java/org/sonar/core/persistence/dialect/MySql.java +++ b/sonar-core/src/main/java/org/sonar/core/persistence/dialect/MySql.java @@ -60,4 +60,9 @@ public class MySql extends AbstractDialect { public int getScrollDefaultFetchSize() { return Integer.MIN_VALUE; } + + @Override + public int getScrollSingleRowFetchSize() { + return Integer.MIN_VALUE; + } } diff --git a/sonar-core/src/test/java/org/sonar/core/persistence/dialect/MySqlTest.java b/sonar-core/src/test/java/org/sonar/core/persistence/dialect/MySqlTest.java index eb144f1e715..fa8c77437ba 100644 --- a/sonar-core/src/test/java/org/sonar/core/persistence/dialect/MySqlTest.java +++ b/sonar-core/src/test/java/org/sonar/core/persistence/dialect/MySqlTest.java @@ -53,5 +53,6 @@ public class MySqlTest { @Test public void testFetchSizeForScrolling() throws Exception { assertThat(mySql.getScrollDefaultFetchSize()).isEqualTo(Integer.MIN_VALUE); + assertThat(mySql.getScrollSingleRowFetchSize()).isEqualTo(Integer.MIN_VALUE); } } diff --git a/sonar-core/src/test/java/org/sonar/core/persistence/dialect/OracleTest.java b/sonar-core/src/test/java/org/sonar/core/persistence/dialect/OracleTest.java index 28d61afa1f8..c653d8111c1 100644 --- a/sonar-core/src/test/java/org/sonar/core/persistence/dialect/OracleTest.java +++ b/sonar-core/src/test/java/org/sonar/core/persistence/dialect/OracleTest.java @@ -50,5 +50,6 @@ public class OracleTest { @Test public void testFetchSizeForScrolling() throws Exception { assertThat(dialect.getScrollDefaultFetchSize()).isEqualTo(200); + assertThat(dialect.getScrollSingleRowFetchSize()).isEqualTo(1); } } |