]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
(no commit message)
authorMike Bayer <mike_mp@zzzcomputing.com>
Tue, 20 Sep 2005 08:53:31 +0000 (08:53 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Tue, 20 Sep 2005 08:53:31 +0000 (08:53 +0000)
lib/sqlalchemy/objectstore.py

index 00108cdc3f2f68d293c1b61b1f5d78c56edace85..02d8938036b0d736bda351fed13fdc3a5f70a018 100644 (file)
@@ -341,7 +341,7 @@ class UOWTransaction(object):
             head = None
             for tup in tuples:
                 (parent, child) = (tup[0], tup[1])
-                
+                print "tuple: " + str(parent) + " " + str(child)
                 try:
                     parentnode = nodes[parent]
                 except KeyError:
@@ -358,11 +358,13 @@ class UOWTransaction(object):
                 elif head is childnode:
                     head = parentnode
                 if childnode.parent is not None:
+                    print "splicing: " + str(parentnode.mapper) + " onto " + str(childnode.parent.mapper)
                     del childnode.parent.children[childnode]
                     childnode.parent.children.append(parentnode)
                 parentnode.children.append(childnode)
                 childnode.parent = parentnode
-
+                print "made a chain: " + str(childnode.parent.mapper) + " " + str(childnode.mapper)
+                
             for item in allitems:
                 if not nodes.has_key(item):
                     node = Node(item)
@@ -387,19 +389,21 @@ class UOWTransaction(object):
             
         mappers = []
         for task in self.tasks.values():
-            #print "new node for " + str(task)
+            print "new node for " + str(task)
             mappers.append(task.mapper)
             bymapper[(task.mapper, task.isdelete)] = task
-            
     
         head = maketree(self.dependencies, mappers)
         res = []
         tasklist = sort(head, False, res)
+
         res = []
         sort(head, True, res)
         res.reverse()
         tasklist += res
 
+        assert(len(self.tasks.values()) == len(tasklist)) # "sorted task list not the same size as original task list"
+
         import string,sys
         print string.join([str(t) for t in tasklist], ',')
         #sys.exit(0)