| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
cx_Oracle connection parameters user, password and dsn must be
either a string or NULL. When they are passed a Python None object,
"TypeError: expecting string, unicode or buffer object" is raised.
Fixes: #3705
Change-Id: I8da5d8a227ca12c9bf17a6127460e413841951fb
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/271
(cherry picked from commit a60328473f78d68b65cc376c21aa8f50df867d26)
|
| |/
|
|
|
|
|
|
|
|
|
| |
Fixed bug in "evaluate" strategy of :meth:`.Query.update` and
:meth:`.Query.delete` which would fail to accommodate a bound
parameter with a "callable" value, as which occurs when filtering
by a many-to-one equality expression along a relationship.
Change-Id: I47758d3f5d8b9ea1a07e23166780d5f3c32b17f1
Fixes: #3700
(cherry picked from commit a51ab916622dd016ce51d6be0969112817cc42ad)
|
| |
|
|
|
|
|
|
|
|
| |
This is another psycopg2 error message representing an
unusable connection.
Fixes #3715
Change-Id: Ida6e212963e9c7336bf2944e7ef928619ac3a0e7
(cherry picked from commit 8ecad78ba3473d97df8ed4f20f28ddf966ce0277)
Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/85
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixed bug where by ROW_NUMBER OVER clause applied for OFFSET
selects in SQL Server would inappropriately substitute a plain column
from the local statement that overlaps with a label name used by
the ORDER BY criteria of the statement.
Change-Id: Ic2500c886cbfc83a1ad5a2681783f008b9f23838
Fixes: #3711
(cherry picked from commit a4be7c92393e08607dc46f318e97803519052a93)
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixed bug whereby the event listeners used for backrefs could
be inadvertently applied multiple times, when using a deep class
inheritance hierarchy in conjunction with mutiple mapper configuration
steps.
Change-Id: I712beaf4674e2323bf5b282922658020a6d00b53
Fixes: #3710
(cherry picked from commit 743e9d4589946f1a29cdec7f2f1a2e4ec0853db7)
|
| |
|
|
|
|
|
|
|
|
| |
Fixed bug whereby passing a :func:`.text` construct to the
:meth:`.Query.group_by` method would raise an error, instead
of intepreting the object as a SQL fragment.
Change-Id: I5fc2f590b76508d52e23b5fa9cf037ddea8080c3
fixes: #3706
(cherry picked from commit 9bdd6f2b1f6b34a82b77849ec05811aa0279931d)
|
| |
|
|
| |
(cherry picked from commit e6251c3e40e623aaadc7356c0b3c94101710079c)
|
| |
|
|
| |
(cherry picked from commit 1322edc7b1effb5bad411742b997cb2103eedfc2)
|
| |
|
|
|
|
|
| |
A slash is required before building out the query string portion.
Change-Id: Ie97fd3d07047d78e17cbaffed4ff54960a2b956e
Fixes: #3696
|
| |
|
|
|
| |
This makes the docstring example code compatible with both Python 2 and Python 3.
(cherry picked from commit 8aa7369125f831a74c9f024ce5dde73ecf812e63)
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed a bug in the result proxy used mainly by Oracle when binary and
other LOB types are in play, such that when query / statement caching
were used, the type-level result processors, notably that required by
the binary type itself but also any other processor, would become lost
after the first run of the statement due to it being removed from the
cached result metadata.
Change-Id: I751940866cffb4f48de46edc8137482eab59790c
Fixes: #3699
(cherry picked from commit f3bc60bdd809235cbeb3f414717ac0e273269cf9)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Fixed bug where when using ``case_sensitive=False`` with an
:class:`.Engine`, the result set would fail to correctly accomodate
for duplicate column names in the result set, causing an error
when the statement is executed in 1.0, and preventing the
"ambiguous column" exception from functioning in 1.1.
Change-Id: If582bb9fdd057e4da3ae42f7180b17d1a1a2d98e
Fixes: #3690
(cherry picked from commit 1f3e5d9826fe989f2212745f6b3592b2ef9b5e32)
|
| |
|
|
|
|
| |
same column
(cherry picked from commit 2880f24d93a774d02cde83dbabfd80ad279cbb05)
|
| |
|
|
| |
(cherry picked from commit c8db0862c102281da617d395b1826ff523af302e)
|
| |
|
|
| |
(cherry picked from commit b1c9b3bd384fc40e1c411abef12eaf04b574612f)
|
| |
|
|
|
| |
Fixes a misrendering at http://docs.sqlalchemy.org/en/latest/dialects/mssql.html#nullability:
(cherry picked from commit e3abb63293be80379d20b4c3f0d1cd093459a9eb)
|
| |
|
|
|
|
|
|
|
| |
be properly typed as boolean in the result, and also would fail to be
anonymously aliased in a SELECT list as is the case with a
non-negated EXISTS construct.
fixes #3682
(cherry picked from commit 07a4b6cbcda6e6ee6e67893c5a5d2fd01e5f125f)
|
| |
|
|
|
|
| |
for stray connection
(cherry picked from commit edbb32649960db29761e765fc74c025e9999c7dd)
|
| |
|
|
| |
isolation_level settings for postgresql, mysql
|
| |
|
|
| |
(cherry picked from commit 8bc370ed382a45654101fa34bac4a2886ce089c3)
|
| |
|
|
| |
(cherry picked from commit 6e5e64e27ef2c6a86c9aebdcefdf2cd726f1476a)
|
| |
|
|
|
|
| |
like this
(cherry picked from commit 0e7904e730c3d2b0d3a394ad60010158ee29050c)
|
| |
|
|
|
|
| |
#3666.
(cherry picked from commit 399f92cd116b747f742b919ac9a3e79eb0637e8a)
|
| |
|
|
|
| |
we're trying to hit columns without names yet and such, to suit the bug
right now just make it specific to FunctionElement
|
| |
|
|
|
|
|
|
|
|
|
| |
passed to :func:`.column_property`, so that if the same attribute
is referred to as a column expression twice the names are de-duped,
thus avoiding "ambiguous column" errors. Previously, the
``.label(None)`` would need to be applied in order for the name
to be de-anonymized.
fixes #3663
(cherry picked from commit 0210695bd97e76f58d8781b69337816501482fb0)
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
8ad968f33100baeb3b13c7e0b724b6b79ab4277f
for ref #3657. The Oracle dialect makes more use of the "select_wraps_for"
feature than SQL server because Oracle doesn't have "TOP" for a limit-only
select, so tests are showing more happening here. In the case where
the select() has some dupe columns, these are deduped from the .c collection
so a positional match between the wrapper and original can't use .inner_columns,
because these collections wont match. Using _columns_plus_names
instead which is the deduped collection that determines the SELECT display,
which definitely have to match up.
|
| |
|
|
|
|
|
|
|
| |
would be turned into a list of individual characters. This would
impact among other things using the :meth:`.Query.get` method
on a primary key that's a bytes object.
fixes #3660
(cherry picked from commit 01809bddff5b6e93010eb139aed54526c6e6c058)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handled within visit_select(); this attribute was added in the
1.0 series to accommodate the subquery wrapping behavior of
SQL Server and Oracle while also working with positional
column targeting and no longer relying upon "key fallback"
in order to target columns in such a statement. The IBM DB2
third-party dialect also has this use case, but its implementation
is using regular expressions to rewrite the textual SELECT only
and does not make use of a "wrapped" select at this time.
The logic no longer attempts to reconcile proxy set collections as
this was not deterministic, and instead assumes that the select()
and the wrapper select() match their columns postionally,
at least for the column positions they have in common,
so it is now very simple and safe. fixes #3657.
- as a side effect of #3657 it was also revealed that the
strategy of calling upon a ResultProxy._getter was not
correctly calling into NoSuchColumnError when an expected
column was not present, and instead returned None up to
loading.instances() to produce NoneType failures; added
a raiseerr argument to _getter() which is called when we
aren't expecting None, fixes #3658.
(cherry picked from commit 8ad968f33100baeb3b13c7e0b724b6b79ab4277f)
|
| | |
|
| |
|
|
|
|
| |
exactly
(cherry picked from commit c97aa63789036fc145503f03123275253ae02d2c)
|
| |
|
|
|
|
| |
here, fixes #3652
(cherry picked from commit e310a8e423d9a4eeb511b7b84dbeccc90c234a1f)
|
| |
|
|
|
|
|
|
|
|
| |
primary key that has values for some but not all of the PK fields
would emit a SELECT statement leaking the internal NEVER_SET symbol
into the query, rather than detecting that this object does not have
a searchable primary key and no SELECT should be emitted.
fixes #3647
(cherry picked from commit 366f97b5617af0d15cfaf594ec5ef0408c70e873)
|
| |
|
|
|
|
|
|
| |
that this structure is only intended to track additions
and removals from the dictionary, not recursive tracking
of embedded changes. fixes #3646.
(cherry picked from commit 287aaa9d416b4f72179da320af0624b9ebc43846)
|
| |
|
|
|
|
|
| |
because we never log in on the ts1/ts2. races against other runs
and erases their DBs
(cherry picked from commit 3f1f1895ac99963da1a989c69c2dce59ae916ffc)
|
| |
|
|
|
| |
present in the commit for master, having been inadvertently committed
on February 3. Source of this line is c1316a299257fae8264c8038d83e415f4605fde7.
|
| | |
|
| |
|
|
| |
we dont get file conflicts, cherry-pick from 5bb2536cc57c55c7d8c5901b5b622d18a9a6c646
|
| |
|
|
| |
test envs on jenkins
|
| |
|
|
|
|
|
|
|
|
| |
connections at all,
yet cx_Oracle still has open sessions that cannot be killed until process dies.
Oracle wins! Add a completely separate DB reaper script that runs
after py.test is done.
(cherry picked from commit 11a8440bc43aa9f7eb6f2cb7b7f43e0cf6680f41)
|
| | |
|
| |
|
|
| |
(cherry picked from commit 00a05e357b5bcc37c66256bc08c1198541475739)
|
| |
|
|
|
|
|
|
|
|
|
| |
- establish make_transient and make_transient_to_detached as special-use,
advanced use only functions
- list all conditions under make_transient() under which an attribute
will not be loaded and establish that make_transient() does not attempt
to load all attributes before detaching the object from its
session, fixes #3640
(cherry picked from commit 7eff4e8f3e3999d9eb914647d8776e6e5b7ee88e)
|
| |
|
|
| |
(cherry picked from commit 93c5328e66d8491e73027f6e789df2255c4fa767)
|
| |
|
|
| |
(cherry picked from commit c01d11907cbc98ddefe323c6115bc954b908f101)
|
| |
|
|
|
|
|
| |
- move tests to CRUDTest
- changelog, fixes #3643
(cherry picked from commit 150591f9e0a94902cb2a76b68ac7c9d8a1a3ec83)
|
| |
|
|
| |
(cherry picked from commit c9b03fa8afd52646aba8c59fc038330eeee6db60)
|
| |
|
|
|
|
| |
AttributeError in object OracleCompiler_zxjdbc
(cherry picked from commit edc0b8678bc06ae27fa0f7e80c3eb074978fbe10)
|
| |
|
|
|
|
|
|
|
|
|
| |
override with a column expression (e.g. by using ``'x' in col``)
would cause an endless loop in the case of an ARRAY type, as Python
defers this to ``__getitem__`` access which never raises for this
type. Overall, all use of ``__contains__`` now raises
NotImplementedError.
fixes #3642
(cherry picked from commit e0a580b3d055a600afae61840058a5a30ef5fe74)
|