summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* use the stack to get the insert statement in on conflictticket_4074_11Mike Bayer2017-09-123-1/+35
| | | | | | | | | | Fixed bug in Postgresql :meth:`.postgresql.dml.Insert.on_conflict_do_update` which would prevent the insert statement from being used as a CTE, e.g. via :meth:`.Insert.cte`, within another statement. Change-Id: Ie20972a05e194290bc9d92819750845872949ecc Fixes: #4074 (cherry picked from commit 70516536107a44230762206342c51239c5d85417)
* Version 1.1.15 placeholderMike Bayer2017-09-052-1/+5
| | | | Change-Id: I81fd38694b19ee9dadaf89276dd4fe9bd6f67c94
* - 1.1.14rel_1_1_14Mike Bayer2017-09-058-61/+67
|
* - 1.1.14 placeholderMike Bayer2017-09-052-1/+5
| | | | Change-Id: I1648f7780cc0accdfe7650a62754b39c8e5552a8
* Merge "Guard against KeyError in session.merge after check for identity" ↵mike bayer2017-09-052-18/+33
|\ | | | | | | into rel_1_1
| * Guard against KeyError in session.merge after check for identityMike Bayer2017-09-042-18/+33
| | | | | | | | | | | | | | | | | | | | | | Fixed bug in :meth:`.Session.merge` following along similar lines as that of :ticket:`4030`, where an internal check for a target object in the identity map could lead to an error if it were to be garbage collected immediately before the merge routine actually retrieves the object. Change-Id: Ifecfb8b9d50c52d0ebd5a03e1bd69fe3abf1dc40 Fixes: #4069 (cherry picked from commit bfad032017fde2e519ad5eacc0011a71bf7a22a9)
* | Merge "Check for non-mapped property in synonym" into rel_1_1mike bayer2017-09-053-1/+46
|\ \
| * | Check for non-mapped property in synonymMike Bayer2017-09-043-1/+46
| |/ | | | | | | | | | | | | | | | | | | | | An :class:`.InvalidRequestError` is raised when a :func:`.synonym` is used against an attribute that is not against a :class:`.MapperProperty`, such as an association proxy. Previously, a recursion overflow would occur trying to locate non-existent attributes. Change-Id: If2ce38c429a69951df4c94b71b74edbd59d775e3 Fixes: #4067 (cherry picked from commit 130f31ca79c7b40b2cb8aa1a4af7049408074d12)
* | Always check that discarded state is the expected oneMike Bayer2017-09-043-12/+94
|/ | | | | | | | | | | | | Fixed race condition in ORM identity map which would cause objects to be inappropriately removed during a load operation, causing duplicate object identities to occur, particularly under joined eager loading which involves deduplication of objects. The issue is specific to garbage collection of weak references and is observed only under the Pypy interpreter. Change-Id: I9f6ae3fe5b078f26146af82b15d16f3a549a9032 Fixes: #4068 (cherry picked from commit 37c5ed2ed948250d7244d1e6e17da37a27c24698)
* Add InternalError for mysqlclient disconnectMike Bayer2017-09-012-1/+11
| | | | | | | | | | | mysqlclient as of 1.3.11 changed the exception class for a particular disconnect situation from InterfaceError to InternalError; the disconnection detection logic now accommodates this. Change-Id: I294f90f794491fd363548719222d8e3008480615 Fixes: #4065 (cherry picked from commit 65680b2343ef421a62582e23e2b35293732933ad)
* include a note about the importance of type coerce for custom opsMike Bayer2017-09-011-2/+12
| | | | | Change-Id: Ia7dab65523d6a34fcc92ee785ffe03f7e2a33cfd (cherry picked from commit 56845d8cc2678c0aefd889a7fc711150661cd8e8)
* Consider merge key with (None, ) as non-persistentMike Bayer2017-08-313-5/+51
| | | | | | | | | | | Fixed bug in :meth:`.Session.merge` where objects in a collection that had the primary key attribute set to ``None`` for a key that is typically autoincrementing would be considered to be a database-persisted key for part of the internal deduplication process, causing only one object to actually be inserted in the database. Change-Id: I0a6e00043be0b2979cda33740e1be3b430ecf8c7 Fixes: #4056
* - pin on cx_Oracle 6.0.1 for the moment while we wait forMike Bayer2017-08-311-1/+2
| | | | | | | | either https://github.com/oracle/python-cx_Oracle/issues/75 to be fixed or we can merge a workaround Change-Id: Ia3927337fb48824e0fdc764ed3a9d4930ca7a9c6 (cherry picked from commit de73c6d1cd880b213f87723b6cf73fea20a7b9fb)
* Allow for multiple FOLLOWING/PRECEDING in a window rangeMike Bayer2017-08-254-37/+53
| | | | | | | | | | | | Altered the range specification for window functions to allow for two of the same PRECEDING or FOLLOWING keywords in a range by allowing for the left side of the range to be positive and for the right to be negative, e.g. (1, 3) is "1 FOLLOWING AND 3 FOLLOWING". Change-Id: I7d3a6c641151bb49219104968d18dac2266f3db8 Fixes: #4053 (cherry picked from commit 3a5bbe4cbe12d180fba2b942d0467b46be705bea)
* Ensure col is not None when retrieving quick populatorsMike Bayer2017-08-244-21/+209
| | | | | | | | | | | | | | | | | Fixed bug where an :func:`.undefer_group` option would not be recognized if it extended from a relationship that was loading using joined eager loading. In particular we need to double check the column both in terms of the given "adapter" as well as without applying the "adapter" when searching for the column in the result. As we now avoid redoing the row processor step we also improve on callcounts in joined eager loading. Change-Id: I0f48766f12f7299f4626ff41a00bf1f5bfca5f3b Fixes: #4048 (cherry picked from commit eee9dfd4514801f0c67f71632fc722731171479b)
* - sanitize class names for junit reportingMike Bayer2017-08-241-1/+8
| | | | | Change-Id: I42821d8324208b708adc17a10b1a2758797cb9db (cherry picked from commit a61ff195b5687b32828e1bc4d958c5cd87e94ff0)
* Restore original test namesMike Bayer2017-08-241-4/+3
| | | | | | | | | | | | The change in de1f8f8345ecd6af0ec1177703465e9471cfe862 modified how test classes are named, breaking logic that extracts the class name for the profiling suite. Add a new variable _sa_orig_cls_name if we've modified the name so that the profiling logic doesn't need to guess the original class name. Change-Id: Ica15a97408b9e0749a78c87f62749c15c1627009 (cherry picked from commit bb9d511e52ee5ab3621d8595328ee2400242461a)
* Allow multiple versions of single backendMike Bayer2017-08-243-9/+17
| | | | | | | | | | | Improve screen output to illustrate which server version is running for a particular database config, and additionally allow full overriding for the backend-specific targets in tox.ini via environment variables, so that CI can inject multiple server urls for a particular database such as MySQL/MariaDB. Change-Id: Ibf443bb9fb82e4563efd1bb66058fa9989aa2fda (cherry picked from commit de1f8f8345ecd6af0ec1177703465e9471cfe862)
* - remove 3.4'sMike Bayer2017-08-231-180/+6
| | | | Change-Id: Ib2089e812d16d7792d7b3d5bfe103abe19221a00
* - add posargs so we can run profile regenon individual testsMike Bayer2017-08-231-1/+1
| | | | Change-Id: I298e57a5fc920b2563e4f42367f821e0719c0be6
* - fix typosMike Bayer2017-08-222-2/+6
| | | | | Change-Id: Ibf8bc0e997ff989c7b0c16afad48a95414078052 (cherry picked from commit d8a80a35a0f117c7659c7a9c62e27994d3aadc01)
* - modernize the mysql connection timeout docsMike Bayer2017-08-224-18/+35
| | | | | Change-Id: Icb0474509539c1eb7536544749f2a48b4972078a (cherry picked from commit 4ce46fb0a085c1cc739e21881cc25567e663f8dc)
* First level repair for cx_Oracle 6.0 test regressionsMike Bayer2017-08-223-2/+12
| | | | | | | | | | | | | Fixed more regressions caused by cx_Oracle 6.0; at the moment, the only behavioral change for users is disconnect detection now detects for cx_Oracle.DatabaseError in addition to cx_Oracle.InterfaceError, as this behavior seems to have changed. Other issues regarding numeric precision and uncloseable connections are pending with the upstream cx_Oracle issue tracker. Change-Id: Id61f1e33b21c155a598396340dfdecd28ff4066b Fixes: #4045 (cherry picked from commit 03255a5a0fc6aa8acfff99ed9e62d58054b8b6af)
* - ensure identifier re-use doesn't make this breakMike Bayer2017-08-221-3/+4
| | | | | Change-Id: I9fe6c42c097d31b50a479250d39a3cd8ebcbffaf (cherry picked from commit 41549de9609bce90942ca6afc75978d5254c8fd5)
* - allow a separate template database to be used forMike Bayer2017-08-222-5/+19
| | | | | | | | | PG CREATE DATABASE. as nobody will connect to it that would solve the contention issue here - backport --nomemory since tox.ini is using it Change-Id: I00a4d52091876e120faff4a8a5493c53280d96f1 (cherry picked from commit 4c306818396c8cc98a16a14c5ed3361cf6ff373a)
* - repair --dbsMike Bayer2017-08-222-1/+21
| | | | | Change-Id: I69e39d2368f50b126c369ecc35e01799fd013254 (cherry picked from commit 3fc6f32ddc5fbbf439acff42c2fdae9e910154be)
* - still supporting py2.6 in 1.1 (!)Mike Bayer2017-08-221-1/+1
| | | | Change-Id: Iaaababf83b9c3a6e4dc784fc9807bed01c90b69b
* - simplify and see if it still worksMike Bayer2017-08-211-23/+6
| | | | | Change-Id: Id0cf7ae2223507d413aaa22e5f8df066b7ac2b46 (cherry picked from commit fe5eede555973044aceda038e28a190ebb483579)
* merge PG fixes from masterMike Bayer2017-08-211-2/+22
| | | | Change-Id: I5630eb8ba503c567bebddd10f6e525ceb3dd5998
* fix a typohsmtkk2017-08-211-1/+1
| | | | (cherry picked from commit 58fb83c45b2100f3cf9308c04eefb87e79202aac)
* - filter out non-oracle URLsMike Bayer2017-08-211-0/+2
| | | | | Change-Id: I475f744f8801bc923d738e466d208d662e707413 (cherry picked from commit 97e455f21b513936b7afda760c2ab0f3c04a12fd)
* - this test doesn't work in strict mode, not that importantMike Bayer2017-08-211-0/+1
| | | | | Change-Id: I3ed361af5c9f0c7acbeb8b534966828949f4958b (cherry picked from commit 63d47c051d92ffa78f1006d9c9f83f1508bc358e)
* - a few mysql fixes, more to comeMike Bayer2017-08-213-11/+23
| | | | | Change-Id: Icdcc8ed03374251b8d3815ae58e2726ea27c14b4 (cherry picked from commit 64032a35ae3dbed0bd5bbdf4d07b3f0094684f87)
* - rework oracle de-provisioning to write URLs to the file as well,Mike Bayer2017-08-214-41/+48
| | | | | | | supporting custom dburi etc. Change-Id: Ic0ab0b3b4223e40fd335ee3313fda4dfce942100 (cherry picked from commit cc741e1ac7fce9ce7117b4855d56e38749c04868)
* - add some logging for the provisioningMike Bayer2017-08-212-1/+3
| | | | | Change-Id: I1ac16bc77642f4f576195ac10443ed8e641e0d49 (cherry picked from commit 00309662008b8c4a66f3e008d417ff836c91004b)
* - dont run sql mode config tests if we aren't on mysqlMike Bayer2017-08-191-0/+6
| | | | | Change-Id: Ia5a491ec505afed1511a17a167cd1f7d8371acd4 (cherry picked from commit ed197d4c303603f74122cbcab5c9f4ea12ff5cd7)
* - correct server side cursor assertion for driver namesMike Bayer2017-08-191-5/+5
| | | | | Change-Id: Id8156f6af15a36f7d5653dff56f68e81431692a6 (cherry picked from commit ecdd922d9627c60058833fbcc2c8c2bc06d7332b)
* - backport new tox config options from 1.2Mike Bayer2017-08-191-8/+8
| | | | Change-Id: I081463ecc24bc5059018ffb4be49a320ff55dfab
* - rework the unittests README which was very out of dateMike Bayer2017-08-192-289/+108
| | | | | Change-Id: Id9bda43ea493a8d493be5ecb19da16a91a298f9d (cherry picked from commit 31491a6acca68d6708e3e8ba1bc9ea842a54d5fe)
* fix "constrast" typosNils Philippsen2017-08-092-3/+3
| | | | (cherry picked from commit 7765724d51f78690c814eda6533fc0ac81ca9077)
* - modernize orm.reconstructor documentation a bitMike Bayer2017-08-053-13/+28
| | | | | Change-Id: Ied786e8f9ad78f524be03a382d002dada7dd218b (cherry picked from commit 4b4f8fbf25f1a5a76c1579c1a3fd6ffad07c8c66)
* - fix one test for STRICT, which may be turned on by defaultMike Bayer2017-08-042-2/+3
| | | | | | | in mariadb 10.2. more mariadb fixes coming Change-Id: I6e3a94ae7340772663677b1082506adbb2d84a38 (cherry picked from commit 54cdda032ea59789be15972ed0529f71fd4f0214)
* - 1.1.13rel_1_1_13Mike Bayer2017-08-032-3/+3
|
* - 1.0.19Mike Bayer2017-08-032-16/+17
| | | | Change-Id: I65ebe00fa7372151210a1f177f5417ac08c41586
* - convert to spacesMike Bayer2017-07-313-13/+15
| | | | | | | - restore unreleased directories Change-Id: Ia5c1142ffbdba6372f800c2e2521660ab62d9c4f (cherry picked from commit a1160414b8dc798a1cf1b8c71a68c6cdc3526384)
* Revert cx_Oracle WITH_UNICODE change under > 5.0Mike Bayer2017-07-282-4/+28
| | | | | | | | | | | | | | | | | Fixed performance regression caused by the fix for :ticket:`3937` where cx_Oracle as of version 5.3 dropped the ``.UNICODE`` symbol from its namespace, which was interpreted as cx_Oracle's "WITH_UNICODE" mode being turned on unconditionally, which invokes functions on the SQLAlchemy side which convert all strings to unicode unconditionally and causing a performance impact. In fact, per cx_Oracle's author the "WITH_UNICODE" mode has been removed entirely as of 5.1, so the expensive unicode conversion functions are no longer necessary and are disabled if cx_Oracle 5.1 or greater is detected under Python 2. The warning against "WITH_UNICODE" mode that was removed under :ticket:`3937` is also restored. Change-Id: Iddd38d81a5adb27c953a5ee2eae5529a21da16e1 Fixes: #4035 (cherry picked from commit 7997d7fdc3634e7dba9fd0113b8b85ef311bfeaa)
* - 1.1.13Mike Bayer2017-07-283-1/+7
| | | | | | - 1.0.19 Change-Id: I476213fe905a51826feeddb4e1c97416c2bac558
* - 1.1.12rel_1_1_12Mike Bayer2017-07-246-43/+47
|
* - 1.0.18 release dateMike Bayer2017-07-243-17/+19
| | | | | | (cherry picked from commit f00391a070d9031941bb1c17aecb265b566a6a5b) Change-Id: Ib9e96acddc871fddbb7eb94993f0994248f8a85d
* Merge "Ensure we check for boolean condition when we inspect __exit__()" ↵mike bayer2017-07-242-1/+8
|\ | | | | | | into rel_1_1