Commit Graph

  • 9cc0aa292c - implemented "version check" logic in Query/Mapper, used when version_id_col is in effect and query.with_lockmode() is used to get() an instance thats already loaded [ticket:292] Mike Bayer 2006-09-11 00:20:28 +00:00
  • d8bdde94cb checks for invalid lockmode argument Mike Bayer 2006-09-10 23:59:30 +00:00
  • 47d8b03b14 - changed "for_update" parameter to accept False/True/"nowait" and "read", the latter two of which are interpreted only by Oracle and Mysql [ticket:292] - added "lockmode" argument to base Query select/get functions, including "with_lockmode" function to get a Query copy that has a default locking mode. Will translate "read"/"update" arguments into a for_update argument on the select side. [ticket:292] Mike Bayer 2006-09-10 23:52:04 +00:00
  • 287bf21795 removed auto-dispose on __del__, produces too much garbage exceptiongs Mike Bayer 2006-09-10 20:13:46 +00:00
  • eed944dbb9 fixup to printing of uow Mike Bayer 2006-09-07 23:04:13 +00:00
  • 45dd486e06 - more rearrangements of unit-of-work commit scheme to better allow dependencies within circular flushes to work properly...updated task traversal/logging implementation Mike Bayer 2006-09-07 20:04:10 +00:00
  • 8f43b24f32 forgot the tearDown step.... Mike Bayer 2006-09-07 17:14:11 +00:00
  • d5d3c5495d fixed constructor on bigint Mike Bayer 2006-09-06 01:00:06 +00:00
  • e504454a4c added link Mike Bayer 2006-09-05 18:42:43 +00:00
  • f2d050180a 0.2.8.. rel_0_2_8 Mike Bayer 2006-09-05 17:19:26 +00:00
  • 9a52478189 - added basic 'zblog' test suite - better error message for mapper orphan detect Mike Bayer 2006-09-05 17:16:26 +00:00
  • 20f15720da restored "optimistic" behavior of hasparent. its generally disastrous without that flag as its impossible to load all lazy loaders, deal with attributes that "noload", etc. just to check for orphan status. Mike Bayer 2006-09-05 16:58:02 +00:00
  • f3d72a7187 - unicode fix for startswith()/endswith() [ticket:296] Mike Bayer 2006-09-05 15:39:59 +00:00
  • 5bcb6e786f update Mike Bayer 2006-09-04 23:55:38 +00:00
  • 189f015c2a further fixes to case sensitive logic Mike Bayer 2006-09-04 23:05:36 +00:00
  • 3a4f96e070 revised section on quoting, semanticized headings and table of content lists Mike Bayer 2006-09-04 23:02:13 +00:00
  • 9deaebf93c - import of py2.5s sqlite3 [ticket:293] Mike Bayer 2006-09-04 02:22:00 +00:00
  • f5454c89ea simplification to quoting to just cache strings per-dialect, added quoting for alias and label names fixes [ticket:294] Mike Bayer 2006-09-04 01:56:31 +00:00
  • c0d89919ec cleanup/unit test fixes Mike Bayer 2006-09-03 02:46:46 +00:00
  • fe0a1aa7fa - further changes to attributes with regards to "trackparent". the "commit" operation now sets a "hasparent" flag for all attributes to all objects. that way lazy loads via callables get included in trackparent, and eager loads do as well because the mapper calls commit() on all objects at load time. this is a less shaky method than the "optimistic" thing in the previous commit, but uses more memory and involves more overhead. - some tweaks/cleanup to unit tests Mike Bayer 2006-09-02 04:00:44 +00:00
  • 35e2f6680b futher fix to the "orphan state" idea. to avoid setting tons of "hasparent" flags on objects as they are loaded, both from lazy and eager loads, the "orphan" check now uses an "optimistic" flag to determine the result if no "hasparent" flag is found for a particular relationship on an instance. if the instance has an _instance_key and therefore was loaded from the database, it is assumed to not be an orphan unless a "False" hasparent flag has been set. if the instance does not have an _instance_key and is therefore transient/pending, it is assumed to be an orphan unless a "True" hasparent flag has been set. Mike Bayer 2006-09-01 17:01:55 +00:00
  • 005603e2fb insure that "parent" pointers are set up on objects that were lazily loaded Mike Bayer 2006-09-01 16:25:20 +00:00
  • 2c1006534e possible fix for [ticket:276]. if mysql detects case-insensitivity, converts tables to lower case names Mike Bayer 2006-09-01 00:30:36 +00:00
  • a0255d22d0 since casing is figured out quasi-automatically when creating table/column/etc, removed casing checks within pg reflection Mike Bayer 2006-08-31 23:58:34 +00:00
  • 165065a948 quoting more or less working with oracle Mike Bayer 2006-08-31 23:55:42 +00:00
  • 9f23a5c3de fix to from clause in unittest query...somehow this didnt fail on pg 8.0, but fails on 8.1 Mike Bayer 2006-08-31 23:41:49 +00:00
  • 7d39ad95d8 defaults and constraints have optional parent Mike Bayer 2006-08-31 23:39:42 +00:00
  • 7b82393355 sequence/default adjustments to allow postgres 8.1 tests to function Mike Bayer 2006-08-31 23:33:55 +00:00
  • b02b64675e pg formats sequence name, more quote test fixes Mike Bayer 2006-08-31 23:26:30 +00:00
  • e168ef63a9 some tweaks to oracle casing... Mike Bayer 2006-08-31 23:13:14 +00:00
  • 0c7250a474 - added case_sensitive argument to MetaData, Table, Column, determines itself automatically based on if a parent schemaitem has a non-None setting for the flag, or if not, then whether the identifier name is all lower case or not. when set to True, quoting is applied to identifiers with mixed or uppercase identifiers. quoting is also applied automatically in all cases to identifiers that are known to be reserved words or contain other non-standard characters. various database dialects can override all of this behavior, but currently they are all using the default behavior. tested with postgres, mysql, sqlite. needs more testing with firebird, oracle, ms-sql. part of the ongoing work with [ticket:155] Mike Bayer 2006-08-31 18:58:22 +00:00
  • 2e077dc627 - deregister Table from MetaData when autoload fails; [ticket:289] Mike Bayer 2006-08-28 16:55:22 +00:00
  • 7252ccd7c9 - fix to using query.count() with distinct, **kwargs with SelectResults count() [ticket:287] Mike Bayer 2006-08-27 21:22:28 +00:00
  • 47332cb147 - changed "invalidate" semantics with pooled connection; will instruct the underlying connection record to reconnect the next time its called. "invalidate" will also automatically be called if any error is thrown in the underlying call to connection.cursor(). this will hopefully allow the connection pool to reconnect to a database that had been stopped and started without restarting the connecting application [ticket:121] Mike Bayer 2006-08-26 21:32:11 +00:00
  • 3188bd0567 [ticket:266] constraint name in PrimaryKeyConstraint Mike Bayer 2006-08-26 20:22:48 +00:00
  • ad8b3c63e0 doc bug [ticket:278] Mike Bayer 2006-08-26 20:16:19 +00:00
  • 2d4dfb959b - added "timezone=True" flag to DateTime and Time types. postgres so far will convert this to "TIME[STAMP] (WITH|WITHOUT) TIME ZONE", so that control over timezone presence is more controllable (psycopg2 returns datetimes with tzinfo's if available, which can create confusion against datetimes that dont). [ticket:275] Mike Bayer 2006-08-26 19:46:33 +00:00
  • 5b8ab3e8ab added "dev" tag to default setup some extra README Mike Bayer 2006-08-26 19:00:37 +00:00
  • 7a15313c9e fixed inaccuracies regarding "connectable" parameter sent to create/drop Mike Bayer 2006-08-26 18:55:05 +00:00
  • 5385cc32c7 TODO for oracle Mike Bayer 2006-08-26 16:16:11 +00:00
  • 23e3420fc9 added limit/offset to union queries Mike Bayer 2006-08-26 14:42:18 +00:00
  • 8260ca2723 - cleanup on connection methods + documentation. custom DBAPI arguments specified in query string, 'connect_args' argument to 'create_engine', or custom creation function via 'creator' function to 'create_engine'. - added "recycle" argument to Pool, is "pool_recycle" on create_engine, defaults to 3600 seconds; connections after this age will be closed and replaced with a new one, to handle db's that automatically close stale connections [ticket:274] Mike Bayer 2006-08-25 16:27:10 +00:00
  • 367e3b61a1 [ticket:282] Mike Bayer 2006-08-23 01:31:37 +00:00
  • f62e5a56e8 the "check for orphans" step will cascade the delete operation to child objects. Mike Bayer 2006-08-22 22:52:12 +00:00
  • a8d1aecfab - urls support escaped characters in passwords [ticket:281] Mike Bayer 2006-08-22 18:58:01 +00:00
  • 3003239beb sqlite dialects can be created without pysqlite installed Mike Bayer 2006-08-21 20:10:56 +00:00
  • 43d3b77307 - unit tests updated to run without any pysqlite installed; pool test uses a mock DBAPI Mike Bayer 2006-08-21 20:01:32 +00:00
  • 4ca1de1783 working on sequence quoting support.... Mike Bayer 2006-08-21 04:38:51 +00:00
  • 435f7b1c38 postgres reflection uses dialect-wide preparer Mike Bayer 2006-08-21 03:51:48 +00:00
  • ec9bc800dc refactoring of ANSIIdentifierPreparer to be one instance per-dialect, simplified caching Mike Bayer 2006-08-21 03:50:23 +00:00
  • d0a3313edf - postgres reflection moved to use pg_schema tables, can be overridden with use_information_schema=True argument to create_engine [ticket:60], [ticket:71] - added natural_case argument to Table, Column, semi-experimental flag for use with table reflection to help with quoting rules [ticket:155] Mike Bayer 2006-08-21 00:37:34 +00:00
  • fa4fc1f4d5 added a compile check to instances() Mike Bayer 2006-08-18 21:33:11 +00:00
  • fc17f7e659 [ticket:280] statement execution supports using the same BindParam object more than once in an expression; simplified handling of positional parameters. nice job by Bill Noon figuring out the basic idea. Mike Bayer 2006-08-18 20:12:39 +00:00
  • c48177f0fe - unit-of-work does a better check for "orphaned" objects that are part of a "delete-orphan" cascade, for certain conditions where the parent isnt available to cascade from. - it is now invalid to declare a self-referential relationship with "delete-orphan" (as the abovementioned check would make them impossible to save) - improved the check for objects being part of a session when the unit of work seeks to flush() them as part of a relationship.. Mike Bayer 2006-08-18 17:21:01 +00:00
  • bd04cffad8 more fixes for [ticket:269], added MSMediumBlob type Mike Bayer 2006-08-18 00:49:57 +00:00
  • 819837884e commit should be outside of the try/except; else when commit fails, rollback gets called which is technically invalid (although SA transaction probably lets it slide...this should also possibly be made more strict) Mike Bayer 2006-08-17 18:04:13 +00:00
  • ef606acacb if a contextual session is established via MapperExtension.get_session (as it is using the sessioncontext plugin, etc), a lazy load operation will use that session by default if the parent object is not persistent with a session already. Mike Bayer 2006-08-17 00:12:59 +00:00
  • 698725a1a9 [ticket:277] check if pg/oracle sequence exists. checks in all cases before CREATE SEQUENCE/ DROP SEQUENCE Mike Bayer 2006-08-16 19:48:24 +00:00
  • 20d334ca11 added "requires_quotes" step, subclasses of ANSIIdentifierPreparer can override Mike Bayer 2006-08-16 00:36:30 +00:00
  • 78a369ac3a fixes for threadless python compiles Jonathan Ellis 2006-08-15 16:26:20 +00:00
  • 8b313b356e - eesh ! the tutorial doctest was broken for quite some time. - add_property() method on mapper does a "compile all mappers" step in case the given property references a non-compiled mapper (as it did in the case of the tutorial !) Mike Bayer 2006-08-15 02:02:47 +00:00
  • d73ca890f3 the latest... Mike Bayer 2006-08-12 23:35:54 +00:00
  • ae5e73cbc1 modifcation to unitofwork to not maintain ordering within the "new" list or within the UOWTask "objects" list; instead, new objects are tagged with an ordering identifier as they are registered as new with the session, and the INSERT statements are then sorted within the mapper save_obj. the INSERT ordering has basically been pushed allthe way to the end of the flush cycle. that way the various sorts and organizations occuring within UOWTask (particularly the circular task sort) dont have to worry about maintaining order (which they werent anyway) rel_0_2_7 Mike Bayer 2006-08-12 22:58:49 +00:00
  • a2f00afe36 fix to __eq__ method in a test object Mike Bayer 2006-08-12 21:23:34 +00:00
  • 605ed429cd improved error message when a backref conflicts with a column-based property Mike Bayer 2006-08-12 21:08:31 +00:00
  • 98933ba84d added MSTinyInteger to MS-SQL [ticket:263] Mike Bayer 2006-08-12 20:28:17 +00:00
  • cf7e168345 fixed construction of order_by with distinct query Mike Bayer 2006-08-12 20:25:38 +00:00
  • cfa2864175 0.2.7 prep Mike Bayer 2006-08-12 20:19:03 +00:00
  • 0b895ee62a some fixes to sqlite datetime organization, was improperly reflecting the "date" type as a "datetime" Mike Bayer 2006-08-12 20:12:18 +00:00
  • 26efe4f643 fixes to types so that database-specific types more easily used; fixes to mysql text types to work with this methodology [ticket:269] Mike Bayer 2006-08-12 19:50:07 +00:00
  • ca84cbc8de [ticket:268] Mike Bayer 2006-08-12 19:15:35 +00:00
  • 2f07efe165 refactored ANSIIdentifierPreparer to be visitor based; minimizes escaping operations and isinstance()/duck-typing calls Mike Bayer 2006-08-12 18:50:35 +00:00
  • 4e033e73f3 turned off default case-folding rules as they wreak havoc with the current unittests, temporary isintance() checks in ASNIIdentifierPreparer which will be replaced with visit_ methodology Mike Bayer 2006-08-12 17:53:04 +00:00
  • 6975677248 added docs for ON UPDATE/DELETE, identifier quoting Mike Bayer 2006-08-12 17:28:59 +00:00
  • 9e8fad2abc quoting facilities set up so that database-specific quoting can be turned on for individual table, schema, and column identifiers when used in all queries/creates/drops. Enabled via "quote=True" in Table or Column, as well as "quote_schema=True" in Table. Thanks to Aaron Spike for his excellent efforts. [ticket:155] Mike Bayer 2006-08-12 17:28:15 +00:00
  • fb88b031d9 comment Mike Bayer 2006-08-11 23:21:51 +00:00
  • f3bee1cdd5 [ticket:251] Mike Bayer 2006-08-11 21:50:14 +00:00
  • 89355463c5 removed superfluous **params Mike Bayer 2006-08-11 21:48:03 +00:00
  • c48727aeed SelectResults will use a subselect, when calling an aggregate (i.e. max, min, etc.) on a SelectResults that has an ORDER BY clause [ticket:252] Mike Bayer 2006-08-11 21:43:55 +00:00
  • 4488b65545 reflected 'mediumint' type Mike Bayer 2006-08-11 21:37:55 +00:00
  • 61b7d4fb5a inheritance check uses issubclass() instead of direct __mro__ check to make sure class A inherits from B, allowing mapper inheritance to more flexibly correspond to class inheritance [ticket:271] Mike Bayer 2006-08-11 19:16:27 +00:00
  • 549673753a added "nowait" flag to Select() [ticket:270] Mike Bayer 2006-08-11 18:48:59 +00:00
  • 3d917a4a24 fixed ms-sql connect() to work with adodbapi Mike Bayer 2006-08-11 18:23:48 +00:00
  • 66b7de5fdb moved rollback catch to mysql module... Mike Bayer 2006-08-10 19:17:45 +00:00
  • b84796d095 fix mysql borkage Jonathan Ellis 2006-08-10 06:40:44 +00:00
  • 36cd92f318 fix mysql borkage Jonathan Ellis 2006-08-10 06:32:25 +00:00
  • 1a0ae50c49 added __contains__ to OrderedProperties, so that rabbit is not in there Mike Bayer 2006-08-10 00:03:33 +00:00
  • dde6a5aac0 all create()/drop() calls have a keyword argument of "connectable". "engine" is deprecated. fixes [ticket:255] Mike Bayer 2006-08-09 23:58:07 +00:00
  • 4b73f0859f added an objectstore clear Mike Bayer 2006-08-09 23:56:29 +00:00
  • e4a47d7e4b fix to lazy loads when mapping to joins Mike Bayer 2006-08-08 16:39:18 +00:00
  • aff1798c36 adjusted __getstate__ on InstrumentedList to further avoid callables getting stuck in there... Mike Bayer 2006-08-08 01:02:16 +00:00
  • a38cc03bb6 fixed possible error in mysql reflection where certain versions return an array instead of string for SHOW CREATE TABLE call Mike Bayer 2006-08-07 21:58:53 +00:00
  • af59af2359 added start of a many-to-many test Mike Bayer 2006-08-07 05:10:59 +00:00
  • 63519a4f04 fixed small pickle bug with lazy loaders [ticket:265] Mike Bayer 2006-08-06 16:48:30 +00:00
  • 2801ced986 improvement over previous changeset: SingletonThreadPool has a size and does a cleanup pass, so that only a given number of thread-local connections stay around (needed for sqlite applications that dispose of threads en masse) Mike Bayer 2006-08-05 15:32:00 +00:00
  • 2d95e9daec temporary workaround dispose_local() added to SingletonThreadPool for sqlite applications that dispose of threads en masse Mike Bayer 2006-08-05 15:11:52 +00:00
  • 110eb68e1a added reflected 'tinyint' type to MS-SQL [ticket:263] Mike Bayer 2006-08-04 23:39:11 +00:00
  • f8c9688b41 fixed mysql reflection of default values to be PassiveDefault Mike Bayer 2006-08-04 06:47:53 +00:00
  • 8f94457e56 adjustments to pool stemming from changes made for [ticket:224]. overflow counter should only be decremented if the connection actually succeeded. added a test script to attempt testing this. Mike Bayer 2006-08-04 06:21:58 +00:00
  • 2ca2c769cd oops: committed the rest of [changeset:1759], removed print in sqlite + restored error check in Join Mike Bayer 2006-08-03 00:33:00 +00:00