summaryrefslogtreecommitdiff
path: root/migrate/changeset
Commit message (Collapse)AuthorAgeFilesLines
* Retire github mirror, repo moved to opendevHEADmasterJim Rollenhagen2019-09-2613-2229/+0
|
* Merge "Import MutableMapping from the correct Python module"Zuul2019-01-212-2/+2
|\
| * Import MutableMapping from the correct Python moduleChih-Hsuan Yen2019-01-152-2/+2
| | | | | | | | Change-Id: Ifb66fe22bc607b13f5c4756d3b93f5e8206c33e3
* | Merge "Don't use deprecated / non-functional "force" parameter"Zuul2019-01-216-34/+14
|\ \
| * | Don't use deprecated / non-functional "force" parameterMike Bayer2019-01-186-34/+14
| |/ | | | | | | | | | | | | | | | | | | | | The "force" parameter in SQLAlchemy IdentifierPreparer.quote() has been a no-op since 0.9 in https://github.com/sqlalchemy/sqlalchemy/commit/031ef0807838842a827135dbace760da7aec215e, which was six years ago. In SQLAlchemy 1.3 this parameter will be removed entirely. Bump requirements to 0.9 series here and remove usage of the "force" flag. Change-Id: I4492df2e7d2075fefbf13d6782de11f7d402f6b8
* | Use legacy_alter_table ON in sqlite recreate_tableCorey Bryant2019-01-151-0/+9
|/ | | | | | | | | | | | | | | | | | | | | Use "PRAGMA legacy_alter_table = ON" with sqlite >= 3.26 when using "ALTER TABLE RENAME TO migration_tmp" to maintain legacy behavior. As of sqlite version 3.26, when a table is renamed using "ALTER TABLE RENAME TO", REFERENCES clauses that refer to the table will be updated. To maintain legacy (3.24 and earlier) behavior, "PRAGMA legacy_alter_table" can be set to true and "PRAGMA foreign_keys" can be set to false. [1] [1] https://www.sqlite.org/src/info/ae9638e9c0ad0c36 Thanks to "László Böszörményi (GCS)" <gcs@debian.org> for providing the code for this patch, which has since been slightly modified. Change-Id: I539988ab2ad6df6c8f423ecec15364ad8fcc7267 Closes-Bug: 1807262
* Set autoincrement to False when modifying to non-Integer datatypeMike Bayer2016-10-201-2/+8
| | | | | | | | | | | | Starting in SQLAlchemy 1.1, the rules for when "autoincrement=True" may be set on a column are more strict. The migrate tests are testing the alteration of a column from Integer to String and then regenerating; this means we need to set autoincrement to False as well. A related issue in SQLAlchemy 1.1 is also being fixed (see https://bitbucket.org/zzzeek/sqlalchemy/issues/3835/), however this fix is not needed in order for the tests to pass here. Change-Id: Ibd3a75fff13312411df87e17b6e5764865d69728
* Update tests and reqs for SQLA 1.0Mike Bayer2015-07-012-0/+13
| | | | | | | Lift the requirements to support SQLAlchemy 1.0. Two tests were calling upon revised APIs and required adjustment. Change-Id: Ic91a91bb3c915027b522eace302f2ed074233294
* Fix ibmdb2 index name handling0.9.6Qin Zhao2015-03-161-6/+30
| | | | | | | | | | | | | The ibmdb2 code calls _index_identifier() when it handles index name. This method only exists from sqlalchemy 0.6.5 to 0.7.*. Nova code change https://review.openstack.org/#/c/153123/ attempts to drop a db constraint and it fails to sync nova db with sqlalchemy 0.9.8 running against db2. Need to let ibmdb2 code identify sqlalchemy version and call the correct method to handle index name. Closes-Bug: 1428477 Change-Id: Ie6333f9cea0209c1ea290356873a1a1bcf409bed
* allow dropping fkeys with sqliteMatt Riedemann2015-02-201-17/+36
| | | | | | | | | | | | | This implements the ability to drop foreign keys with sqlite. It's basically the same implementation used for dropping unique constraints so the common code is refactored. The existing FKey test that was skipping sqlite is no longer skipped to show this works. Change-Id: Idaaf4229e34af4c21c3bcead4b4e22491d24238e Closes-Bug: #1423955
* Use native sqlalchemy 0.9 quote attribute with ibmdb2Rahul Priyadarshi2015-01-091-2/+5
| | | | | | | | | | | Commit 8d6ce64cd08c0598963a92844495782997cd59f3 started using the native quote attribute built into sqlalchemy 0.9 but missed the changes to the ibmdb2 changeset, so alter table statements fail for DB2 on sqlalchemy >= 0.9 (tested against 0.9.8). This fixes the same issue for the ibmdb2 changeset. Change-Id: Ia3fa6c3090b5eab29ed7746f4795d502990b8a2f
* Don't add warnings filter on importBrant Knudson2015-01-081-3/+0
| | | | | | | | | The changeset module was adding a warnings filter on import. This affects all applications that wind up importing it. A library shouldn't modify the warnings filters unless asked. Closes-Bug: #1407736 Change-Id: I893f8be48efd3d3642e977ab587c9e6dc867258b
* Fix ibmdb2 unique constraint handling for sqlalchemy 0.9Matt Riedemann2014-08-041-3/+3
| | | | | | | | | | | | | | | | | | | The ibmdb2 unique constraint code was accessing the private _all_cols member var in iterating over columns which breaks in sqlalchemy 0.9 so fix up the code to not use internals of sqlalchemy. UniqueConstraint in sqlalchemy extends ColumnCollectionConstraint which implements __iter__ to generate a tuple of the columns in the constraint, so we just iterate over the constraint as the fix. This is based on a patch from Rahul Priyadarshi in ibm-db-sa issue 158: https://code.google.com/p/ibm-db/issues/detail?id=158 Co-Authored-By: Rahul Priyadarshi <rahul.priyadarshi@in.ibm.com> Change-Id: I0f06f6314c382e83573d762abe5981db0a02a83a
* Merge "Fix 3 files with Windows line endings to Unix line endings."Jenkins2014-07-221-313/+313
|\
| * Fix 3 files with Windows line endings to Unix line endings.David Ripton2014-02-271-313/+313
| | | | | | | | Change-Id: Iadc8e5d195bf998a117da4b7102a8955e238dd4e
* | Merge "Move patch from oslo to drop unique constraints with sqlite"0.9.1Jenkins2014-05-051-3/+48
|\ \
| * | Move patch from oslo to drop unique constraints with sqliteMatt Riedemann2014-04-151-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | oslo-incubator commit 3f503faac for making sqlite work with dropping unique constraints in database migrations. This was made in oslo-incubator since at the time sqlalchemy-migrate was not in stackforge. Now that we can update sqlalchemy-migrate, move the patch over from oslo. This change also adds the support for the case that a unique constraint is dropped because the column it's on is dropped. Note that there are already unit tests that cover dropping a unique constraint directly and implicitly via dropping a column that is in the unique constraint. Related-Bug: #1307266 Change-Id: I5ee8082a83aebf66f6e1dacb093ed79e13f73f5e
* | | Port to Python3Cyril Roelandt2014-04-093-12/+58
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Brief summary of the modifications: * Use six for compatibility with both Python 2 and 3; * Replace UserDict.DictMixin with collections.MutableMapping; * Fix relative imports; * Use test-requirements.txt for requirements that are common to both Python 2 and 3, and test-requirements-py{2,3}.txt for version-specific requirements; * Miscellaneous fixes. * Use a specific test_db_py3.cfg file for Python 3, that only runs tests on sqlite. Thanks to Victor Stinner who co-wrote this patch. Change-Id: Ia6dc536c39d274924c21fd5bb619e8e5721e04c4 Co-Authored-By: Victor Stinner <victor.stinner@enovance.com>
* | Merge "Eradicate trailing whitespace"Jenkins2014-03-292-4/+4
|\ \
| * | Eradicate trailing whitespaceDavid Ripton2014-02-264-22/+22
| |/ | | | | | | | | | | | | | | | | | | Remove all trailing spaces and tabs in every file in the project. People have editors configured to do this, which causes them to accidentally make little whitespace changes in unrelated commits, which makes those commits harder to review. Better to fix them all at once. Change-Id: I17d89f55f41d8599e0ab1a31f646cd161289703e
* | Replace AbstractType by TypeEngineThomas Goirand2014-03-051-1/+1
| | | | | | | | | | | | | | AbstractType not longer exists in the class hierarchy for types. TypeEngine was its direct descendant, so use that instead. Change-Id: Idbfaee4b0d3acbc4795913ddf2ab4e1c9b6d065c
* | Use native quote attribute introduced in sqla 0.9Thomas Goirand2014-03-054-24/+43
| | | | | | | | | | | | | | | | | | In SQLA 0.9 there is now a native .quote attribute on many objects. Conditionally use this instead of the old method if the attribute exists, to remove deprecation messages (and prepare for when the other way will be fully removed). Change-Id: I3c5fada13e044c1c4102acc0455226ce1524f2e2
* | Merge "UniqueConstraint named and escaped twice"Jenkins2014-03-051-1/+1
|\ \
| * | UniqueConstraint named and escaped twiceThomas Goirand2014-03-021-1/+1
| |/ | | | | | | | | | | | | | | This patch fixes get_constraint_name in the ANSIConstraintCommon class. It's part of the fixes needed for SQLA 0.9.x compat. Change-Id: I1f1648af48f459bd18f99bb42fa9a272186fb37d
* | Conditionally import ibmdb2/ibm_db_saMatt Riedemann2014-03-041-3/+11
|/ | | | | | | | | | Since ibm_db_sa is not part of sqlalchemy, we need to handle the conditional import of the module in visitor.py so we don't get an ImportError if ibm_db_sa is not available. Closes-Bug: #1287229 Change-Id: Ida070b629ce3b9be727ae49973bb6a71543c1dcf
* Add DB2 10.5 SupportMatt Riedemann2014-02-173-1/+317
| | | | | | | | | | | | | | | | | | This patch adds the initial support for DB2 10.5 to migrate. It includes: 1. The dialect implementation for DB2. 2. The dialect registration with the visitor. 3. Code to parse the engine name in version.py. 4. A new dependency on ibm_db_sa in test-requirements.txt. 5. A connection string in test_db.cfg for ibm_db_sa. Part of blueprint add-db2-support Co-authored-by: Sheng Bo Hou <sbhou@cn.ibm.com> Co-authored-by: Thuy Christenson <thuy@us.ibm.com> Co-authored-by: Rahul Priyadarshi <rahul.priyadarshi@in.ibm.com> Change-Id: I745ec615487b1b06c5d1a09ea316f376d66ee4c0
* Fix dropping of indexed columns in sqlite/sa08Roman Podolyaka2013-10-182-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Version 0.8 of SQLAlchemy added support of indexes on expressions in addition to plain table columns, which changed the way indexes are created. This broke support of dropping columns of composite indexes for SQLite: due to limitations of ALTER in SQLite every time a column is dropped, we recreate the whole table without the given column; if a column is a part of a composite index, we change the index definition to omit that column and then indexes are recreated too. SQLAlchemy versions starting from 0.8 no more pay attention to 'columns' attribute of Index instances when generating DDL for indexes, so when one of columns of a composite index is dropped, we try to create a new index on the column that doesn't exist anymore, which of course fails. Closes-Bug: #1241038 Change-Id: I777b8ce36e36f49bfb0889908811a063cf1a527b
* decouple index name generation from sqlalchemy versionPádraig Brady2013-09-231-15/+19
| | | | | | | | | | In commit 0.7.2-16-gc670d1d the _index_identifier() implementation was copied from sqlalchemy, as that function was renamed in sqlalchemy 0.8. Instead handle call the renamed function when appropriate, to decouple ourselves from the sqlalchemy implementation. Change-Id: I97b22c20d96758fc5b6bd55318218edb26c5b5d0
* added bugfixes for 0.8Josip Delic2013-07-111-0/+14
|
* merge e5bd2821eea8 from https://code.google.com/r/alyazdi-patches/Jan Dittberner2011-10-281-1/+1
|\ | | | | (fixes issue 125)
| * Fix for issue #125, create the table on the same connection as the ALTER and ↵al.yazdi@gmail.com2011-10-261-1/+1
| | | | | | | | INSERT happen
* | drop SQLAlchemy < 0.6 compatibility codeJan Dittberner2011-10-289-161/+41
| |
* | fix SQLAlchemy 0.6.x compatibility of issue 128 patchJan Dittberner2011-10-281-1/+11
| |
* | fix issue 128: "table rename failure with sqlalchemy 0.7.x"markbmc@gmail.com2011-10-281-7/+1
|/
* fix column.create() properlyJan Dittberner2011-05-271-1/+4
|
* no special treatment for SQLA 0.7 required in migrate.changeset.ansisqlJan Dittberner2011-05-271-8/+4
|
* remove commented codeJan Dittberner2011-05-261-5/+0
|
* fix unit test for adding new columns with foreign keysJan Dittberner2011-05-261-3/+12
|
* use Table._columns to remove columns (addresses #112)Jan Dittberner2011-05-252-2/+6
| | | | | | - add SQLA_07 predicate in migrate/changeset/__init__.py - use Table._columns instead of Table.c when removing columns in migrate/changeset/schema.py
* Bring back alter_metadata on ColumnDelta: it seems intertwined with a lot of ↵Chris Withers2011-02-111-14/+38
| | | | | the tests. So, it's a private API now...
* try to get firebird stuff working with 0.6.6Chris Withers2011-02-101-1/+6
|
* remove the alter_metadata featureChris Withers2011-02-102-67/+24
|
* work around firebird's insistence that indexes and constraints are dropped ↵Chris Withers2011-02-101-7/+21
| | | | before columns that are references by them.
* fix sqlite column dropper now that the table is only modified after the ↵Chris Withers2011-02-101-0/+9
| | | | visitor is run
* Only alter the SA objects after running the visitor, so the visitor may inspectChris Withers2011-02-101-2/+1
|
* make migrate.changeset.constraint.ForeignKeyConstraint.autoname workJan Dittberner2010-11-091-3/+11
| | | with SQLAlchemy 0.5 and 0.6
* use _index_identifier instead of _validate_identifier ifJan Dittberner2010-11-091-5/+18
| | | | | _validate_identifier does not exist in migrate/changeset/ansisql.py remove executable bits from migrate/tests/fixture/warnings.py
* fix generation of foreign key constraint name inJan Dittberner2010-11-071-2/+2
| | | | | | | migrate.changeset.constraint.ForeignKeyConstraint.autoname use <table>_<firstcol>_fkey instead of <table>_<reftable>_fkey Fixes Issue 101
* Fix issue 94 - it was impossible to add a column with a non-unique index.chrisw2010-09-093-19/+25
| | | Also implement more functionality with unique and foreign key constrains for sqlite.
* implement column adding with foreign keys on sqlitechrisw2010-09-091-7/+19
|