Project

General

Profile

Statistics
| Revision:
Name Size Revision Age Author Comment
  _archive 1598 over 12 years Aaron Marcuse-Kubitza Moved _archive/tapir2flatClient/trunk/client/ t...
  bin 2982 about 12 years Aaron Marcuse-Kubitza vegbien_dest: Added temp to schemas list so the...
  config 272 over 12 years Aaron Marcuse-Kubitza Moved bien_password to new config dir
  inputs 3023 about 12 years Aaron Marcuse-Kubitza inputs/import.stats.xls: Bolded the ms/row tota...
  lib 3034 about 12 years Aaron Marcuse-Kubitza sql.py: mk_insert_select(): INSERT IGNORE: Swit...
  mappings 2529 about 12 years Aaron Marcuse-Kubitza mappings/DwC2-VegBIEN.specimens.csv: Removed _t...
  schemas 2980 about 12 years Aaron Marcuse-Kubitza Added temp schema to store intermediate tables ...
  to_do 2547 about 12 years Aaron Marcuse-Kubitza to_do/timeline.doc: Updated to reflect the mont...
Makefile 10.2 KB 2983 about 12 years Aaron Marcuse-Kubitza main Makefile: Added explicit schemas/temp/rein...
README.TXT 2.76 KB 2976 about 12 years Aaron Marcuse-Kubitza README.TXT: Changed documentation to use make s...
map 978 Bytes 1979 about 12 years Aaron Marcuse-Kubitza root map: Fill in defaults for inputs from VegB...

Latest revisions

# Date Author Comment
3034 06/22/2012 04:49 PM Aaron Marcuse-Kubitza

sql.py: mk_insert_select(): INSERT IGNORE: Switched to using FOR loop rather than cursors because cursors are only needed if you want to process multiple rows in the same EXCEPTION block (which you can't do because then all the previous inserts will be rolled back if one row is a duplicate key)

3033 06/22/2012 04:40 PM Aaron Marcuse-Kubitza

sql.py: mk_insert_select(): INSERT IGNORE: Moved FETCH FROM cursor outside EXCEPTION block since only the insert needs to have unique_violations ignored

3032 06/22/2012 04:33 PM Aaron Marcuse-Kubitza

sql.py: put_table(): Removed no longer needed EXCLUSIVE lock on the output table

3031 06/22/2012 04:25 PM Aaron Marcuse-Kubitza

add_index_col(): Run all operations with log_level=3 because it is the equivalent of creating an index, and that has log_level=3 to be excluded from the primary algorithm steps. add_not_null(): Run query with log_level=3 because it's an internal operation and for add_index_col() above.

3030 06/22/2012 04:23 PM Aaron Marcuse-Kubitza

sql.py: update(): Pass any log_level to run_query()

3029 06/22/2012 04:11 PM Aaron Marcuse-Kubitza

xml_func.py: process(): Added pass-through optimization for aggregating functions with one arg

3028 06/22/2012 04:02 PM Aaron Marcuse-Kubitza

xml_func.py: process(): Call list() on the items' iterator so that its length can be determined wherever it's used without needing to call list() on it separately

3027 06/22/2012 03:43 PM Aaron Marcuse-Kubitza

sql.py: mk_select(): Put '*' on same line as 'SELECT' if there is no DISTINCT ON, to avoid extra newlines

3026 06/22/2012 03:38 PM Aaron Marcuse-Kubitza

sql_gen.py: NamedTable.to_str(): Put AS clause on same line as code being named if it didn't contain a newline, to avoid extra newlines

3025 06/22/2012 03:29 PM Aaron Marcuse-Kubitza

sql.py: run_query(): Always parse exceptions, whether recover is set or not, to avoid making the caller set recover just to parse exceptions. If recover is not set, just don't run any queries when generating the parsed exception and return an empty value for the needed information. (A partial parsed exception is better than an unparsed one.)

View all revisions | View revisions

Also available in: Atom