[Checkins] SVN: relstorage/trunk/relstorage/adapters/packundo.py Avoid "select distinct", which can break MySQL's query optimizer, in favor of "insert ignore".
Shane Hathaway
shane at hathawaymix.org
Wed Feb 2 05:06:38 EST 2011
Log message for revision 120042:
Avoid "select distinct", which can break MySQL's query optimizer, in favor of "insert ignore".
Changed:
U relstorage/trunk/relstorage/adapters/packundo.py
-=-
Modified: relstorage/trunk/relstorage/adapters/packundo.py
===================================================================
--- relstorage/trunk/relstorage/adapters/packundo.py 2011-02-02 09:06:51 UTC (rev 120041)
+++ relstorage/trunk/relstorage/adapters/packundo.py 2011-02-02 10:06:38 UTC (rev 120042)
@@ -770,8 +770,8 @@
_script_pre_pack_follow_child_refs = """
%(TRUNCATE)s temp_pack_child;
- INSERT INTO temp_pack_child
- SELECT DISTINCT to_zoid
+ INSERT IGNORE INTO temp_pack_child
+ SELECT to_zoid
FROM object_ref
JOIN temp_pack_visit USING (zoid)
WHERE object_ref.tid >= temp_pack_visit.keep_tid;
@@ -1173,8 +1173,8 @@
_script_pre_pack_follow_child_refs = """
%(TRUNCATE)s temp_pack_child;
- INSERT INTO temp_pack_child
- SELECT DISTINCT to_zoid
+ INSERT IGNORE INTO temp_pack_child
+ SELECT to_zoid
FROM object_ref
JOIN temp_pack_visit USING (zoid);
More information about the checkins
mailing list