-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Queries containing lower case column names fail with case-sensitive database collation #4525
Comments
Decision: We decided that a dedicated CI with a case-sensitive database is unnecessary. Instead, we opted for tests that scan the SQL mapping files for lower-case usages. I duplicated the test for the webapps. It felt overkill to expose engine test-sources to the webapps just for abstracting the scan logic in a utility class. |
I wouldn't say it's unnecessary. It's a bit overkill, given we only officially support SQL Server with its default configuration, which uses the case-insensitive If a customer explicitly asks us to support SQL Server configured with collation |
@tasso94, I agree with your comment about the testing approach. I meant this when I said adding an extra CI is unnecessary. Thanks for giving more background information on why we won't add an extra CI now. 👍 |
Reopen to add tests for EE webapps. |
For the initial implementation, we decided not to cover the table names with tests and focus on the column names. |
Follow-up ticket to ensure table names are upper-case: #4591 |
Related to camunda/camunda-bpm-platform#4525 Backported commit c28764a0ad from the camunda-bpm-platform repository. Original author: Miklas Boskamp <[email protected]>
Environment (Required on creation)
7.20, 7.21, master.
Description (Required on creation; please attach any relevant screenshots, stacktraces, log files, etc. to the ticket)
There are two queries containing lower case column names. If they are run in a case-sensitive database, for instance SQL Server with
Latin1_General_100_CS_AS
collation, then the query fails.Steps to reproduce (Required on creation)
Latin1_General_100_CS_AS
collation.Observed Behavior (Required on creation)
Process definition search fails.
Expected behavior (Required on creation)
Process definition search works.
Root Cause (Required on prioritization)
The tables are created with upper case column names and these queries contain lower case column names.
By default databases are case insensitive, but if they are started with case-sensitive collation like SQL Server
Latin1_General_100_CS_AS
, then the database server can not find the column. (SQLServerException: Ungültiger Spaltenname "version_".
)Solution Ideas
Hints
Queries: https://github.com/search?q=repo%3Acamunda%2Fcamunda-bpm-platform+%2F%28%3F-i%29%5C.%5Ba-z_%5D*_%2F+language%3Axml&type=code
Links
Breakdown
Pull Requests
Dev2QA handover
The text was updated successfully, but these errors were encountered: