-
Notifications
You must be signed in to change notification settings - Fork 25
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
Support MySQL 5.X as a target #988
Comments
My understanding here is that we need to just add a new set of queries that don't use CTEs for MySQL and then drill in the version of the database throughout the codebase so that we can know when to use the MySQL 5.7 queries |
Adding support in Run |
Possibly an opportunity for #996 |
Yep, I see what you mean by adding support in |
Regarding #996, I can take a look at that once I get this base functionality working. Then can refactor this so it applies to all templates for every dialect. |
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for go-sql-driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for go-sql-driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES DML statements, and expressions for default column values. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci). Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.0) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that edge cases for the conditional upsert query templates are covered. Adds MySQL 5.7 and 5.6 as a migration backfill cases for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes issues for failing tests on MySQL 5.7 related to numbers with trailing zeros and JSON normalization. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes issues for failing tests on MySQL 5.7 related to numbers with trailing zeros and JSON normalization. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes issues for failing tests on MySQL 5.7 related to numbers with trailing zeros and JSON normalization. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes issues for failing tests on MySQL 5.7 related to numbers with trailing zeros and JSON normalization. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
Updates various SQL queries, query templates, code, and tests across Replicator to not use unsupported features in older MySQL target versions like 5.7. These features include common table expressions (CTEs), VALUES syntax for temporary tables, and expressions for default column values. Fixes bugs that appear on older versions like MySQL geometry functions complaining about placeholder string arguments not being the correct type, and MySQL JSON functions translating YEAR columns to base64 formatted strings instead of just the year number string. Changes the default collation for Go-MySQL-Driver connections to older MySQL versions (< 8.0.1) to be latin1_swedish_ci, since older versions use it as the default collation instead of the default for the driver (utf8mb4_general_ci), and certain replicator queries fail if it is not set. Adds integration tests to ensure that more cases for the conditional upsert query templates are covered. Adds MySQL 5.7 as a migration backfill case for the testing matrix. Fixes issues for failing tests on MySQL 5.7 related to numbers with trailing zeros and JSON normalization. Fixes an issue where .gitignore ignores unintended directories. Resolves #988 Release Note: None
These older versions of MySQL don't support CTE's, which, at a minimum, prevents the schema-inspection queries from running. There may be other unknown-unknown's in terms of SQL workload changes.
The text was updated successfully, but these errors were encountered: