diff --git a/.github/workflows/broken_links_checker.yml b/.github/workflows/broken_links_checker.yml
index ee8df76..5b14f64 100644
--- a/.github/workflows/broken_links_checker.yml
+++ b/.github/workflows/broken_links_checker.yml
@@ -23,7 +23,7 @@ jobs:
steps:
- {
id: checkout,
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
}
- id: configure-broken-links-checker
name: Configure broken links checker
diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml
index cc82473..0103844 100644
--- a/.github/workflows/ci-build.yml
+++ b/.github/workflows/ci-build.yml
@@ -50,7 +50,7 @@ jobs:
sudo rm -rf /usr/share/dotnet
- name: Checkout the repository
id: checkout
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
with: {
fetch-depth: 0
}
@@ -68,7 +68,7 @@ jobs:
server-password: OSSINDEX_API_TOKEN
- name: Cache SonarCloud packages
id: cache-sonar
- uses: actions/cache@v4
+ uses: actions/cache@v5
with: {
path: ~/.sonar/cache,
key: '${{ runner.os }}-sonar',
@@ -111,7 +111,7 @@ jobs:
}
- name: Upload artifacts
id: upload-artifacts
- uses: actions/upload-artifact@v4
+ uses: actions/upload-artifact@v6
with: {
name: 'artifacts-exasol-${{ matrix.exasol_db_version }}',
path: '${{ steps.build-pk-verify.outputs.release-artifacts }}',
@@ -150,7 +150,7 @@ jobs:
steps:
- name: Checkout the repository
id: checkout
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
with: {
fetch-depth: 0
}
@@ -192,7 +192,7 @@ jobs:
steps:
- name: Checkout the repository
id: checkout
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
with: {
fetch-depth: 0
}
diff --git a/.github/workflows/dependencies_check.yml b/.github/workflows/dependencies_check.yml
index b0877fc..eaf24e7 100644
--- a/.github/workflows/dependencies_check.yml
+++ b/.github/workflows/dependencies_check.yml
@@ -28,7 +28,7 @@ jobs:
- {
name: Checkout,
id: checkout,
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
}
- name: Set up JDKs
id: setup-jdks
@@ -55,7 +55,7 @@ jobs:
}
- name: Create GitHub Issues
id: create-security-issues
- uses: exasol/python-toolbox/.github/actions/security-issues@1.9.0
+ uses: exasol/python-toolbox/.github/actions/security-issues@4.0.1
with: {
format: maven,
command: cat ossindex-report.json,
diff --git a/.github/workflows/dependencies_update.yml b/.github/workflows/dependencies_update.yml
index 2ba2785..aa849a6 100644
--- a/.github/workflows/dependencies_update.yml
+++ b/.github/workflows/dependencies_update.yml
@@ -34,7 +34,7 @@ jobs:
cancel-in-progress: false
}
steps:
- - uses: actions/checkout@v5
+ - uses: actions/checkout@v6
id: checkout
with: {
fetch-depth: 0
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index dbc1ea2..e411dc4 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -75,7 +75,7 @@ jobs:
steps:
- name: Checkout the repository
id: checkout
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
with: {
fetch-depth: 0
}
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
index 7644ed3..f5f6a72 100644
--- a/.settings/org.eclipse.jdt.core.prefs
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -122,8 +122,10 @@ org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.processAnnotations=disabled
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=11
+org.eclipse.jdt.core.formatter.align_arrows_in_switch_on_columns=false
org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_selector_in_method_invocation_on_expression_first_line=false
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
org.eclipse.jdt.core.formatter.align_with_spaces=false
@@ -151,6 +153,8 @@ org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_arrow=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_colon=0
org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
@@ -159,6 +163,7 @@ org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_permitted_types_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_record_components=16
org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
@@ -169,6 +174,7 @@ org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_switch_case_with_arrow=0
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_type_annotations=0
@@ -194,6 +200,7 @@ org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end
org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case_after_arrow=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
@@ -213,6 +220,7 @@ org.eclipse.jdt.core.formatter.comment.format_header=false
org.eclipse.jdt.core.formatter.comment.format_html=true
org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_markdown_comments=true
org.eclipse.jdt.core.formatter.comment.format_source_code=true
org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
@@ -220,7 +228,8 @@ org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=120
+org.eclipse.jdt.core.formatter.comment.javadoc_do_not_separate_block_tags=false
+org.eclipse.jdt.core.formatter.comment.line_length=160
org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
@@ -292,6 +301,7 @@ org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arg
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_permitted_types=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
@@ -383,6 +393,7 @@ org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_ar
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_permitted_types=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
@@ -446,7 +457,8 @@ org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_line_comments=false
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
org.eclipse.jdt.core.formatter.join_wrapped_lines=false
org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
@@ -466,9 +478,11 @@ org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_switch_body_block_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_switch_case_with_arrow_on_one_line=one_line_never
org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
+org.eclipse.jdt.core.formatter.lineSplit=160
org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
@@ -506,5 +520,6 @@ org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
+org.eclipse.jdt.core.formatter.wrap_before_switch_case_arrow_operator=false
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/.settings/org.eclipse.jdt.ui.prefs b/.settings/org.eclipse.jdt.ui.prefs
index 54d02ac..14b7a65 100644
--- a/.settings/org.eclipse.jdt.ui.prefs
+++ b/.settings/org.eclipse.jdt.ui.prefs
@@ -61,7 +61,7 @@ cleanup_settings_version=2
eclipse.preferences.version=1
editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
formatter_profile=_Exasol
-formatter_settings_version=21
+formatter_settings_version=23
org.eclipse.jdt.ui.ignorelowercasenames=true
org.eclipse.jdt.ui.importorder=java;javax;org;com;
org.eclipse.jdt.ui.ondemandthreshold=3
diff --git a/dependencies.md b/dependencies.md
index 89d950d..57719c8 100644
--- a/dependencies.md
+++ b/dependencies.md
@@ -37,7 +37,7 @@
| [Apache Maven Artifact Plugin][29] | [Apache-2.0][13] |
| [Apache Maven Deploy Plugin][30] | [Apache-2.0][13] |
| [Apache Maven GPG Plugin][31] | [Apache-2.0][13] |
-| [Apache Maven Source Plugin][32] | [Apache License, Version 2.0][13] |
+| [Apache Maven Source Plugin][32] | [Apache-2.0][13] |
| [Apache Maven Javadoc Plugin][33] | [Apache-2.0][13] |
| [Central Publishing Maven Plugin][34] | [The Apache License, Version 2.0][13] |
| [Maven Failsafe Plugin][35] | [Apache-2.0][13] |
@@ -64,7 +64,7 @@
[14]: https://maven.apache.org/plugins/maven-install-plugin/
[15]: https://maven.apache.org/plugins/maven-resources-plugin/
[16]: https://maven.apache.org/plugins/maven-site-plugin/
-[17]: http://docs.sonarqube.org/display/PLUG/Plugin+Library/sonar-scanner-maven/sonar-maven-plugin
+[17]: https://docs.sonarsource.com/sonarqube-server/latest/extension-guide/developing-a-plugin/plugin-basics/sonar-scanner-maven/sonar-maven-plugin/
[18]: http://www.gnu.org/licenses/lgpl.txt
[19]: https://maven.apache.org/plugins/maven-toolchains-plugin/
[20]: https://maven.apache.org/plugins/maven-compiler-plugin/
diff --git a/doc/changes/changelog.md b/doc/changes/changelog.md
index a552e93..05fb0ee 100644
--- a/doc/changes/changelog.md
+++ b/doc/changes/changelog.md
@@ -1,5 +1,6 @@
# Changes
+* [1.1.7](changes_1.1.7.md)
* [1.1.6](changes_1.1.6.md)
* [1.1.5](changes_1.1.5.md)
* [1.1.4](changes_1.1.4.md)
diff --git a/doc/changes/changes_1.1.7.md b/doc/changes/changes_1.1.7.md
new file mode 100644
index 0000000..ac63b24
--- /dev/null
+++ b/doc/changes/changes_1.1.7.md
@@ -0,0 +1,26 @@
+# Database Cleaner 1.1.7, released 2026-??-??
+
+Code name:
+
+## Summary
+
+## Features
+
+* ISSUE_NUMBER: description
+
+## Dependency Updates
+
+### Test Dependency Updates
+
+* Updated `com.exasol:exasol-testcontainers:7.2.0` to `7.2.2`
+
+### Plugin Dependency Updates
+
+* Updated `com.exasol:error-code-crawler-maven-plugin:2.0.5` to `2.0.6`
+* Updated `com.exasol:project-keeper-maven-plugin:5.4.3` to `5.4.6`
+* Updated `org.apache.maven.plugins:maven-compiler-plugin:3.14.1` to `3.15.0`
+* Updated `org.apache.maven.plugins:maven-resources-plugin:3.3.1` to `3.4.0`
+* Updated `org.apache.maven.plugins:maven-source-plugin:3.2.1` to `3.4.0`
+* Updated `org.codehaus.mojo:versions-maven-plugin:2.19.1` to `2.21.0`
+* Updated `org.sonarsource.scanner.maven:sonar-maven-plugin:5.2.0.4988` to `5.5.0.6356`
+* Updated `org.sonatype.central:central-publishing-maven-plugin:0.9.0` to `0.10.0`
diff --git a/pk_generated_parent.pom b/pk_generated_parent.pom
index 91547bd..e3fd4ed 100644
--- a/pk_generated_parent.pom
+++ b/pk_generated_parent.pom
@@ -3,7 +3,7 @@
4.0.0
com.exasol
database-cleaner-generated-parent
- 1.1.6
+ 1.1.7
pom
UTF-8
@@ -55,7 +55,7 @@
org.apache.maven.plugins
maven-resources-plugin
- 3.3.1
+ 3.4.0
org.apache.maven.plugins
@@ -65,7 +65,7 @@
org.sonarsource.scanner.maven
sonar-maven-plugin
- 5.2.0.4988
+ 5.5.0.6356
org.apache.maven.plugins
@@ -89,7 +89,7 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.14.1
+ 3.15.0
${java.version}
${java.version}
@@ -170,16 +170,18 @@
maven-surefire-plugin
3.5.4
-
- -Djava.util.logging.config.file=src/test/resources/logging.properties ${argLine}
+ ${argLine}
+
+
+ src/test/resources/logging.properties
+
${test.excludeTags}
org.codehaus.mojo
versions-maven-plugin
- 2.19.1
+ 2.21.0
display-updates
@@ -276,10 +278,7 @@
org.apache.maven.plugins
maven-source-plugin
-
- 3.2.1
+ 3.4.0
attach-sources
@@ -314,7 +313,7 @@
org.sonatype.central
central-publishing-maven-plugin
- 0.9.0
+ 0.10.0
true
maven-central-portal
@@ -330,9 +329,11 @@
maven-failsafe-plugin
3.5.4
-
- -Djava.util.logging.config.file=src/test/resources/logging.properties ${argLine}
-
+ ${argLine}
+
+
+ src/test/resources/logging.properties
+
${test.excludeTags}
@@ -402,7 +403,7 @@
com.exasol
error-code-crawler-maven-plugin
- 2.0.5
+ 2.0.6
verify
diff --git a/pom.xml b/pom.xml
index ca8a5e2..21bd1ef 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
com.exasol
database-cleaner
- 1.1.6
+ 1.1.7
database-cleaner
Tool that deletes all objects in an Exasol database
https://github.com/exasol/database-cleaner/
@@ -17,7 +17,7 @@
com.exasol
exasol-testcontainers
- 7.2.0
+ 7.2.2
test
@@ -68,7 +68,7 @@
com.exasol
project-keeper-maven-plugin
- 5.4.3
+ 5.4.6
@@ -82,7 +82,7 @@
database-cleaner-generated-parent
com.exasol
- 1.1.6
+ 1.1.7
pk_generated_parent.pom
diff --git a/src/test/java/com/exasol/dbcleaner/ExasolDatabaseCleanerIT.java b/src/test/java/com/exasol/dbcleaner/ExasolDatabaseCleanerIT.java
index e1f6547..e78e692 100644
--- a/src/test/java/com/exasol/dbcleaner/ExasolDatabaseCleanerIT.java
+++ b/src/test/java/com/exasol/dbcleaner/ExasolDatabaseCleanerIT.java
@@ -85,6 +85,13 @@ void testPurgeFunctionWithNonImplicitSchemaName() throws SQLException {
assertDoesNotThrow(() -> createFunction("S1"));
}
+ @Test
+ void testPurgeSchemaOwnedByDifferentUser() throws SQLException {
+ createDbaUserWithSchemaAndTable();
+ cleaner.cleanDatabase();
+ assertDoesNotThrow(this::createDbaUserWithSchemaAndTable);
+ }
+
private void createFunction(final String schemaName) throws SQLException {
statement.executeUpdate("CREATE SCHEMA " + schemaName + ";");
statement.executeUpdate("CREATE FUNCTION " + schemaName
@@ -110,4 +117,17 @@ private void createTable() throws SQLException {
private void createConnection() throws SQLException {
statement.executeUpdate("CREATE CONNECTION exa_connection TO '192.168.6.11:8563';");
}
+
+ private void createDbaUserWithSchemaAndTable() throws SQLException {
+ statement.executeUpdate("CREATE USER other_user IDENTIFIED BY \"h12_xhz\"");
+ statement.executeUpdate("GRANT DBA TO other_user");
+ try (Statement otherStatement =
+ CONTAINER.createConnectionForUser("other_user", "h12_xhz")
+ .createStatement()) {
+ otherStatement.executeUpdate("CREATE SCHEMA OTHER_SCHEMA;");
+ otherStatement.executeUpdate(
+ "CREATE TABLE OTHER_SCHEMA.T1 (ID INT);");
+ }
+ }
+
}