summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy
Commit message (Collapse)AuthorAgeFilesLines
* Remove terminated connections from the pool.pr/51John Anderson2013-12-161-0/+1
| | | | | | In pymssql, if you terminate a long running query manually it will give you a connection reset by peer message, but this connection remains in the pool and will be re-used.
* wrong method nameMike Bayer2013-12-161-1/+1
|
* - add "force_nocheck" as a way to turn on unicode=force without evenMike Bayer2013-12-152-21/+16
| | | | | | | doing the isinstance() check - currently used only by psycopg2 + native enum + py2k. - didn't realize psycopg2 had UNICODEARRAY extension all this time; replace _PGArray with just using UNICODEARRAY instead. - replace unnecessary/inconsistent __import__ in _isolation_lookup.
* load_on_pending is different from enable_relationship_loading and shouldMike Bayer2013-12-152-6/+14
| | | | not be superseded. both have a potential use.
* make the error message for [ticket:2889] more accurate, as we supportMike Bayer2013-12-121-1/+1
| | | | composites to many-to-ones now also
* - :func:`.composite` will raise an informative error message when theMike Bayer2013-12-121-0/+5
| | | | | | columns/attribute (names) passed don't resolve to a Column or mapped attribute (such as an erroneous tuple); previously raised an unbound local. [ticket:2889]
* - Error message when a string arg sent to :func:`.relationship` whichMike Bayer2013-12-121-12/+10
| | | | | | | doesn't resolve to a class or mapper has been corrected to work the same way as when a non-string arg is received, which indicates the name of the relationship which had the configurational error. [ticket:2888]
* - implement "literal binds" for the text() clause, [ticket:2882]Mike Bayer2013-12-111-3/+3
|
* - The :class:`.ForeignKey` class more aggressively checks the givenMike Bayer2013-12-111-21/+34
| | | | | | | | | column argument. If not a string, it checks that the object is at least a :class:`.ColumnClause`, or an object that resolves to one, and that the ``.table`` attribute, if present, refers to a :class:`.TableClause` or subclass, and not something like an :class:`.Alias`. Otherwise, a :class:`.ArgumentError` is raised. [ticket:2883]
* - The :class:`.exc.StatementError` or DBAPI-related subclassMike Bayer2013-12-112-3/+23
| | | | | | | | | | now can accomodate additional information about the "reason" for the exception; the :class:`.Session` now adds some detail to it when the exception occurs within an autoflush. This approach is taken as opposed to combining :class:`.FlushError` with a Python 3 style "chained exception" approach so as to maintain compatibility both with Py2K code as well as code that already catches ``IntegrityError`` or similar.
* - round trip testMike Bayer2013-12-091-18/+44
| | | | | - changelog - some doc rearrangement
* Adds tsvector to ischema_names for reflection to work.Noufal Ibrahim2013-12-101-0/+1
| | | | Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
* Updates documentation for tsvector type.Noufal Ibrahim2013-12-101-1/+26
| | | | Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
* Implements TSVECTOR type for postgresql.Noufal Ibrahim2013-12-102-2/+10
| | | | Signed-off-by: Noufal Ibrahim <noufal@nibrahim.net.in>
* - The :func:`.engine_from_config` function has been improved so thatMike Bayer2013-12-074-34/+36
| | | | | | | | we will be able to parse dialect-specific arguments from string configuration dictionaries. Dialect classes can now provide their own list of parameter types and string-conversion routines. The feature is not yet used by the built-in dialects, however. [ticket:2875]
* - documentation cleanup in ORM including [ticket:2816]Mike Bayer2013-12-073-43/+88
|
* - A DBAPI that raises an error on ``connect()`` which is not a subclassMike Bayer2013-12-071-1/+1
| | | | | | | | | | | | of dbapi.Error (such as ``TypeError``, ``NotImplementedError``, etc.) will propagate the exception unchanged. Previously, the error handling specific to the ``connect()`` routine would both inappropriately run the exception through the dialect's :meth:`.Dialect.is_disconnect` routine as well as wrap it in a :class:`sqlalchemy.exc.DBAPIError`. It is now propagated unchanged in the same way as occurs within the execute process. [ticket:2881] - add tests for this in test_parseconnect, but also add tests in test_execute to ensure the execute() behavior as well
* - restore having the connection closed before decrementing the overflow counterMike Bayer2013-12-061-2/+4
|
* - The :class:`.QueuePool` has been enhanced to not block new connectionMike Bayer2013-12-061-31/+33
| | | | | | | | attempts when an existing connection attempt is blocking. Previously, the production of new connections was serialized within the block that monitored overflow; the overflow counter is now altered within it's own critical section outside of the connection process itself. [ticket:2880]
* - Made a slight adjustment to the logic which waits for a pooledMike Bayer2013-12-061-2/+8
| | | | | | | | | | | connection to be available, such that for a connection pool with no timeout specified, it will every half a second break out of the wait to check for the so-called "abort" flag, which allows the waiter to break out in case the whole connection pool was dumped; normally the waiter should break out due to a notify_all() but it's possible this notify_all() is missed in very slim cases. This is an extension of logic first introduced in 0.8.0, and the issue has only been observed occasionally in stress tests.
* - The precedence rules for the :meth:`.ColumnOperators.collate` operatorMike Bayer2013-12-051-1/+5
| | | | | | | | | | | have been modified, such that the COLLATE operator is now of lower precedence than the comparison operators. This has the effect that a COLLATE applied to a comparison will not render parenthesis around the comparison, which is not parsed by backends such as MSSQL. The change is backwards incompatible for those setups that were working around the issue by applying :meth:`.Operators.collate` to an individual element of the comparison expression, rather than the comparison expression as a whole. [ticket:2879]
* Fix MSSQL dialects visit_drop_index to use the correct DDLdonkopotamus2013-12-051-5/+3
|
* - reflection of unique constraints backported to 0.8.4 [ticket:1443]Mike Bayer2013-12-031-1/+1
|
* - The :class:`.DeferredReflection` class has been enhanced to provideMike Bayer2013-12-032-38/+75
| | | | | | | | | | | | | | | | automatic reflection support for the "secondary" table referred to by a :func:`.relationship`. "secondary", when specified either as a string table name, or as a :class:`.Table` object with only a name and :class:`.MetaData` object will also be included in the reflection process when :meth:`.DeferredReflection.prepare` is called. [ticket:2865] - clsregistry._resolver() now uses a stateful _class_resolver() class in order to handle the work of mapping strings to objects. This is to provide for simpler extensibility, namely a ._resolvers collection of ad-hoc name resolution functions; the DeferredReflection class adds its own resolver here in order to handle relationship(secondary) names which generate new Table objects.
* - Added ORA-02396 "maximum idle time" error code to list ofMike Bayer2013-12-031-1/+2
| | | | "is disconnect" codes with cx_oracle. [ticket:2864]
* - Added new argument ``include_backrefs=True`` to theMike Bayer2013-12-023-12/+45
| | | | | | | :func:`.validates` function; when set to False, a validation event will not be triggered if the event was initated as a backref to an attribute operation from the other side. [ticket:1535] - break out validation tests into an updated module test_validators
* - changelogMike Bayer2013-11-301-7/+8
| | | | - put list.clear() instrumentation under "if not py2k"
* Merge branch 'orm-collections-list-clear' of ↵Mike Bayer2013-11-301-0/+8
|\ | | | | | | github.com:schettino72/sqlalchemy into list_clear
| * orm.collection, list.clear(). remove 'before_delete()', added unit-test.pr/40schettino722013-11-251-1/+0
| |
| * Add support for python3.3 list.clear() on orm.collectionsschettino722013-11-061-0/+9
| |
* | - re-document synonyms and remove warnings about "superseded"; synonymsMike Bayer2013-11-301-33/+50
| | | | | | | | | | are still useful, just include notes that for more complex descriptor operations, hybrids are probably preferable
* | - Fixed bug where values within an ENUM weren't escaped for singleMike Bayer2013-11-301-1/+3
| | | | | | | | | | quote signs. Note that this is backwards-incompatible for existing workarounds that manually escape the single quotes. [ticket:2878]
* | convert to a list here for py3kMike Bayer2013-11-291-1/+1
| |
* | - add support for bindparam() called from AsFromTextMike Bayer2013-11-292-13/+20
| | | | | | | | | | - get PG dialect to work around "no nonexistent binds" rule for now, though we might want to reconsider this behavior
* | Fixed bug where in Py2K a unicode literal would not be acceptedMike Bayer2013-11-291-1/+1
| | | | | | | | | | as the string name of a class or other argument within declarative using :func:`.relationship`.
* | - reduce verbiage in mutation.py regarding legacy style, place under ↵Mike Bayer2013-11-291-7/+3
| | | | | | | | versionadded
* | Fixed a syntax error in example code.Hyunjun Kim2013-11-291-1/+1
| |
* | Merge pull request #45 from timka/patch-1mike bayer2013-11-291-1/+1
|\ \ | | | | | | Fix sessionmaker.__repr__
| * | Fix sessionmaker.__repr__pr/45Timur2013-11-161-1/+1
| | | | | | | | | A comma separating 'class_' from the other args. It's still there even when kw is empty, which is syntactically correct.
* | | Merge pull request #46 from vrajmohan/mastermike bayer2013-11-2912-29/+29
|\ \ \ | | | | | | | | More fixes for cross references and reducing warnings (3rd wave)
| * | | Fix cross referencespr/46Vraj Mohan2013-11-175-9/+9
| | | |
| * | | Generate API and resolve cross referencesVraj Mohan2013-11-172-5/+5
| | | |
| * | | Fix cross referencesVraj Mohan2013-11-174-13/+13
| | | |
| * | | Add API generation to resolve cross referencesVraj Mohan2013-11-171-1/+1
| | | |
| * | | Remove reference to defunct classVraj Mohan2013-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | We should probably reword this entirely as, IMHO, this should be in the changelog and not in the doc proper (which should only describe the current state of affairs).
* | | | more fixMike Bayer2013-11-291-1/+1
| | | |
* | | | fixMike Bayer2013-11-291-1/+1
| | | |
* | | | make generativeselect availableMike Bayer2013-11-291-1/+1
| | | |
* | | | - New improvements to the :func:`.text` construct, includingMike Bayer2013-11-294-193/+482
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | more flexible ways to set up bound parameters and return types; in particular, a :func:`.text` can now be turned into a full FROM-object, embeddable in other statements as an alias or CTE using the new method :meth:`.TextClause.columns`. [ticket:2877]
* | | | - repair the "lockmode" functionality of load_on_ident(). slightly problematicMike Bayer2013-11-281-4/+9
| | | | | | | | | | | | | | | | here is that "lockmode" is also public in Session.refresh().