Repository navigation
workshop: migration process error handling and CI workflow - #1
Merged
Merged
Conversation
… services; add integration tests documentation
…low; update PostgreSQLAdapter to use positional placeholders; enhance rollback logic in TransactionManager
…execute calls with PDO::exec for better control
…tion mode options; remove rollback command and related classes
…fication logic in MigrationExecutor and corresponding tests
… and related tests to ensure correct migration sequence based on foreign keys and dependencies
…lure; update SchemaOrder to return dependencies and add corresponding unit tests
- Added `syncSequences` and `reserveIds` methods to `AbstractAdapter` and respective adapters (MySQL, PostgreSQL, SQL Server) to handle ID generation during migrations. - Enhanced `MigrationExecutor` to manage ID offsets and ensure new IDs do not conflict with existing ones in the target database. - Updated `SchemaConfig` to include `references` for handling foreign key relationships during migrations. - Introduced tests for ID mapping and reservation to ensure correct behavior when migrating data into applications with existing records. - Improved error handling for orphaned references and ensured that migrations respect existing data constraints.
…eter limits; add tests for wide table inserts
…andle reseeding based on identity column values
…ic chunk size; add insertChunkSize method for parameter limit compliance
…ts for dead ID replacement and validation
…ance migration command options - Added `upsertClause` method to MySQLAdapter for handling upsert operations. - Removed legacy `batchUpsert` methods from MySQLAdapter, PostgreSQLAdapter, SQLiteAdapter, and SQLServerAdapter. - Introduced `batchUpsert` method in SQLServerAdapter using MERGE statement for efficient upsert operations. - Updated MigrateCommand to include an `--upsert` option for final sync before cutover. - Enhanced MigrationExecutor to support upsert operations, including UUID remapping for keys. - Added tests for upsert functionality, ensuring correct behavior for updates and inserts. - Created Uuid utility class for generating deterministic UUIDs based on source table and IDs.
…instructions; update log level configuration in MigrateCommand; improve StringTransformer operations handling; add tests for TransformPipeline behavior
- Updated SQL statements in IdMappingTest, MigrationExecutorTest, SchemaOrderTest, TextReferencesTest, and UuidKeysTest to use single quotes for string literals. - Changed assertions in various tests to utilize the new method signatures for better readability and consistency. - Added new tests in StrictTransformersTest and StrictValidationTest to ensure proper error handling for unknown transformers and validators. - Improved test coverage for validation and transformation processes in the migration framework.
…low with dependency range testing and changelog
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.