Revision 2419
Added by Aaron Marcuse-Kubitza over 12 years ago
lib/sql.py | ||
---|---|---|
951 | 951 |
if has_joins: |
952 | 952 |
select_joins = input_joins+[sql_gen.Join(out_table, join_cols)] |
953 | 953 |
db.log_debug('Getting output pkeys of existing/inserted rows') |
954 |
run_query_into_pkeys(*mk_select(db, select_joins, pkeys_cols, start=0)) |
|
954 |
run_query_into_pkeys(*mk_select(db, select_joins, pkeys_cols, |
|
955 |
order_by=None, start=0)) |
|
955 | 956 |
else: |
956 | 957 |
add_row_num(db, insert_out_pkeys) # for joining with input pkeys |
957 | 958 |
|
... | ... | |
963 | 964 |
db.log_debug('Joining together output and input pkeys') |
964 | 965 |
pkey_joins = [insert_in_pkeys, sql_gen.Join(insert_out_pkeys, |
965 | 966 |
{row_num_col: sql_gen.join_same_not_null})] |
966 |
run_query_into_pkeys(*mk_select(db, pkey_joins, pkeys_names, start=0)) |
|
967 |
run_query_into_pkeys(*mk_select(db, pkey_joins, pkeys_names, |
|
968 |
order_by=None, start=0)) |
|
967 | 969 |
|
968 | 970 |
db.log_debug('Adding pkey on returned pkeys table to enable fast joins') |
969 | 971 |
index_pkey(db, pkeys) |
... | ... | |
973 | 975 |
{in_pkey: sql_gen.join_same_not_null}, sql_gen.filter_out)] |
974 | 976 |
# must use join_same_not_null or query will take forever |
975 | 977 |
run_query_into_pkeys(*mk_select(db, missing_rows_joins, |
976 |
[in_pkey_col, sql_gen.NamedCol(out_pkey, None)], start=0)) |
|
978 |
[in_pkey_col, sql_gen.NamedCol(out_pkey, None)], order_by=None, |
|
979 |
start=0)) |
|
977 | 980 |
|
978 | 981 |
return sql_gen.Col(out_pkey, pkeys) |
979 | 982 |
|
Also available in: Unified diff
sql.py: put_table(): run_query_into_pkeys() calls use order_by=None in their select statements because there is a pkey, so order (row #) does not matter