]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- zoomark adjustments
authorMike Bayer <mike_mp@zzzcomputing.com>
Fri, 7 Nov 2008 17:45:19 +0000 (17:45 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Fri, 7 Nov 2008 17:45:19 +0000 (17:45 +0000)
- changelog has separate category for 'features'

CHANGES
test/profiling/compiler.py
test/profiling/zoomark.py

diff --git a/CHANGES b/CHANGES
index ace4452359827bf96631bc015354c7b885b9263a..27db34f583bff1b56a9182ed58edd5c79d1ec5bb 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -6,13 +6,42 @@ CHANGES
 =======
 0.5.0rc3
 ========
-- orm
+- features
 
     - Added two new hooks to SessionExtension: after_bulk_delete and
       after_bulk_update. after_bulk_delete is called after a bulk delete()
       operation on a query. after_bulk_update is called after a bulk update()
       operation on a query.
 
+    - SQL compiler optimizations.  The call count for compiling a
+      typical select() construct is 20% less versus 0.5.0rc2.
+
+    - Dialects can now generate label names of adjustable length.
+      Pass in the argument "label_length=<value>" to create_engine()
+      to adjust how many characters max will be present in dynamically
+      generated column labels, i.e. "somecolumn AS somelabel".  Any 
+      value less than 6 will result in a label of minimal size,
+      consiting of an underscore and a numeric counter.
+      The compiler uses the value of dialect.max_identifier_length
+      as a default. [ticket:1211]
+
+    - Added a new extension sqlalchemy.ext.serializer.  Provides
+      Serializer/Deserializer "classes" which mirror Pickle/Unpickle,
+      as well as dumps() and loads().  This serializer implements
+      an "external object" pickler which keeps key context-sensitive
+      objects, including engines, sessions, metadata, Tables/Columns,
+      and mappers, outside of the pickle stream, and can later 
+      restore the pickle using any engine/metadata/session provider.   
+      This is used not for pickling regular object instances, which are 
+      pickleable without any special logic, but for pickling expression
+      objects and full Query objects, such that all mapper/engine/session
+      dependencies can be restored at unpickle time.
+
+    - Wrote a docstring for Oracle dialect.  Apparently that Ohloh
+      "few source code comments" label is starting to sting :).
+
+- bugfixes and behavioral changes
+- orm
     - "not equals" comparisons of simple many-to-one relation to an
       instance will not drop into an EXISTS clause and will compare
       foreign key columns instead.
@@ -76,15 +105,6 @@ CHANGES
       All the regexp-based guessing about statements returning rows 
       has been removed [ticket:1212].
     
-    - Dialects can now generate label names of adjustable length.
-      Pass in the argument "label_length=<value>" to create_engine()
-      to adjust how many characters max will be present in dynamically
-      generated column labels, i.e. "somecolumn AS somelabel".  Any 
-      value less than 6 will result in a label of minimal size,
-      consiting of an underscore and a numeric counter.
-      The compiler uses the value of dialect.max_identifier_length
-      as a default. [ticket:1211]
-        
     - Further simplified SELECT compilation and its relationship to
       result row processing.
 
@@ -111,9 +131,6 @@ CHANGES
       can be reenabled with optimize_limits=True create_engine()
       flag.  [ticket:536]
 
-    - Wrote a docstring for Oracle dialect.  Apparently that Ohloh
-      "few source code comments" label is starting to sting :).
-
     - Setting the auto_convert_lobs to False on create_engine() will
       also instruct the OracleBinary type to return the cx_oracle
       LOB object unchanged.
@@ -127,17 +144,6 @@ CHANGES
       lower case.
 
 - ext
-    - Added a new extension sqlalchemy.ext.serializer.  Provides
-      Serializer/Deserializer "classes" which mirror Pickle/Unpickle,
-      as well as dumps() and loads().  This serializer implements
-      an "external object" pickler which keeps key context-sensitive
-      objects, including engines, sessions, metadata, Tables/Columns,
-      and mappers, outside of the pickle stream, and can later 
-      restore the pickle using any engine/metadata/session provider.   
-      This is used not for pickling regular object instances, which are 
-      pickleable without any special logic, but for pickling expression
-      objects and full Query objects, such that all mapper/engine/session
-      dependencies can be restored at unpickle time.
       
 - misc
     - util.flatten_iterator() func doesn't interpret strings with
index 2f1cbad5962a9cfcb507512cc486b669c5d3e485..26260068a622948edd147c6557cf576444d50d17 100644 (file)
@@ -23,7 +23,7 @@ class CompileTest(TestBase, AssertsExecutionResults):
     def test_update(self):
         t1.update().compile()
 
-    @profiling.function_call_count(185, versions={'2.4':133})
+    @profiling.function_call_count(185, versions={'2.4':118})
     def test_select(self):
         s = select([t1], t1.c.c2==t2.c.c1)
         s.compile()
index 08215454a9ac5123ffc7dd85fa7888a4a71d81d3..a91539d5a05262b7eda694374123ff636ceecdbf 100644 (file)
@@ -332,23 +332,23 @@ class ZooMarkTest(TestBase):
     def test_profile_2_insert(self):
         self.test_baseline_2_insert()
 
-    @profiling.function_call_count(3858, {'2.4': 2557})
+    @profiling.function_call_count(3858, {'2.4': 2347})
     def test_profile_3_properties(self):
         self.test_baseline_3_properties()
 
-    @profiling.function_call_count(14752, {'2.4': 10549})
+    @profiling.function_call_count(14752, {'2.4': 9950})
     def test_profile_4_expressions(self):
         self.test_baseline_4_expressions()
 
-    @profiling.function_call_count(1442, {'2.4': 1084})
+    @profiling.function_call_count(1442, {'2.4': 1001})
     def test_profile_5_aggregates(self):
         self.test_baseline_5_aggregates()
 
-    @profiling.function_call_count(1904, {'2.4': 1256})
+    @profiling.function_call_count(1904, {'2.4': 1193})
     def test_profile_6_editing(self):
         self.test_baseline_6_editing()
 
-    @profiling.function_call_count(3110, {'2.4': 2198})
+    @profiling.function_call_count(3110, {'2.4': 1998})
     def test_profile_7_multiview(self):
         self.test_baseline_7_multiview()