| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
receive session-specific context via the mapper.using() statement. reuslting object instances will be bound to this session, but query execution still handled by the SQLEngines implicit in the mapper's Table objects.
session now propigates to the unitofwork UOWTransaction object, as well as mapper's save_obj/delete_obj via the UOWTransaction it receives. UOWTransaction explicitly calls the Session for the engine corresponding to each Mapper in the flush operation, although the Session does not yet affect the choice of engines used, and mapper save/delete is still using the Table's implicit SQLEngine.
changed internal unitofwork commit() method to be called flush().
removed all references to 'engine' from mapper module, including adding insert/update specific SQLEngine methods such as last_inserted_ids, last_inserted_params, etc. to the returned ResultProxy so that Mapper need not know which SQLEngine was used for the execute.
changes to unit tests, SelectResults to support the new Query object.
|
|
|
|
| |
time into "compilation" time
|
|
|
|
| |
alias schema-qualified Table objects
|
| |
|
|
|
|
|
|
|
|
| |
nobody noticed that.
types: added PickleType, its slightly trickier than trivial, so OK now its standard.
attributes: the level of pain if an AttributeError occurs inside a CallableProp, in combination with an object that implements __getattr__, is too deep for me to put the users through....so convert AttributeErrors to Assertions...
engine: im not a fan of catching universal exceptions and squashing them
|
| |
|
| |
|
|
|
|
|
|
| |
at the Session level,
fixes [ticket:113]
|
| |
|
|
|
|
| |
rollback/commit regardless of issues
|
|
|
|
| |
capability of the pool after all
|
| |
|
| |
|
|
|
|
|
|
|
| |
transactions.
util.ThreadLocal __hasattr__ method/raise_error param meaningless, removed
renamed old engines test to reflection
|
| |
|
| |
|
|
|
|
|
|
| |
connection
that is not part of the thread-local context or any current transaction
|
|
|
|
| |
some fixes to unit tests
|
|
|
|
|
|
|
|
|
|
|
| |
more intelligent bind parameter dictionary that does type conversions late and preserves the unconverted value; used to fix mappers not comparing correct value in post-fetch [ticket:110]
removed pre_exec assertion from oracle/firebird regarding "check for sequence/primary key value"
fix to Unicode type to check for null, fixes [ticket:109]
create_engine() now uses genericized parameters; host/hostname, db/dbname/database, password/passwd, etc. for all engine connections
fix to select([func(column)]) so that it creates a FROM clause to the column's table, fixes [ticket:111]
doc updates for column defaults, indexes, connection pooling, engine params
unit tests for the above bugfixes
|
| |
|
|
|
|
| |
mapper, when the inheritance/eager loads share the same table. mapper inheritance will also favor the columns from the child table over those of the parent table when assigning column values to object attributes. "correlated subqueries" require a flag "correlated=True" if they are in the FROM clause of another SELECT statement, and they want to be correlated. this flag is set by default when using an "exists" clause.
|
|
|
|
| |
to only signal postfetch if the passivedefault columns received None/NULL for their parameter (since they dont exec otherwise)
|
|
|
|
| |
properly receives defaults on inserts)...
|
|
|
|
| |
improvement to Function so that they can more easily be called standalone without having to throw them into a select().
|
| |
|
| |
|
|
|
|
| |
ANSICompilers and compile SQL with no engine at all.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
BaseProxyEngine descends from SchemaEngine
fixes to sqlite/postgres reflection to use the correct engine for table lookups
Table engine can be none which will default to schema.default_engine (although its
still positional for now, so still needs to be explicit to make room for Columns)
__init__ sets default_engine to be a blank ProxyEngine
fixes to test suite to allow --db proxy.<dbname> to really test proxyengine
|
|
|
|
| |
translation on all string/char values when set
|
| |
|
| |
|
|
|
|
| |
create()'ed in one line
|
|
|
|
|
| |
clause elements including tables and columns, schema package deals with "physical"
representations
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this includes:
sql.Alias object keeps track of the immediate thing it aliased as well
as the ultimate non-aliased (usually a Table) object, so that proxied columns can have
a "parent" attribute
some cleanup to SelectBaseMixin.order_by_clause to allow easier access, needs more cleanup
engine has been making two ResultProxies all this time, added "return_raw" quickie flag to
disable that
some cleanup to _get_col_by_original so that it also works for oid columns, new eager load stuff
more aggressively aliaseses orderby's so this was needed
EagerLoader now makes "chains" of unique aliased eager loaders in all cases. no need for
use_alias/selectalias anymore since it aliases every time.
properly detects recursive eager loads and terminates them with a lazyloader, instead of
raising an exception. totally simplified setup() and init() is more straightforward and has
a single codepath now instead of two or three.
|
| |
|
|
|
|
|
|
| |
slightly different index syntax for mysql
fixed mysql Time type to convert from a timedelta to time
tweaks to date unit tests for mysql
|
|
|
|
| |
process_defaults set newly acquired parameter by name also
|
|
|
|
| |
key name. Added test for same.
|
|
|
|
|
|
| |
added support for creating PassiveDefault (i.e. regular DEFAULT) on table columns
postgres can reflect default values via information_schema
added unittests for PassiveDefault values getting created, inserted, coming back in result sets
|
| |
|
| |
|
|
|
|
|
|
|
| |
for the same class,
that dont affect the original class mapper and create objects with the correct identity key
support in EagerLoader to better handle "selectalias" when the eager mapper hits another eager mapper, etc
|
|
|
|
|
|
| |
to add a "post table create" string
mysql gets mysql_engine argument
InnoDB set as default in engines test
|
|
|
|
| |
fetch the most recently inserted row if a table has PassiveDefault's set on it
|
|
|
|
| |
information_schema access for db's that support it, i.e. postgres, mysql 5
|