Activity
From 11/19/2012 to 12/18/2012
12/18/2012
- 11:42 PM Revision 6902: sql.py: DbConn.col_info(): Fixed bug where need to pass through cacheable param to run_query()
- 11:41 PM Revision 6901: sql.py: DbConn.col_info(): Fixed bug where need to use .to_str(self) instead of self.esc_value() because self.esc_value() expects a value, not a sql_gen.Literal instance
- 11:34 PM Revision 6900: sql.py: DbConn.col_info(): Fixed bug where self needs to be used everywhere that db normally is, because this is a DbConn method rather than a global function
- 11:31 PM Revision 6899: sql.py: DbConn.col_info(): For PostgreSQL, use pg_catalog tables directly instead of their views in information_schema. This allows using ::regclass to look up the table in the search_path, and fixes a bug in imports with an explicit public schema where column types were looked up in public instead of public.<version>. Also don't wrap default using sql_gen.as_Code() when it's None (indicating no default value, aka default=NULL), because this value is interpreted specially by sql_gen.TypedCol.
- 11:06 PM Revision 6898: inputs/Makefile: Input data: $(rsyncSrcs): Also include log files other than install.log.sql
- 09:41 PM Revision 6897: import_all: Run all imports (not just the main datasources' import) with $import_source turned off, so that the Source tables will not be imported a second time when the datasource's main tables are imported. Note that it's not necessary to wait for asynchronous commands after the jobs for the main import are started (so that $import_source is not unset until after they are started), because with_all does not return until all jobs are started and have noted the $import_source setting in effect in the shell environment.
- 09:32 PM Revision 6896: import_all: Source tables import: Fixed bug where need to use $all option to with_all to also include special datasources starting with "."
- 09:23 PM Revision 6895: make_analytical_db: Also create taxon_trait materialized view
12/17/2012
- 08:17 PM Revision 6894: inputs/*/*/map.csv: Reverted special OMIT mappings for input columns that have the same name as a VegCore table and have not yet been mapped to a VegCore term
- 08:06 PM Revision 6893: mappings/Makefile: VegCore.csv: Filter out the VegCore tables so they are not matched as terms. This is necessary because some terms have the same name as a table, but the term should be the match rather than the table.
- 08:04 PM Revision 6892: mappings/VegCore.csv: Changed line endings to \r\n to match the output of filter_out_ci
- 05:51 PM Revision 6891: inputs/CTFS/TaxonOccurrence/map.csv: Mapped SpeciesAuthority
- 04:59 PM Revision 6890: backups/Makefile: Synchronization: $(remote): Fixed bug where need trailing / at end of path
- 04:32 PM Revision 6889: backups/Makefile: Synchronization: $(remote): Updated path to backups
- 04:30 PM Revision 6888: README.TXT: Data import: On jupiter: Updated path to backups
- 04:25 PM Revision 6887: README.TXT: Installation: Added command to change to the directory of the checked out files
- 04:24 PM Revision 6886: README.TXT: Installation: Added command to check out files from svn
- 03:51 PM Revision 6885: schemas/vegbien.sql: Added taxon_trait materialized view
- 02:43 PM Revision 6884: mappings/Veg+-VegCore.csv: Sources: Removed redundant bien2_ prefix from bien2_staging subnamespace
- 02:21 PM Revision 6883: schemas/vegbien.sql: trait: trait_unique: Removed value and units because there should only be one value of a trait for each taxonoccurrence
- 02:18 PM Revision 6882: schemas/vegbien.sql: Reattached trait to taxonoccurrence instead of taxonlabel, because the TraitObservation traits data is actually associated with a particular occurrence (plant observation complete with location, date, etc.), rather than just a taxon
- 01:31 PM Revision 6881: Added inputs/bien2_traits/
- 01:29 PM Revision 6880: mappings/VegCore-VegBIEN.csv: Mapped traits-related DwC terms measurementType, measurementValue, measurementUnit
- 12:34 PM Revision 6879: schemas/vegbien.ERD.mwb: Added trait table to ERD
- 12:25 PM Revision 6878: schemas/vegbien.sql: trait: Added trait_unique unique index
- 12:19 PM Revision 6877: schemas/vegbien.sql: trait: Added units field
- 12:14 PM Revision 6876: schemas/vegbien.sql: trait: Renamed type to name because TraitObservation stores trait names rather than types
- 12:07 PM Revision 6875: schemas/vegbien.sql: trait: Linked to taxonlabel instead of stemobservation, because TraitObservation's traits are taxon-level and stem-level traits currently go in named fields instead of a stem traits table
- 11:45 AM Revision 6874: inputs/.TNRS/tnrs_*/map.csv: Remapped Source to OMIT so it won't match to the Source table
- 11:37 AM Revision 6873: inputs/.TNRS/tnrs_other/map.csv: Updated for new VegCore terms, which include Source as a table name. This field will need to be remapped so it doesn't collide with the table name.
- 10:04 AM Revision 6872: inputs/import.stats.xls: Updated import times
- 10:01 AM Revision 6871: README.TXT: Data import: Added step to check that the source table contains entries for all inputs
12/14/2012
- 01:01 PM Revision 6870: Regenerated vegbien.ERD exports
- 12:52 PM Revision 6869: make_analytical_db: Also populate owner_count
- 12:51 PM Revision 6868: make_analytical_db: Generate provider_count before analytical_aggregate because it's much faster
- 12:50 PM Revision 6867: schemas/vegbien.sql: Added materialized view owner_count, generated from owner_count_view
- 12:21 PM Revision 6866: make_analytical_db: Also populate provider_count
- 12:20 PM Revision 6865: schemas/vegbien.sql: Added materialized view provider_count, generated from provider_count_view
- 12:09 PM Revision 6864: schemas/vegbien.sql: Added provider_count_view for counts of occurrences per top-level provider
- 11:56 AM Revision 6863: Regenerated mappings/VegCore.htm
- 11:52 AM Revision 6862: Regenerated mappings/VegCore.htm
- 11:10 AM Revision 6861: Regenerated mappings/VegCore.htm
- 10:39 AM Revision 6860: schemas/vegbien.sql: provider_view: Sort NULL sourcetype last
- 10:36 AM Revision 6859: schemas/vegbien.sql: Added provider_view, which combines source and sourcename
- 10:31 AM Revision 6858: schemas/vegbien.sql: sourcename: Gave public_ SELECT permissions
- 10:17 AM Revision 6857: Regenerated mappings/VegCore.htm
- 10:15 AM Revision 6856: README.TXT: Maintenance: VegCore data dictionary: Regenerate everything in mappings/ that changes when VegCore.htm changes (such as VegCore.tables.redmine) instead of just VegCore.csv
- 09:29 AM Revision 6855: inputs/*/Source/map.csv without mappings: Added referenceType, etc. mappings. This also ensures that the source table entry for the datasource will be created before the herbaria list is imported, causing all top-level datasources to sort at the top of the source table.
- 09:02 AM Revision 6854: schemas/vegbien.sql: Granted the public_ user read-only access to the contents of the source table
- 08:53 AM Revision 6853: root Makefile: PostgreSQL: $(editPhppgadmin): Ignore errors if patch has already been applied
- 08:52 AM Revision 6852: lib/phpPgAdmin.config.inc.php.diff: Remove context so segment matching would depend only on the $conf['extra_login_security'] line itself
- 08:29 AM Revision 6851: mappings/Makefile: Added VegCore.tables.redmine, which contains the Redmine-formatted list of VegCore tables to paste into <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegCore#Tables>
- 08:18 AM Revision 6850: mappings/: Removed no longer used VegCore.redmine. VegCore.csv is now generated from the Redmine page instead of the other way around.
- 08:12 AM Revision 6849: mappings/Makefile: Added VegCore.tables.csv, which contains all the tables in the VegCore data dictionary
- 06:59 AM Revision 6848: README.TXT: Data import: backups/fix_perms: Run using sudo to also change permissions on files owned by the bien user, and to change the owner of files owned by you to the bien user
- 06:45 AM Revision 6847: Regenerated mappings/VegCore.csv, which adds categories
- 05:47 AM Revision 6846: README.TXT: Maintenance: Added instructions to regenerate mappings/VegCore.csv whenever the VegCore data dictionary page is changed
- 05:41 AM Revision 6845: mappings/Makefile: Generate VegCore.csv from the VegCore data dictionary page by extracting all HTML anchors (in Redmine, each section heading, and therefore each VegCore term, gets its own anchor)
- 05:34 AM Revision 6844: mappings/VegCore.csv: Changed line endings to \n to match what sed generates from the VegCore data dictionary page
- 05:31 AM Revision 6843: mappings/VegCore.csv: Removed informational columns, because this information is now maintained on the VegCore data dictionary page at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegCore>
- 05:11 AM Revision 6842: mappings/Veg+-VegCore.csv.csv: Removed hypothetical terms which are not in use by any VegBIEN datasource
- 05:00 AM Revision 6841: mappings/Veg+-VegCore.csv: habit: Remapped to growthForm, which replaces verbatimGrowthForm
- 04:59 AM Revision 6840: mappings/Veg+-VegCore.csv.csv: Removed hypothetical terms which are not in use by any VegBIEN datasource
- 04:50 AM Revision 6839: mappings/VegCore.csv: BIEN2 terms: Added sub-namespaces (bien_web, geoscrub, etc.) to source URLs
- 04:15 AM Revision 6838: dict2redmine: redmine_add_links(): Hyperlink just the source name, not also the () around it
- 03:54 AM Revision 6837: dict2redmine: RedmineDictWriter: Use h2 instead of h3 for the term name so that the term will be normal-sized instead of smaller in the Redmine table of contents
- 03:52 AM Revision 6836: dict2redmine: Renamed redmine_url() to redmine_link() because it generates links, not URLs
- 03:49 AM Revision 6835: dict2redmine: redmine_add_links(): Put citations in () instead of [] to avoid conflicting with the Redmine syntax for internal links ( [[...]] )
- 03:18 AM Revision 6834: mappings/VegCore.csv: Terms: Removed namespace prefixes (dcterms:), because VegCore terms are globally unique within VegCore and there should not be multiple versions of the same VegCore term with different namespaces. Provenance is instead indicated in the Sources column, which contains not just a namespace but a full URL to each source term.
- 03:00 AM Revision 6833: dict2redmine: Hyperlink each term to its anchor in the data dictionary, rather than to its first source, which is not necessarily the definitive definition of the term. This also allows clicking the term to get its permalink in the address bar, rather than having to click the small, light gray paragraph mark next to the term name that Redmine provides.
- 02:57 AM Revision 6832: dict2redmine: redmine_add_links(): Fixed bug where need to avoid matching internal links ( [[...]] ) as citations ( [...] )
- 02:46 AM Revision 6831: mappings/VegCore.csv: Term names: Changed special characters to _ because Redmine doesn't support special characters in HTML anchors (it removes everything except letters, numbers, _, and -)
- 02:42 AM Revision 6830: mappings/Makefile: .Veg+-VegCore.csv.last_cleanup: Also canon the output (VegCore) column to the VegCore.csv vocabulary. ? prefixes are not a problem because there are always at least two alternatives listed for these terms, so canon will not modify the output field.
- 01:49 AM Revision 6829: psql_script_vegbien: Run psql_vegbien with `nice -n +5` to prevent CPU-intensive operations from slowing down the shell/UI
- 01:46 AM Revision 6828: inputs/import.stats.xls: Updated import times
- 01:37 AM Revision 6827: Regenerated inputs/CVS/taxonObservation_/new_terms.csv. Note that it includes mappings to terms which are not in mappings/VegCore-VegBIEN.csv, which are prefixed with *.
- 01:34 AM Revision 6826: input.Makefile: Maps validation: %/new_terms.csv: Undid incorrect change of column to filter terms out of. This actually needs to be the input column, even though unmapped_terms.csv is generated from the output column, because it's possible to have a mapping to a term which is not in mappings/VegCore-VegBIEN.csv, and such a term would show up in unmapped_terms.csv but should not be filtered out of new_terms.csv.
- 01:17 AM Revision 6825: lib/phpPgAdmin.login.php.diff: public_ user's password message: Print as its own message instead of appending it to $msg. Print it before any error message so it always appears at the top of the page.
- 12:51 AM Revision 6824: root Makefile: PostgreSQL: phpPgAdmin: Edit config file to allow passwordless logins. Edit login page to fill in public_ as the default username and add a message to leave the password blank for that user.
12/12/2012
- 10:45 PM Revision 6823: root Makefile: $(postgresReload-*): Ignore `mv -n` errors, which generally indicate that the existing *.conf was already renamed to *.conf.old
- 10:36 PM Revision 6822: Makefile mk_db, schemas/pg_hba*.conf: Added passwordless public_ user with access to just the database schema. Note that in PostgreSQL, only users with explicit GRANT permissions on a table can read data in that table, but all DB users with a login can view all table schemas.
- 10:26 PM Revision 6821: README.TXT: Maintenance: system updates that affect PostgreSQL: Added that this applies to both Linux and Mac OS X
- 10:26 PM Revision 6820: README.TXT: Maintenance: system updates that affect PostgreSQL: list of things that could break if PostgreSQL is not restarted: Added that you may not be able to access the database as the postgres superuser
- 10:24 PM Revision 6819: README.TXT: Maintenance: system updates that affect PostgreSQL: list of things that could break if PostgreSQL is not restarted: Added that you may not be able to access the database as the postgres superuser
- 09:40 PM Revision 6818: backups/fix_perms: Removed world read permissions from backups dir. Note that this will require superuser permissions to view archived backups on jupiter, because the bien group is not set up with the same members as on vegbiendev. (On jupiter, it contains only stri,regetz,donoghue,naiamh.)
- 08:55 PM Revision 6817: inputs/CVS/taxonObservation_/map.csv: Mapped plantname, plantNameWithAuthority
- 08:47 PM Revision 6816: inputs/CVS/cvs.~.utils.sql: plantconcept_plantnames(): Use CVS's taxonLevel values, which are different from the VegBank plantLevel values that the original version of this function used
- 08:25 PM Revision 6815: inputs/CVS/cvs.~.utils.sql: plantconcept_*(): Use plantConcept.lowestParentConcept_ID,taxonLevel instead of plantStatus.plantParent_ID,plantLevel to find the plantConcept's ancestors, because CVS does not use plantStatus except in very few cases and instead puts the parent link directly in plantConcept
- 08:09 PM Revision 6814: inputs/VegBank/vegbank.~.utils.sql: plantconcept_plantnames(): Made function STABLE instead of VOLATILE because it does not modify any tables
- 08:08 PM Revision 6813: inputs/CVS/cvs.~.utils.sql: plantconcept_plantnames(): Made function STABLE instead of VOLATILE because it does not modify any tables
- 06:57 PM Revision 6812: mappings/VegCore.csv: Removed no longer used verbatimGrowthForm. Use growthForm instead.
- 06:56 PM Revision 6811: mappings/VegCore-VegBIEN.csv: Removed no longer used verbatimGrowthForm. Map to growthForm instead and translate growth form values to VegBIEN's growthform enum.
- 06:54 PM Revision 6810: inputs/Madidi/Organism/map.csv: Habit: Mapped growth form values
- 06:39 PM Revision 6809: inputs/Madidi/Organism/map.csv: Remapped Habit from verbatimGrowthForm to growthForm, which points to the same place
- 06:27 PM Revision 6808: inputs/CVS/taxonObservation_/map.csv: Use denorm_* denormalized taxonomic ranks in place of the normalized ranks when both are provided
- 06:25 PM Revision 6807: input.Makefile: Maps validation: %/new_terms.csv: Fixed bug where need to filter unmapped_terms.csv's terms out of the output column, not the input column, because that's what the unmapped terms are generated from. Usually these columns are the same for unmapped terms, but sometimes an output term is changed from the original column's name but still doesn't match a VegCore term in mappings/VegCore-VegBIEN.csv.
- 06:08 PM Revision 6806: input.Makefile: SVN: add: Added comment with instructions to update all inputs with these settings, using `make inputs/add`
- 06:07 PM Revision 6805: input.Makefile: SVN: add: verify: Also ignore *.xlsx
- 06:00 PM Revision 6804: README.TXT: Data import: Creating enough disk space: Added instructions for removing archived backups to free up space
- 05:15 PM Revision 6803: inputs/CVS/taxonObservation_/map.csv: Fixed bug where taxonLevel, not taxonRank, needs to be mapped to taxonRank, because CVS's taxonRank is actually a number, while taxonLevel contains the corresponding text string
- 05:12 PM Revision 6802: README.TXT: Data import: Before import, added step to make sure there is at least 100GB of disk space
- 04:41 PM Revision 6801: sql_io.py: put_table(): is_function: Fixed bug where need to add the pkeys table's test pkey constraint *after* the data is added rather than when the empty table is created, to avoid adding a pkey constraint that will later be violated by data which returns multiple output rows for an input row (such as calls to _split())
- 04:36 PM Revision 6800: sql_io.py: put_table(): insert_into_pkeys(): Allow callers to override run_query_into()'s add_pkey_ param in case the initial version of the pkeys table should not yet have the test pkey constraint (e.g. because data is added after the table is created)
- 04:24 PM Revision 6799: README.TXT: Data import: Checking for errors: Search for "Command exited with non-zero status" to find errors, which is faster than checking that each input's log ends in "Encountered 0 error(s)"
- 04:13 PM Revision 6798: inputs/import.stats.xls: Updated import times
- 03:50 PM Revision 6797: README.TXT: Data import: import_all: Corrected text of note about time until control is returned to the shell
- 03:42 PM Revision 6796: README.TXT: Data import: Moved download of logs to right after the import is done, because this is a quick step that doesn't depend on the backup- and export-creation steps
12/11/2012
- 11:41 AM Revision 6795: mappings/VegCore-VegBIEN.csv: institutionCode: Removed mapping to sourcename.matched_source_id, which is now autopopulated. Split any list of institutionCodes apart using new _split().
- 11:28 AM Revision 6794: schemas/vegbien.sql: sourcename: Added sourcename_set_matched_source_id() trigger
- 11:22 AM Revision 6793: schemas/functions.sql: Added _split()
- 11:13 AM Revision 6792: schemas/vegbien.sql: sourcelist_unique: Removed COALESCE() around name because it's NOT NULL
- 11:11 AM Revision 6791: schemas/vegbien.sql: Allow multiple institutionCodes for each specimenreplicate by linking new sourcelist table many-to-many to source via sourcename (which is now a linking table)
- 10:50 AM Revision 6790: schemas/vegbien.sql: sourcename: Removed system, which has been replaced by source_id as the scoping field
- 10:42 AM Revision 6789: schemas/vegbien.sql: party: Added sourceaccessioncode and uniquify on it instead when provided. vegbien.ERD.mwb: Rearranged party-related tables to allow the tables to be fully expanded.
- 10:40 AM Revision 6788: schemas/vegbien.sql: Renamed sampletype to observationtype to match the VegCore term
- 10:09 AM Revision 6787: Added inputs/SALVIAS/salvias_users.~.clean_up.sql
- 10:01 AM Revision 6786: inputs/SALVIAS/: Added salvias_users tables
- 10:00 AM Revision 6785: my2pg: Translate blob to bytea
- 09:55 AM Revision 6784: my2pg: Also remove UNIQUE and FULLTEXT inline indexes
- 08:55 AM Revision 6783: mappings/VegCore.csv: UNUSED: Comments: Added Redmine formatting
- 08:55 AM Revision 6782: mappings/VegCore.csv: OMIT: Changed "is omitted" to "should be omitted", because the mappings specify suggestions rather than requirements as to how a field should be used
- 08:51 AM Revision 6781: mappings/VegCore.csv: Removed no longer used subInstitutionCode. Use datasource, institutionCode instead.
- 08:51 AM Revision 6780: schemas/vegbien.sql: analytical_*: Renamed subInstitutionCode to institutionCode because this is the institution storing the specimen, as defined by DwC
- 08:45 AM Revision 6779: schemas/vegbien.sql: analytical_*: Renamed institutionCode to datasource because this is actually the top-level datasource providing the record, not the institution storing the specimen
- 08:38 AM Revision 6778: mappings/VegCore.csv: Added datasource
- 08:32 AM Revision 6777: schemas/vegbien.sql: Renamed sampletype to observationtype to match the VegCore term
- 08:16 AM Revision 6776: mappings/VegCore.csv: referenceType: Added closed list values
- 08:08 AM Revision 6775: mappings/VegCore.csv: observationMeasure: Re-sourced to SALVIAS:observation_type, since SALVIAS comes before VegBIEN in the source precedence
- 08:01 AM Revision 6774: mappings/VegCore.csv: Renamed sampleType to observationType to match the SALVIAS term it's derived from
- 07:57 AM Revision 6773: inputs/SALVIAS-CSV/Plot/map.csv: Mapped observation_type
- 07:37 AM Revision 6772: mappings/VegCore.csv: Added individualCount_*cm_or_more used by analytical_aggregate
- 07:10 AM Revision 6771: mappings/VegCore.csv: subplotX/Y: Added definition
- 07:07 AM Revision 6770: mappings/VegCore.csv: subplot*: Sources: Put SALVIAS:subplot last, because the specific field is closer in meaning to the term than the category
- 07:02 AM Revision 6769: mappings/VegCore.csv: project*Date: Added definition
- 06:58 AM Revision 6768: mappings/VegCore.csv: parentPlotName: Added definition
- 06:56 AM Revision 6767: mappings/VegCore.csv: parent*: Sources: Put VegBank:PARENT_ID last, because the specific field is closer in meaning to the term than the category
- 06:40 AM Revision 6766: mappings/VegCore.csv: locationName: Added definition
- 06:33 AM Revision 6765: mappings/VegCore.csv: eventDate/startDate/endDate: Added definition
- 06:27 AM Revision 6764: mappings/VegCore.csv: locationName: Sources: Put VegX:plotName first because it is closest in meaning to the term
- 06:22 AM Revision 6763: mappings/VegCore.csv: recordedBy*: Added definition
- 06:15 AM Revision 6762: mappings/VegCore.csv: recordedBy.middleName: Added source to DwC:recordedBy
- 06:01 AM Revision 6761: inputs/CVS/: Joined together stemCount and stemLocation tables to create stemLocation_, in order to include the stem size class's measurements in each tagged stem's stemobservation (in addition to in the stemobservation for the aggregateoccurrence as a whole)
- 05:32 AM Revision 6760: inputs/CVS/: Joined together taxonImportance and stemCount tables to create stemCount_, because stemCount actually stores stem abundance by size, rather than grouping stems by organism (http://vegbankdev.nceas.ucsb.edu/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=stemcount&entity=dba_tabledescription&where=where_tablename), and is thus an AggregateOccurrence-related table along with taxonImportance
- 05:30 AM Revision 6759: inputs/CVS/: Joined together taxonImportance and stemCount tables to create stemCount_, because stemCount actually stores stem abundance by size, rather than grouping stems by organism (http://vegbankdev.nceas.ucsb.edu/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=stemcount&entity=dba_tabledescription&where=where_tablename), and is thus an AggregateOccurrence-related table along with taxonImportance
- 04:41 AM Revision 6758: inputs/CVS/taxonObservation_/map.csv: Fixed bug where need to indicate that data is plots data to prevent the specimenreplicate ID from being forwarded to the location ID
- 04:38 AM Revision 6757: inputs/VegBank/taxonobservation_/map.csv: Fixed bug where need to indicate that data is plots data to prevent the specimenreplicate ID from being forwarded to the location ID
- 04:37 AM Revision 6756: mappings/VegCore-VegBIEN.csv: Don't forward specimenreplicate IDs to location for plots data (where the specimenreplicate IDs apply only to the specimen)
- 04:31 AM Revision 6755: xml_func.py: Simplifying functions: Added _eq()
- 04:31 AM Revision 6754: xml_func.py: Added is_scalar()
- 04:30 AM Revision 6753: xml_func.py: process(): row-based mode: preserving complex funcs: Fixed bug where functions with no params would crash reduce() because it requires at least one value when no initial value is specified
- 04:28 AM Revision 6752: Added scalar.py
- 03:39 AM Revision 6751: Renamed inputs/NCU-NCSC/ to NCU because this is the primary herbarium contained in the data
- 03:33 AM Revision 6750: inputs/VegBank/: Joined together stemcount and stemlocation tables to create stemlocation_, in order to include the stem size class's measurements in each tagged stem's stemobservation (in addition to in the stemobservation for the aggregateoccurrence as a whole)
- 03:29 AM Revision 6749: inputs/VegBank/: Joined together stemcount and stemlocation tables to create stemlocation_, in order to include the stem size class's measurements in each tagged stem's stemobservation (in addition to in the stemobservation for the aggregateoccurrence as a whole)
- 03:18 AM Revision 6748: inputs/VegBank/stemlocation/map.csv: Also mapped stemlocation_id to individualID to create one plantobservation for each stemobservation
- 03:15 AM Revision 6747: inputs/VegBank/stemlocation/map.csv: Remapped stemcount_id to aggregateOccurrenceID to match stemcount_id's mapping in stemcount_
- 02:59 AM Revision 6746: inputs/VegBank/: Joined together taxonimportance and stemcount tables to create stemcount_, because stemcount actually stores stem abundance by size, rather than grouping stems by organism (http://vegbankdev.nceas.ucsb.edu/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=stemcount&entity=dba_tabledescription&where=where_tablename)
- 02:53 AM Revision 6745: Added inputs/VegBank/_archive
- 02:50 AM Revision 6744: input.Makefile: Testing: Added `%/test: %/test.xml` to allow testing just a subdir
- 02:42 AM Revision 6743: input.Makefile: General targets: Added `%/: %/map.csv` to allow remaking just a subdirectory
- 01:53 AM Revision 6742: inputs/CVS/: Refreshed data with new export from Bob
- 01:52 AM Revision 6741: inputs/CVS/cvs-archive-2012-12-04.schema.sql: Fixed types using the steps at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/Tools#MS-Access-database-MDB>
- 01:48 AM Revision 6740: bin/map: Removed column names simplification, which was causing columns with the same alphanumeric characters but different punctuation to be simplified to the same name. Name simplification is now performed by the mapping mechanism itself, and can be overridden in the mappings.
- 01:24 AM Revision 6739: Regenerated inputs/VegBank/new_terms.csv
- 12:08 AM Revision 6738: Added inputs/NCU/_src/NCU_specimens_public_2012-12-10.zip.url
- 12:04 AM Revision 6737: inputs/NCU/: Refreshed data with new export from Bob
12/10/2012
- 09:33 PM Revision 6736: Renamed inputs/NCU-NCSC/ to NCU because this is the primary herbarium contained in the data
- 09:31 PM Revision 6735: Renamed inputs/NCU-NCSC/ to NCU because this is the primary herbarium contained in the data
- 09:21 PM Revision 6734: Added inputs/NCU-NCSC/_archive
- 09:21 PM Revision 6733: input.Makefile: SVN: add: Also add _archive/ subdir
- 08:23 PM Revision 6732: publish_analytical_db: Time the import of the data
- 08:17 PM Revision 6731: export_analytical_db: Also create a .md5 for the export
- 08:16 PM Revision 6730: export_analytical_db: Run commands in the root svn dir
- 08:05 PM Revision 6729: mappings/VegCore.csv: soil composition terms: Removed ppm units from the definition, since units are actually fraction or percent
- 08:03 PM Revision 6728: README.TXT: Data import: Moved On local machine steps after On nimoy steps, because the On nimoy steps are more important
- 07:59 PM Revision 6727: mappings/VegCore.csv: Comments: Added quotes around quotations from other sources
- 07:56 PM Revision 6726: mappings/VegCore.csv: Definitions: Added quotes around quotations from other sources
- 07:52 PM Revision 6725: Added backups/fix_perms
- 07:45 PM Revision 6724: backups/Makefile: Synchronization: %/download: Also download any .md5 file for the file
- 07:24 PM Revision 6723: README.TXT: Data import: On nimoy: Added instructions to verify the export's MD5 sum
- 07:23 PM Revision 6722: README.TXT: Data import: On nimoy: Replaced step to manually upload the analytical_aggregate export with the command to download it from jupiter
- 07:18 PM Revision 6721: README.TXT: Data import: On nimoy: Removed step to rename any existing analytical_aggregate table, since the import is now done directly into the versioned table
- 07:11 PM Revision 6720: mappings/VegCore.csv: VegX terms without definitions in VegX: Added definitions from non-VegX sources, etc.
- 06:28 PM Revision 6719: README.TXT: Data import: Added instructions to verify the backups' MD5 sums on jupiter
- 06:23 PM Revision 6718: README.TXT: Data import: Removed step to copy backups to jupiter, because this now done by `make backups/upload`
- 06:11 PM Revision 6717: schemas/vegbien.sql: sync_*_to_view(): Also add `GRANT SELECT TO bien_read` on the *view* used to generate the table, in case the permission was lost when the view was modified
- 06:08 PM Revision 6716: schemas/vegbien.sql: sync_*_to_view(): Added `GRANT SELECT TO bien_read`
- 06:04 PM Revision 6715: schemas/vegbien.sql: analytical_*: Added back bien_read's SELECT permissions, which had gotten removed when the tables were re-synced to their views
- 06:03 PM Revision 6714: schemas/vegbien.my.sql: Regenerated with expanded repl word matching
- 06:00 PM Revision 6713: repl: :-prefixing of words to form vars: Fixed bug where : must be matched as a lookbehind assertion, not a capturing group, because the provided regexp itself or its replacement may reference capturing groups, which it expects to be numbered starting with 1
- 05:47 PM Revision 6712: inputs/import.stats.xls: Updated import times
- 05:47 PM Revision 6711: Regenerated inputs/NY/Specimen/new_terms.csv
12/07/2012
- 06:49 PM Revision 6710: inputs/JBM/Specimen/test.xml.ref: Updated inserted row count, which had gotten changed when a test was run on a non-empty database
- 06:34 PM Revision 6709: mappings/VegCore.csv: height_ft: Added source to VegBank:stemHeight, which includes a description of the term
- 06:30 PM Revision 6708: mappings/VegCore.csv: height_m: Added source to VegBank:stemHeight, which includes a description of the term
- 06:27 PM Revision 6707: mappings/VegCore.csv: projectName: Added definition from VegX schema
- 06:25 PM Revision 6706: mappings/VegCore.csv: project*Date: Re-sourced to VegBank:project.*Date, since VegX does not have an equivalent term
- 06:16 PM Revision 6705: mappings/VegCore.csv: VegX terms: Added definitions from VegX schema, where provided
- 05:55 PM Revision 6704: mappings/VegCore.csv: projectName: Added source to VegX:project.title
- 05:50 PM Revision 6703: mappings/Makefile: .VegCore.csv.last_cleanup, .Veg+-VegCore.csv.last_cleanup: Also replace Veg+ terms in sources list, which are references to VegCore terms that have since been renamed
- 05:47 PM Revision 6702: repl: text mode: Also match "vars" with the term prefixed by ":". Consider .- to be word characters. Only match a word when preceeded by whitespace or CSV field start characters.
- 05:41 PM Revision 6701: repl: column mode: Removed parsing and checking of column name, which prevents using repl for general-purpose regexp/word replacement
- 04:41 PM Revision 6700: mappings/VegCore.csv: Definition: Moved closed list values to new Values column
- 04:39 PM Revision 6699: mappings/VegCore.csv: Added Values column to store closed list values
- 04:35 PM Revision 6698: mappings/VegCore.csv: geovalidation terms: Removed source to DwC:georeferenceVerificationStatus, because that is for georeferencing, not geovalidation
- 04:30 PM Revision 6697: mappings/VegCore.csv, Veg+-VegCore.csv: obs*Date: Re-sourced to VegX:obs*Date
- 04:23 PM Revision 6696: mappings/VegCore.csv: projectID: Re-sourced to plotObservation.projectID
- 04:17 PM Revision 6695: dict2redmine: RedmineTableWriter: Fixed bug where need to escape embedded | , using new redmine_table_esc()
- 04:16 PM Revision 6694: dict2redmine: Added redmine_table_esc()
- 04:13 PM Revision 6693: dict2redmine: Added redmine_esc()
- 04:06 PM Revision 6692: mappings/VegCore.csv: TCS terms: Added TCS comments from <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegBIEN_taxonomic_schema#TCS>
- 03:58 PM Revision 6691: dict2redmine: redmine_add_links(): Include the [] in the link text, to avoid the need for redmine_pad(), etc.
- 03:55 PM Revision 6690: dict2redmine: redmine_add_links(): Make the link bold so it stands out as a link
- 03:53 PM Revision 6689: dict2redmine: redmine_add_links(): Use new redmine_pad()
- 03:53 PM Revision 6688: dict2redmine: Added redmine_pad()
- 03:51 PM Revision 6687: dict2redmine: redmine_add_links(): Use redmine_url() to create the internal link
- 03:51 PM Revision 6686: dict2redmine: redmine_url(): Support internal links
- 03:47 PM Revision 6685: dict2redmine: redmine_add_links(): Fixed bug where need to explicitly specify the source name as the link text
- 03:44 PM Revision 6684: dict2redmine: RedmineDictWriter: Link citations to entry in sources list
- 03:18 PM Revision 6683: mappings/VegCore.csv: Restored name of latLongDomainValid term, which had gotten replaced with coordinatePrecision
- 03:16 PM Revision 6682: mappings/VegCore.csv: startDate, endDate: Changed comment to "a date range usually applies to the event"
- 03:14 PM Revision 6681: mappings/VegCore.csv: Added Examples column to store data in TCS Examples column at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegBIEN_taxonomic_schema#TCS>
- 03:10 PM Revision 6680: mappings/VegCore.csv: non-phylogenetic taxonomic terms: Added definitions from TCS schema
- 03:07 PM Revision 6679: mappings/VegCore.csv: *forma, *variety: Fixed sources, which had been swapped between the two sets of terms
- 02:57 PM Revision 6678: mappings/VegCore.csv: Special values: Moved comments to Comments column
- 01:11 PM Revision 6677: dict2redmine: Fixed bug where all header fields need to be preserved because columns are now filtered out instead of removed in each row
- 01:05 PM Revision 6676: dict2redmine: Put the definition before and outside of the fields table
- 12:53 PM Revision 6675: mappings/VegCore.csv: Moved Definition values that are actually comments into separate Comments column
- 12:46 PM Revision 6674: dict2redmine: RedmineDictWriter: Omit empty columns from the fields table
12/06/2012
- 11:18 PM Revision 6673: dict2redmine: Generate an outline instead of a table so each term will be indexed in the page's table of contents
- 11:13 PM Revision 6672: schemas/vegbien.sql: coordinates: coordinates_unique: Removed md5() around verbatimcoordinates because functions within unique indexes (other than the standard COALESCE()) are not yet supported by the import algorithm
- 11:10 PM Revision 6671: exc.py: e_msg(): Emit a warning instead of an AssertionError if e.args[0] isn't a string, to assist in debugging malformed exceptions
- 11:02 PM Revision 6670: mappings/VegCore.csv: sampleType: Re-sourced to bien_web.observationType
- 10:34 PM Revision 6669: schemas/vegbien.sql: analytical_stem_view: scientificNameWithMorphospecies: Fixed bug where need to use the taxonomicname in accepted_taxonlabel instead of accepted_taxonverbatim, because taxonverbatim only contains fields provided by the data provider (in this case, TNRS), but TNRS does not provide the taxonomic name (taxon name+author), only the taxon name and author components separately
- 10:09 PM Revision 6668: schemas/vegbien.sql: coordinates: coordinates_unique: Use md5() on verbatimcoordinates so that it doesn't cause the index row size to be exceeded. This should fix a bug in the HIBG import where long verbatimcoordinates values were causing the error 'OperationalError: index row size 2784 exceeds maximum 2712 for index "coordinates_unique"'.
- 09:56 PM Revision 6667: backups/Makefile: Synchronization: Replaced download target, which downloads all backups, with %/download, which downloads just a specific backup, because you would generally only want to extract a single backup from the archive for reinstallation
- 09:47 PM Revision 6666: backups/Makefile: Synchronization: Sync with jupiter instead of vegbiendev. This requires running `make backups/upload` on vegbiendev to archive the files, instead of `make backups/download` to download them to your local machine.
- 08:58 PM Revision 6665: inputs/.geoscrub/geoscrub_output/map.csv: Removed no longer accurate comment that county is not yet used by VegBIEN
- 08:56 PM Revision 6664: inputs/.geoscrub/geoscrub_output/map.csv: *validity: Remapped 2 ("Point is <=5km from putative GADM polygon, but still outside it") to true instead of false, because 5km is close enough to the polygon that the mismatch could result from shapefile simplifying, boundary changes, or other factors that don't affect geovalidity
- 08:52 PM Revision 6663: inputs/.geoscrub/geoscrub_output/map.csv: *validity: Remapped 0 ("Complete name provided, but couldn't be scrubbed to GADM") to NULL instead of false, because the absence of a name match does not mean the coordinates are invalid
- 08:51 PM Revision 6662: inputs/.{NCBI,TNRS}/import_order.txt: Added Source
- 08:50 PM Revision 6661: input.Makefile: SVN: add: Add a Source table to store datasource metadata. This adds a Source table to all herbaria which are listed in .herbaria, and therefore didn't previously need a Source table to indicate their referenceType and sampleType.
- 08:44 PM Revision 6660: input.Makefile: SVN: add: Add a Source table to store datasource metadata. This adds a Source table to all herbaria which are listed in .herbaria, and therefore didn't previously need a Source table to indicate their referenceType and sampleType.
- 08:43 PM Revision 6659: inputs/input.Makefile: SVN: add: verify/: Added *.xls to svn:ignore
- 08:33 PM Revision 6658: inputs/.geoscrub/geoscrub_output/postprocess.sql: Added index on decimallatitude, decimallongitude
- 08:30 PM Revision 6657: Added inputs/.geoscrub/geoscrub_output/postprocess.sql, which adds NOT NULL constraints on decimallatitude, decimallongitude
- 08:21 PM Task #474 (Rejected): use svn to figure out when a map file has changed and needs to be cleaned up
- This would prevent forcing a cleanup by touching the map file
- 08:16 PM Task #309 (Rejected): mapping and export utility from VegBank to VegX
- We are importing VegBank directly into VegBIEN rather than via VegX
- 08:13 PM Task #299 (Resolved): Mapping from NVS to VegX and VegBIEN
- Done for spreadsheet extract provided by Nick Spencer, on vegbiendev in @/home/bien/svn/inputs/NVS/_src/@. We aren't ...
- 08:13 PM Task #477 (Rejected): allow putting specimens data directly in the top level of the datasource directory
- This would prevent adding a separate metadata table later on, so we don't want to allow this
- 08:11 PM Task #544 (New): integrate creation of analytical DB into automated testing
- 06:55 PM Revision 6656: schemas/vegbien.sql: analytical_*: Changed type of boolean columns to integer so that they will be exported as 1/0 instead of t/f by export_analytical_db. This will enable MySQL's LOAD DATA INFILE to import the values correctly.
- 06:07 PM Revision 6655: backups/Makefile: Checksums: %.md5/test: Only use md5sum's -v option on Mac, because it's not supported on Linux (there, verbose mode is the default)
- 05:57 PM Revision 6654: mappings/VegCore.csv: cultivated* source: Added picklist value to URL
- 05:46 PM Revision 6653: README.TXT: Data import: On nimoy: Creating analytical_aggregate table: publish_analytical_db: Rewrapped line
- 05:45 PM Revision 6652: README.TXT: Data import: On nimoy: Creating analytical_aggregate table: Changed name to analytical_aggregate_r<revision> to allow storing different versions simultaneously
- 05:26 PM Revision 6651: publish_analytical_db: Require caller to specify the name of the table to load data into. This allows appending a revision to analytical_aggregate, or publishing a table other than analytical_aggregate.
- 05:24 PM Revision 6650: publish_analytical_db: Require caller to specify the name of the table to load data into. This allows appending a revision to analytical_aggregate, or publishing a table other than analytical_aggregate.
- 05:23 PM Revision 6649: inputs/input.Makefile: SVN: add: verify/: Added *.xls to svn:ignore
- 04:33 PM Revision 6648: backups/Makefile: SQL: Full DB: vegbien.%.backup: Also generate MD5 sum
- 04:18 PM Revision 6647: inputs/import.stats.xls: Updated import times
12/05/2012
- 10:57 AM Revision 6646: README.TXT: Data import: Delete previous imports based on the full DB backup file
- 10:56 AM Revision 6645: backups/Makefile: Support removing public schema versions based on the version of a full DB backup
- 10:52 AM Revision 6644: mappings/VegCore.csv, Veg+-VegCore.csv: Removed the additional dict namespace for the SALVIAS sources. This removes the extra "dict:" namespace on the generate Redmine source term names.
- 10:49 AM Revision 6643: mappings/VegCore.csv, Veg+-VegCore.csv: Added TNRS provider namespace, inserting it before BIEN in the sort order
- 10:43 AM Revision 6642: mappings/VegCore.csv: Changed + to _ in URL fragments
- 10:41 AM Revision 6641: mappings/VegCore.csv, Veg+-VegCore.csv: Removed the additional BIEN namespace for the BIEN sources, and use just BIEN2 and VegBIEN as the sub-namespaces. This removes the extra "BIEN:" namespace on the generate Redmine source term names.
- 10:37 AM Revision 6640: mappings/VegCore.csv, Veg+-VegCore.csv: Removed the "terms" text in the current DwC terms' provider, and leave just the sort order. This removes the extra "terms:" namespace on the generate Redmine source term names.
- 10:33 AM Revision 6639: dict2redmine: url_term(): Remove empty URL comments
- 10:32 AM Revision 6638: dict2redmine: url_comment_text(): Interpret a URL comment containing just a number as a sort order without text
- 10:29 AM Revision 6637: dict2redmine: url_term(): Prefix any provider in the URL to the term name, to create a namespace. Each hierarchical component of the provider is stored in a URL comment.
- 10:27 AM Revision 6636: dict2redmine: Added url_comment_re
- 10:27 AM Revision 6635: dict2redmine: Added url_comment_text()
- 10:26 AM Revision 6634: dict2redmine: Call simplify_url() just on the first source so that source2redmine_url() can use the raw URL (to extract comments, etc.)
- 09:09 AM Revision 6633: dict2redmine: Removed no longer used explicit Definition column #
- 09:06 AM Revision 6632: dict2redmine: Use the input spreadsheet's column names and order, and pass through columns other than the term and sources columns
- 09:05 AM Revision 6631: mappingsf/VegCore.csv, Veg+-VegCore.csv: Renamed Comments to Definition to match Redmine table
- 09:04 AM Revision 6630: mappings/VegCore.csv, Veg+-VegCore.csv: Reversed order of Comments, Sources columns to match Redmine table order
- 08:58 AM Revision 6629: mappings/VegCore.csv, Veg+-VegCore.csv: Reversed order of Comments, Sources columns to match Redmine table order
- 08:56 AM Revision 6628: dict2redmine: Store term_str in a var before using it, like sources_str
- 08:43 AM Revision 6627: dict2redmine: Added Definition column
- 08:32 AM Revision 6626: dict2redmine: Take term and sources col #s as args instead of hardcoding them by column name or position
- 08:25 AM Revision 6625: dict2redmine: url_term(): Also match any namespace that's part of the term
- 08:21 AM Revision 6624: dict2redmine: Sources: Use source2redmine_url() to extract the term from each source URL
- 08:20 AM Revision 6623: dict2redmine: source2redmine_url(): Support empty URLs
- 08:15 AM Revision 6622: dict2redmine: url_term(): Fixed bug where need to use match.group() instead of match.groups()
- 08:02 AM Revision 6621: mappings/Makefile: Create VegCore.redmine from VegCore.csv
- 08:01 AM Revision 6620: Added dict2redmine
- 07:26 AM Revision 6619: mappings/VegCore.csv, Veg+-VegCore.csv: Renamed Source column to Sources because it can contain multiple sources
- 07:12 AM Revision 6618: mappings/VegCore.csv, Veg+-VegCore.csv: Source: DwC terms: Scoped sort order by category, using the steps at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegCore_refactoring#Scope-DwC-sort-order-by-category>
- 06:35 AM Revision 6617: mappings/VegCore.csv, Veg+-VegCore.csv: Source: VegX terms: Split combined field group/field sort order into separate sort orders for field and field group
- 06:22 AM Revision 6616: mappings/VegCore.csv, Veg+-VegCore.csv: Source: VegX terms: Added top-level table sort order
- 06:07 AM Revision 6615: mappings/VegCore.csv: taxonName: Reordered sources so it would sort with *TaxonName and scientificName
- 06:04 AM Revision 6614: mappings/VegCore.csv: Source: DwC Taxon: Added sort order so it would sort together with its fields
- 05:58 AM Revision 6613: mappings/VegCore.csv, Veg+-VegCore.csv: Source: DwC occurrenceID: Corrected sort order to 019 instead of 000
- 05:55 AM Revision 6612: mappings/VegCore.csv, Veg+-VegCore.csv: Source: DwC terms: Added category, with category sort order, as URL comment. This will allow terms to be sorted just within their category rather than globally for DwC.
- 05:49 AM Revision 6611: mappings/Veg+-VegCore.csv: Source: DwC: dcterms: Added back "dcterms:" prefix to URL fragment
- 05:31 AM Revision 6610: mappings/VegCore.csv: Source: TNRS terms: Added sort order to web page fragment (simple_download, detailed_download)
- 05:25 AM Revision 6609: mappings/VegCore.csv, Veg+-VegCore.csv: Removed no longer used Order within table column. Instead, embed the sort order in the URL using a () comment.
- 05:23 AM Revision 6608: mappings/VegCore.csv, Veg+-VegCore.csv: Merged the Order within table column with the Source URL, using the steps at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegCore_refactoring#Merging-the-Order-within-table-column-with-the-Source-URL>. Sorting on the Source column now groups related terms together according to their sort order in the source they came from.
- 05:11 AM Revision 6607: mappings/Veg+-VegCore.csv: Order within table: Filled in missing sort orders
- 04:51 AM Revision 6606: mappings/VegCore.csv, Veg+-VegCore.csv: Source: Web pages: Use / instead of . to separate nested elements of URL fragment. Use _ instead of + to represent space.
- 04:19 AM Revision 6605: mappings/VegCore.csv: Order within table: Filled in missing sort orders
- 03:58 AM Revision 6604: mappings/VegCore.csv: Source: Removed trailing whitespace
- 03:43 AM Revision 6603: mappings/VegCore.csv: Order within table: Fixed to include one entry for every URL, including when the Order field is empty and there are multiple URLs
- 03:33 AM Revision 6602: mappings/VegCore.csv: Order within table: Fixed to include one entry for every URL
- 02:03 AM Revision 6601: mappings/VegCore.csv: Source: "dcterms:" terms: Fixed URL fragments to use : instead of # after dcterms
- 01:42 AM Revision 6600: mappings/VegCore.csv, Veg+-VegCore.csv: Sources: BIEN2: Moved DB sort order right before the DB name in the URL to avoid duplicating the DB name in the comment
- 01:35 AM Revision 6599: mappings/VegCore.csv, Veg+-VegCore.csv: Sources: Added sort order comments to URLs so they sort in the order indicated at <https://projects.nceas.ucsb.edu/nceas/projects/bien/wiki/VegCore#Sources>. URL comments are enclosed in (), and the sort order element of a comment is a number right after the ( .
- 12:37 AM Revision 6598: mappings/Makefile: .Veg+-VegCore.csv.last_cleanup: Sort by the source URL instead of the VegCore term
- 12:35 AM Revision 6597: mappings/Makefile: Split .Veg+-VegCore.csv.last_cleanup and .VegX-VegCore.csv.last_cleanup into separate targets so their recipes can be different
- 12:17 AM Revision 6596: mappings/VegCore-VegBIEN.csv: Mapped dcterms:rights
12/04/2012
- 11:52 PM Revision 6595: backups/Makefile: Synchronization: Also sync *.md5
- 09:52 PM Revision 6594: import_all: Fixed bug where need to wait for *all* asynchronous commands started before the main import, not just the first
- 09:51 PM Revision 6593: import_all: Import all Source tables before the herbaria list, so that any custom metadata will override the info in the herbaria list
- 09:43 PM Revision 6592: input.Makefile: Tables discovery: $(dontImport): Don't import the Source table when $import_source env var is set to ""
- 09:33 PM Revision 6591: input.Makefile: SVN: add: Add a Source table to store datasource metadata. This adds a Source table to all herbaria which are listed in .herbaria, and therefore didn't previously need a Source table to indicate their referenceType and sampleType.
- 09:22 PM Revision 6590: Added inputs/VASCAN/Source/
- 09:18 PM Revision 6589: csvs.py: stream_info(): Use the Excel dialect and an empty header if the CSV file is empty
- 08:29 PM Revision 6588: pg_dump_limit: Also remove CREATE DATABASE statements
- 08:09 PM Revision 6587: Added inputs/JBM/Source/
- 08:07 PM Revision 6586: mappings/Veg+-VegCore.csv: Removed type->dcterms:type automapping because this term can have many different meanings
- 08:06 PM Revision 6585: mappings/Veg+-VegCore.csv: Removed type->dcterms:type automapping because this term can have many different meanings
- 08:03 PM Revision 6584: Added inputs/NVS/Source/
- 08:02 PM Revision 6583: Added inputs/IUCN/European_Red_List_Plants/header.csv
- 08:02 PM Revision 6582: Added inputs/CVS/_src/
- 08:01 PM Revision 6581: input.Makefile: SVN: $(svnFilesGlob): Include test.xml.ref instead of all test*.xml* to avoid including test outputs
- 07:57 PM Revision 6580: inputs/*/verify/: Updated svn:ignore
- 07:55 PM Revision 6579: mappings/VegCore-VegBIEN.csv: Mapped verbatimCoordinates
- 07:54 PM Revision 6578: Updated inputs/HIBG/Specimen/new_terms.csv
- 07:50 PM Revision 6577: Added inputs/HIBG/Source/
- 07:49 PM Revision 6576: inputs/HIBG/verify/: Updated svn:ignore
- 07:47 PM Revision 6575: Added inputs/NCU-NCSC/Source/
- 07:47 PM Revision 6574: inputs/NCU-NCSC/verify/: Updated svn:ignore
- 07:07 PM Revision 6573: backups/Makefile: Checksums: %.md5/test: Made it an _always target
- 07:05 PM Revision 6572: backups/Makefile: Checksums: Added %.md5/test to test generated checksums
- 07:01 PM Revision 6571: backups/Makefile: Moved md5-related targets to separate Checksums section
- 06:59 PM Revision 6570: backups/Makefile: %.md5: Removed not applicable comment which had been copied from %.sql
12/03/2012
- 07:37 PM Revision 6569: inputs/VegBank/plot_/map.csv: Mapped confidentialitystatus to coordinateUncertaintyInMeters, overriding locationaccuracy when the confidentialitystatus indicates fuzzing
- 07:24 PM Revision 6568: inputs/NVS/*/map.csv: Mapped Taxon Growth Form values to growthform enum
- 07:08 PM Revision 6567: Added inputs/NVS/Source/
- 07:05 PM Revision 6566: inputs/NVS/import_order.txt: Specified import order
- 07:02 PM Revision 6565: inputs/input.Makefile: Staging tables installation: $(allInstalls): Exclude the Source table, which contains only (metadata) mappings, not data
- 06:54 PM Revision 6564: Regenerated vegbien.ERD exports
- 06:46 PM Revision 6563: Added inputs/NVS/TaxonOccurrence.Understory/
- 06:38 PM Revision 6562: Added inputs/NVS/Coordinates/
- 06:38 PM Revision 6561: inputs/NVS/Plot/map.csv: Mapped Plot
- 06:33 PM Revision 6560: mappings/VegCore-VegBIEN.csv: Mapped verbatimCoordinates
- 06:27 PM Revision 6559: mappings/Veg+-VegCore.csv: Removed type->dcterms:type automapping because this term can have many different meanings
- 06:07 PM Revision 6558: inputs/NVS/: Renamed Organism to AggregateOccurrence because this actually contains aggregated samplings
- 06:04 PM Revision 6557: inputs/NVS/StemObservation/map.csv: Mapped Item ID, Item Obs ID
- 05:58 PM Revision 6556: Added inputs/NVS/StemObservation/
- 05:52 PM Revision 6555: Added inputs/NVS/TaxonOccurrence/
- 05:51 PM Revision 6554: Added inputs/NVS/map.csv (global mappings)
- 05:47 PM Revision 6553: inputs/NVS/Project/map.csv: Remapped Project Abbreviation to projectName instead of Name, because Project Abbreviation is what's used throughout the tables to link to the project
- 05:34 PM Revision 6552: inputs/NVS/Plot/map.csv: Mapped Physiography
- 05:31 PM Revision 6551: inputs/NVS/Plot/map.csv: Mapped Area
- 05:29 PM Revision 6550: inputs/NVS/Plot/map.csv: Altitude: Provided rationale for units determination
- 05:25 PM Revision 6549: Added inputs/NVS/Organism/
- 05:06 PM Revision 6548: Added inputs/NVS/Project/
- 05:05 PM Revision 6547: mappings/VegCore-VegBIEN.csv: Mapped projectStartDate, projectEndDate
- 05:02 PM Revision 6546: mappings/VegCore.csv: Added projectStartDate, projectEndDate
- 05:02 PM Revision 6545: mappings/VegCore.csv: Renamed plotName to locationName because this term also applies to the location of a specimen. This replaces CTFS's definition of locationName as locality.
- 04:37 PM Revision 6544: root Makefile: apt-get: Use --yes to allow unattended installations
- 03:58 PM Revision 6543: schemas/vegbien.sql: analytical_*: Renamed plotName to locationName to match the new VegCore term name
- 03:51 PM Revision 6542: mappings/VegCore.csv: Renamed plotName to locationName because this term also applies to the location of a specimen. This replaces CTFS's definition of locationName as locality.
- 03:30 PM Revision 6541: mappings/VegCore.csv: Added subInstitutionCode
- 03:25 PM Revision 6540: schemas/vegbien.sql: analytical_stem_view: locationevent info: Fixed bug where need to use project.sourceaccessioncode instead of locationevent.project_id for the projectID
- 03:21 PM Revision 6539: schemas/vegbien.sql: analytical_stem_view: locationevent info: Fixed bug where need to use the parent locationevent's obsstartdate instead when the subevent does not provide it
- 03:19 PM Revision 6538: schemas/vegbien.sql: analytical_stem_view: locationevent info: Fixed bug where need to use the parent locationevent's project and method instead when the subevent does not provide them, because they are often attached to it instead
- 03:07 PM Revision 6537: schemas/vegbien.sql: analytical_stem_view: geolocation info: Fixed bug where need to use the parent location instead when provided, because lat/long and placenames are attached to it instead of the subplot's location
- 02:47 PM Revision 6536: backups/Makefile: %.md5: Fixed bug where md5sum does not have a -q option like md5
- 02:43 PM Revision 6535: backups/Makefile: %.md5: Fixed bug where need to use md5sum instead of md5 on Linux
- 02:39 PM Revision 6534: schemas/vegbien.sql: analytical_stem_view: Filter out non-current taxondeterminations (occurrences with no taxondetermination are preserved)
- 02:10 PM Revision 6533: schemas/vegbien.sql: Removed no longer needed darwin_core table. Use analytical_stem instead, which is now identical.
- 02:02 PM Revision 6532: schemas/vegbien.sql: sync_analytical_*_to_view(): Creating analytical_* table: Fixed bug where need LIMIT 0 so that it can be used on a full DB, which will have data in the tables used by analytical_stem_view
- 01:40 PM Revision 6531: schemas/vegbien.sql: Merged darwin_core into analytical_stem
- 01:21 PM Revision 6530: schemas/vegbien.sql: darwin_core_view, analytical_stem_view: Updated now that newWorldCountries.isoCode is a text field
- 12:35 PM Revision 6529: README.TXT: Data import: backups: Step to copy backups to jupiter: Added full path to aaronmk/ (/data/dev/aaronmk)
- 12:10 PM Task #539 (Rejected): get analytical_stem_view to use merge joins instead of hash joins
- * This will speed up the joins, which used to take 0.5 hour but now take 2.5 hours
* It will also reduce the disk sp... - 12:00 PM Revision 6528: inputs/newWorld/geoscrub.schema.~.changes.sql: Reversed order of adding unique constraints and changing types
- 11:57 AM Revision 6527: inputs/newWorld/geoscrub.schema.~.changes.sql: Changed isoCode type to text. Added unique constraint on isoCode.
- 11:06 AM Revision 6526: backups/Makefile: Added md5s target to generate .md5 files for all backups
- 11:05 AM Revision 6525: inputs/import.stats.xls: Updated import times
- 10:48 AM Revision 6524: backups/Makefile: %.md5: Run with `nice -n +5` to avoid slowing down the UI
- 10:46 AM Revision 6523: backups/: svn:ignore: Added *.md5. Removed no longer applicable *.log.
- 10:42 AM Revision 6522: backups/Makefile: Changed paths to be relative to the Makefile rather than the current directory, so this Makefile can be used in other directories as well (such as jupiter:/aaronmk/VegBIEN.backups/)
- 10:34 AM Revision 6521: backups/Makefile: %.backup: Also create MD5 of backup
- 10:31 AM Revision 6520: backups/Makefile: Added %.md5 target to create checksums of each backup
- 10:17 AM Revision 6519: README.TXT: Data import: backups: Added step to copy backups to jupiter in /aaronmk/VegBIEN.backups/ . The jupiter folder, which has several TB of space available, will replace local backup drives as the location for archived backups.
- 10:00 AM Revision 6518: README.TXT: Data import: Removed additional backup of just the public schema, which is not needed because the public schema is included in the full DB backup. The additional public schema backup increased the total backup size by 60-70%, so this will help conserve limited disk space on vegbiendev as well as on local archives of the backups.
- 09:52 AM Revision 6517: README.TXT: Backups: Full DB: Updated steps to match Data import steps, which add the date to the backup filename when it's created rather than afterwards
- 09:42 AM Revision 6516: README.TXT: Backups: Archived imports: Back up: Added instructions for archiving the last import before backing it up
- 09:10 AM Revision 6515: Regenerated vegbien.ERD exports
- 09:08 AM Revision 6514: schemas/vegbien.sql: analytical_*: Removed NOT NULL constraint on dateCollected
- 09:07 AM Revision 6513: schemas/vegbien.sql: source: Added sampletype field to indicate a plot or specimen datasource
- 09:00 AM Revision 6512: schemas/vegbien.sql: analytical_*: Removed NOT NULL constraint on dateCollected
- 08:55 AM Revision 6511: schemas/vegbien.sql: sync_analytical_*_to_view(): Added NOT NULL constraints
11/30/2012
- 05:20 PM Revision 6510: make_analytical_db: Added step to create darwin_core materialized view
- 05:09 PM Revision 6509: inputs/*/Source/map.csv for non-herbaria: Mapped sampleType
- 05:02 PM Revision 6508: inputs/.herbaria/herbaria/map.csv: Set sampleType to "specimen"
- 05:02 PM Revision 6507: mappings/VegCore-VegBIEN.csv: Mapped sampleType
- 05:00 PM Revision 6506: mappings/VegCore.csv: Added sampleType
- 04:57 PM Revision 6505: schemas/vegbien.sql: source: Added sampletype field to indicate a plot or specimen datasource
- 04:55 PM Revision 6504: schemas/vegbien.sql: Added sampletype enum
- 04:46 PM Revision 6503: root Makefile: $(postgresReload-*): Confirm the operation before continuing, since it involves changing PostgreSQL config files in nontrivial ways. Added instructions for setting kernel.shmmax to at least 4GB minus 1 byte on Linux, to work with the shared_buffers setting in postgresql.conf.
- 04:03 PM Revision 6502: schemas/postgresql.conf: shared_buffers: Documented that it must be less than ~95% of SHMMAX
- 03:58 PM Revision 6501: schemas/vegbien.sql: analytical_stem_view: identifiedBy: Fixed bug where need to use party.fullname instead of name components because the name is now mapped to fullname
- 03:28 PM Revision 6500: schemas/vegbien.sql: analytical_stem_view, darwin_core_view: dateCollected: Use the parent plot event's obsstartdate when the subplot event does not have its own obsstartdate
- 01:56 PM Revision 6499: schemas/vegbien.sql: analytical_stem_view: Don't filter out rows without a date or non-current taxondeterminations
- 01:54 PM Revision 6498: schemas/vegbien.sql: analytical_stem_view: Don't filter out rows without a date
- 01:28 PM Revision 6497: schemas/vegbien.sql: Added darwin_core_view
- 12:56 PM Revision 6496: schemas/vegbien.sql: analytical_stem_view: identifiedBy: Fixed bug where need to use party.fullname instead of name components because the name is now mapped to fullname
- 12:40 PM Revision 6495: schemas/vegbien.sql: sync_analytical_*_to_view(): Added CREATE INDEX statements
- 12:31 PM Revision 6494: README.TXT: Data import: Added steps to publish analytical DB on nimoy.bien_web
- 10:46 AM Revision 6493: schemas/vegbien.sql: analytical_stem_view: Changed JOINs to LEFT JOINs to include occurrences without taxondeterminations
- 10:21 AM Revision 6492: export_analytical_db: Use 'NULL' as the NULL value instead of \N, because MySQL has problems with \N
- 09:57 AM Revision 6491: publish_analytical_db: Load to bien3_adb instead of bien_web
11/29/2012
- 05:41 PM Revision 6490: README.TXT: Data import: Added step to export analytical DB
- 01:11 PM Revision 6489: root Makefile: $(postgres-Linux): Fixed bug where need $(asAdmin) before commands to rename existing *.conf
- 01:01 PM Revision 6488: root Makefile: $(postgres-Linux): Also install postgresql-contrib, which contains the hstore extension
11/28/2012
- 06:18 PM Revision 6487: Added inputs/NVS/
- 06:04 PM Revision 6486: inputs/CVS/Organism/map.csv: Mapped accordingTo to "Weakley 2006"
- 06:02 PM Revision 6485: inputs/NY/Specimen/map.csv: Omit UniqueNYInternalRecordNumber to avoid confusion since this is an internal-only ID. This makes InstitutionCode+CollectionCode+CatalogNumber the globally unique identifier instead.
- 06:00 PM Revision 6484: README.TXT: Added Datasource refreshing section with instructions for refreshing VegBank
- 05:57 PM Revision 6483: schemas/vegbien.sql: Renamed taxonconcept.concept_source_id back to concept_reference_id
- 05:52 PM Revision 6482: schemas/vegbien.sql: Renamed soilobs to soilsample per working group discussion
- 05:27 PM Revision 6481: input.Makefile: SVN: add: verify: Fixed bug where need to use $ prefix before string to parse newline
- 05:27 PM Revision 6480: input.Makefile: SVN: add: verify: Fixed bug where need to use $ prefix before string to parse newline
- 05:25 PM Revision 6479: inputs/NY/verify/: svn:ignore .csv files
- 05:25 PM Revision 6478: input.Makefile: SVN: add: Also svn:ignore .csv files
- 02:47 PM Revision 6477: export_analytical_db: Export NULL as \N to work with MySQL
- 01:22 PM Revision 6476: schemas/vegbien.sql: analytical_*: Added index on NOT NULL columns, starting with institutionCode
- 01:19 PM Revision 6475: schemas/vegbien.sql: analytical_*: Removed primary keys and NOT NULL constraints on columns that sometimes have NULL values
- 01:08 PM Revision 6474: publish_analytical_db: Added CSV dialect information
- 12:42 PM Revision 6473: root Makefile: PostgreSQL: $(postgresReload-*): Rename existing *.conf to *.conf.old
11/27/2012
- 06:44 PM Revision 6472: publish_analytical_db: Use LOAD DATA *LOCAL* INFILE instead of LOAD DATA INFILE to avoid needing FILE permissions on bien_web
- 01:17 PM Revision 6471: Added publish_analytical_db
- 12:43 PM Revision 6470: export_analytical_db: Append the public schema version to the CSV filename
- 12:27 PM Revision 6469: backups/Makefile: $(rsyncBackups): Added *.csv
11/26/2012
- 06:12 PM Revision 6468: Added export_analytical_db
- 06:10 PM Revision 6467: backups/: Ignore _* and *.csv
- 01:35 PM Revision 6466: make_analytical_db: mk_analytical_table(): Use explicit schema references everywhere. This fixes a bug where the TRUNCATE/INSERT steps on the public schema's table would reference the analytical_db view instead because they were not schema-scoped.
- 01:33 PM Revision 6465: make_analytical_db: mk_analytical_table(): Factored table references in different schemas out into vars
11/25/2012
- 09:31 PM Revision 6464: schemas/vegbien.sql: analytical_stem_view: recordNumber: Combine identifying fields in taxonoccurrence, plantobservation, and stemobservation to ensure that this field is unique within the plot and not NULL
- 09:13 PM Revision 6463: Regenerated vegbien.ERD exports
- 08:52 PM Revision 6462: make_analytical_db: Moved set -x () around just psql_verbose_vegbien so embedded $() expressions wouldn't also be in set -x (verbose) mode
- 08:49 PM Revision 6461: make_analytical_db: Fixed bug where need to use bash instead of sh because vegbien_dest requires it
- 08:37 PM Revision 6460: make_analytical_db: Factored analytical_* table creation code out into mk_analytical_table() function
- 08:28 PM Revision 6459: make_analytical_db: Create analytical_db views pointing to the analytical_* versions in the public schema
- 08:21 PM Revision 6458: vegbien_dest: $schemas: Removed analytical_db because views that will be added to it were shadowing public schema tables with the same names during population of those tables in make_analytical_db
- 07:47 PM Revision 6457: vegbien_dest: Export $public, to make sure it's available to any invoked scripts as an env var
- 07:45 PM Revision 6456: vegbien_dest: $schemas: Added analytical_db
- 07:38 PM Revision 6455: inputs/import.stats.xls: Added separate tab with stats for 2012-6~9. The Excel format apparently only supports 255 columns, so previous imports had been silently truncated off. Note that once the 2012-10 imports reach column 255, a new tab will need to be created with the 2012-10+ imports.
- 07:20 PM Revision 6454: bin/map: in_is_db: by_col: Clearing errors table: Skip this if the table has been set to None because it didn't exist (and thus was a metadata-only map spreadsheet)
- 06:54 PM Revision 6453: schemas/vegbien.sql: analytical_stem_view: scientificNameWithMorphospecies: Fixed bug where need to use the specific_epithet from the accepted_taxonverbatim rather than the parsed_taxonverbatim
- 06:45 PM Revision 6452: schemas/vegbien.sql: analytical_stem_view: scientificNameWithMorphospecies: Include the family any time the genus is not specified, instead of just when accepted_taxonlabel.rank = 'family'. These should have the same effect since TNRS includes the rank, but using COALESCE() is clearer.
- 06:41 PM Revision 6451: schemas/vegbien.sql: analytical_stem_view: scientificNameWithMorphospecies: Changed to also include morphospecies when just the family is specified
- 06:35 PM Revision 6450: schemas/vegbien.sql: analytical_stem_view: Fixed bug where location.authorlocationcode needed to be used as the plotName when location.sourceaccessioncode was not provided, to ensure that plotName would be NOT NULL
- 06:20 PM Revision 6449: inputs/FIA/import_order.txt: Fixed bug where FIA_COND_unique needed to be explicitly included in import_order.txt now that we're using import_order.txt to import the Source metadata table before the data tables
- 06:15 PM Revision 6448: inputs/import.stats.xls: Updated import times
11/24/2012
- 03:07 PM Revision 6447: root Makefile: PostgreSQL: $(postgresReload-Linux): Try chmoding both as your user and as the bien user
- 02:46 PM Revision 6446: input.Makefile: Testing: $(runTest): Ignore failed diffs when the test is compared to another test's output (e.g. in by_col mode)
- 02:41 PM Revision 6445: bin/map: in_is_db: If table does not exist, set table to None so that db_xml.put_table() doesn't try to access it. This fixes a bug in metadata-only map spreadsheets under column-based import.
- 02:40 PM Revision 6444: db_xml.py: put_table(): Support None in_table by calling put() directly
- 02:29 PM Revision 6443: Removed no longer used geoscrub.*.sql. Use geoscrub_output instead.
- 02:27 PM Revision 6442: Removed no longer used geoscrub_cleaned_unique. Use geoscrub_output instead.
- 02:25 PM Revision 6441: Removed no longer used geoscrub_cultivated. Use analytical_stem_view.cultivated instead.
- 02:25 PM Revision 6440: Removed no longer used geoscrub_cultivated. Use analytical_stem_view.cultivated instead.
- 02:23 PM Revision 6439: schemas/vegbien.sql: analytical_stem_view: cultivated: Removed BIEN2's geoscrub_cultivated, which has now been replaced by the primary corresponding scripts (and never had particularly many matches to the locations in any case)
- 02:14 PM Revision 6438: schemas/vegbien.sql: analytical_stem_view: cultivated: Use OR instead of _or() to combine cultivated_family_locations.country IS NOT NULL with the other values, because this field's false value should not be used in place of NULL if all the other values are NULL, as it would be with _or(). (cultivated_family_locations.country IS NOT NULL can indicate presence, but not absence, of cultivated status.)
- 02:06 PM Revision 6437: schemas/functions.sql, vegbien.sql: _and(), _or(): Added comment comparing the function and the corresponding logical operator
- 01:50 PM Revision 6436: schemas/vegbien.sql: public: Added _or(), for use by analytical_stem_view
- 01:48 PM Revision 6435: schemas/vegbien.sql: analytical_stem_view: cultivated: Also set if family/country combination found in cultivated_family_locations
- 01:39 PM Revision 6434: schemas/vegbien.sql: cultivated_family_locations: Added data from nimoy:/home/boyle/bien2/geoscrub/cultivated/cult_by_taxon/flag_by_taxa.inc
- 01:33 PM Revision 6433: schemas/vegbien.sql: Added cultivated_family_locations to store locations where various taxon families are considered cultivated
- 01:24 PM Revision 6432: mappings/VegCore-VegBIEN.csv: Mapped locality description fields to location.iscultivated using _locationnarrative_is_cultivated()
- 01:23 PM Revision 6431: xml_func.py: Simplifying functions: Added passthru entries for _and, _or
- 01:06 PM Revision 6430: schemas/vegbien.sql: Added _locationnarrative_is_cultivated()
- 12:57 PM Revision 6429: lib/PostgreSQL-MySQL.csv: Change text to varchar(255) because text columns can't be used in indexes in MySQL
- 12:51 PM Revision 6428: lib/PostgreSQL-MySQL.csv: Resaved in Excel, which removed unnecessary quotes around fields
- 12:22 PM Revision 6427: schemas/vegbien.sql: analytical_aggregate: Added identifiedBy, which is no longer a scoping field (which would prevent scientificNameWithMorphospecies from being unique) now that there is only one taxondetermination for each taxonoccurrence
- 12:05 PM Revision 6426: schemas/vegbien.sql: analytical_stem_view: dateCollected: For plots data, use the locationevent obsstartdate instead of the collectiondate in order to group taxonoccurrences/stems from the same locationevent together
- 11:59 AM Revision 6425: schemas/vegbien.sql: analytical_* pkeys: Added dateCollected because the records are actually unique within the location*event*, not the location
- 11:57 AM Revision 6424: schemas/vegbien.sql: analytical_stem_view: Exclude records with no collectiondate or obsstartdate, which is required to uniquely identify a record
- 11:54 AM Revision 6423: analytical_stem_view: dateCollected: Use locationevent.obsstartdate when aggregateoccurrence.collectiondate is not provided
- 11:37 AM Revision 6422: schemas/vegbien.sql: analytical_stem_view: Include only the current taxondetermination for each taxonoccurrence, to avoid cross-joining taxondeterminations with stems and thus multiplying the number of rows for datasources that have multiple taxondeterminations per taxonoccurrence
- 11:33 AM Revision 6421: schemas/vegbien.sql: taxondetermination: Added AFTER trigger to set the current taxondetermination for the taxonoccurrence
- 11:11 AM Revision 6420: lib/PostgreSQL-MySQL.csv: Statements ending in ";": When matching any character, use .*? (with the (?s) flag) instead of [^;]* in order to allow embedded ; to be matched. This fixes a bug where a CREATE VIEW statement was not removed because it contained an embedded ; .
- 11:06 AM Revision 6419: schemas/vegbien.sql: taxondetermination: Added unique index to ensure that there is only one current determination for each taxonoccurrence
- 11:05 AM Revision 6418: lib/PostgreSQL-MySQL.csv: Remove indexes with WHERE clauses
- 10:34 AM Revision 6417: schemas/vegbien.sql: analytical_aggregate: Added primary key on institutionCode, plotName, scientificNameWithMorphospecies, recordNumber. Note that this makes these fields NOT NULL, which should not be a problem because there are inner joins instead of LEFT JOINs on most of the tables which provide them, and LEFT JOINed tables have their identifying fields combined to create a NOT NULL value.
- 10:27 AM Revision 6416: schemas/vegbien.sql: analytical_stem_view: recordNumber: Combine identifying fields in taxonoccurrence, plantobservation, and stemobservation to ensure that this field is unique within the plot and not NULL
- 10:23 AM Revision 6415: lib/PostgreSQL-MySQL.csv: Only match a statement-terminating ; when it's at the end of a line
- 10:02 AM Revision 6414: schemas/vegbien.sql: analytical_aggregate: Added primary key on institutionCode, plotName, scientificNameWithMorphospecies. Note that this makes these fields NOT NULL, which should not be a problem because there are inner joins instead of LEFT JOINs on the tables which provide them.
- 09:21 AM Revision 6413: db_xml.py: put(): _setDefault(): Delay the evaluation of each col_default's value until the col_default is actually retrieved. This fixes a bug in the source table mappings where the explicit source entry was being created *after* the col_default source entry, causing the initial entry, which did not have the additional fields populated, to be used instead.
- 09:14 AM Revision 6412: dicts.py: Added WrapDict, a dict that runs a function on each value retrieved
- 08:59 AM Revision 6411: db_xml.py: put(): _setDefault(): Fixed bug where need to copy col_defaults before calling update() on it, to avoid modifying the input value (which may be reused by the caller, expecting it to be unmodified)
- 08:54 AM Revision 6410: db_xml.py: put(): col_defaults param: Fixed bug where need to use None as default value, because col_defaults will be modified by put() and the {} default value is a global instance
- 08:29 AM Revision 6409: mappings/VegCore-VegBIEN.csv: source table mappings: Set shortname to env var $source when it's not explicitly specified, because shortname is a required field of source
- 08:16 AM Revision 6408: db_xml.py: put(): Pass through the values of nodes which are text nodes
- 08:15 AM Revision 6407: db_xml.py: put(): put_(): Support _setDefault() values which are text nodes, by passing text strings through when put_() is run on all col_defaults entries
- 07:50 AM Revision 6406: db_xml.py: put(): _setDefault(): Support setting multiple col_defaults at once by using the param names themselves as the column names
- 07:47 AM Revision 6405: dicts.py: DictProxy: Implemented __delitem__()
- 07:32 AM Revision 6404: bin/map: update_in_label(): Removed hardcoded source_id col_default, which is now set in mappings/VegCore-VegBIEN.csv's output root
- 07:29 AM Revision 6403: mappings/VegCore-VegBIEN.csv: Set the source_id col_default to the datasource name using the new _setDefault() built-in function and _env()
- 07:25 AM Revision 6402: db_xml.py: put(): Added _setDefault() built-in function, which adds an entry to col_defaults
- 07:23 AM Revision 6401: xml_func.py: _env(): Fixed bug where need to retrieve actual string value of name param using xml_dom.NodeTextEntryIter instead of NodeEntryIter
- 07:20 AM Revision 6400: xml_func.py: _env(): Fixed bug where need to use xml_dom.replace_with_text() instead of xml_dom.replace() because replace() requires a DOM node
- 06:44 AM Revision 6399: bin/map: update_in_label(): Set $source env var to the in_label (datasource name), to make it available to _env()
- 06:43 AM Revision 6398: xml_func.py: Simplifying functions: Added _env()
- 06:05 AM Revision 6397: Added inputs/VegBank/Source/, containing referenceType metadata
- 06:00 AM Revision 6396: Added inputs/SpeciesLink/Source/, containing referenceType metadata
- 05:55 AM Revision 6395: Added inputs/SALVIAS*/Source/, containing referenceType metadata
- 05:47 AM Revision 6394: Added inputs/REMIB/Source/, containing referenceType metadata
- 05:41 AM Revision 6393: Added inputs/GBIF/Source/, containing referenceType metadata
- 05:34 AM Revision 6392: Added inputs/TEAM/Source/, containing referenceType metadata
- 05:33 AM Revision 6391: Placed inputs/TEAM/_src/Vegetation-Tree-and-Liana-Metadata-1.5.pdf under version control
- 05:27 AM Revision 6390: inputs/FIA/import_order.txt: Added Source, which needs to come before Organism
- 05:22 AM Revision 6389: Added inputs/Madidi/Source/, containing referenceType metadata
- 05:19 AM Revision 6388: Added inputs/FIA/Source/, containing referenceType metadata
- 05:14 AM Revision 6387: Added inputs/CVS/Source/, containing referenceType metadata
- 05:07 AM Revision 6386: Added inputs/CTFS/Source/, containing referenceType metadata
- 05:05 AM Revision 6385: bin/map: Support map spreadsheets containing only metadata mappings (with no corresponding staging table), by falling back to an empty table when the named table does not exist
- 04:19 AM Revision 6384: mappings/VegCore-VegBIEN.csv: institutionCode: Also map to the sourcename's matched source, which identifies whether the source is a herbarium
- 04:08 AM Revision 6383: schemas/vegbien.sql: source: Made shortname NOT NULL to ensure that all datasources have a globally-unique short name
- 03:33 AM Revision 6382: import_all: Added import of inputs/.herbaria/ before the main import
- 03:28 AM Revision 6381: Added inputs/.herbaria/
- 03:25 AM Revision 6380: input.Makefile: SVN: add: Also run %/add on all data subdirs
- 03:21 AM Revision 6379: input.Makefile: Existing maps discovery: Moved tables discovery to its own section, above SVN so it can be used by SVN
- 03:11 AM Revision 6378: mappings/VegCore.csv: referenceType: Fixed sort order
- 03:09 AM Revision 6377: mappings/VegCore-VegBIEN.csv: Mapped referenceType
- 03:06 AM Revision 6376: mappings/VegCore.csv: Added referenceType
- 02:10 AM Revision 6375: mappings/VegCore-VegBIEN.csv: institutionCode: Remap to source.shortname when specimen information is not provided, as is the case for geoscrub.herbaria on nimoy
- 01:47 AM Revision 6374: inputs/bien_web/observation/map.csv: Mapped observationID->occurrenceID
- 01:20 AM Revision 6373: README.TXT: Datasource setup: Add input data for each table present in the datasource: Added step to run `make inputs/<datasrc>/<table>/install` if the table is in a .sql export
- 01:17 AM Revision 6372: README.TXT: Datasource setup: MySQL inputs: Added step to install the export, which needs to happen before mapping individual tables
- 01:13 AM Revision 6371: README.TXT: Datasource setup: Add input data for each table present in the datasource: Replaced "CSV" with "CSV(s)" because there can be multiple CSV part files for one table
- 01:11 AM Revision 6370: README.TXT: Datasource setup: Add input data for each table present in the datasource: Don't add a CSV or create.sql file for tables that are in a .sql export
- 01:06 AM Revision 6369: README.TXT: Schema changes: Sync ERD with vegbien.sql schema: Changed instructions to just select tables with arrows next to them rather than all tables, because each table that's updated will have its lines reset and the number of lines that need to be fixed should be minimized
- 01:02 AM Revision 6368: README.TXT: Datasource setup: Accept the test cases: `make inputs/<datasrc>/test by_col=1`: Clarified that errors could indicate bugs in the *VegBIEN* unique constraints
- 12:59 AM Revision 6367: README.TXT: Data import: To remake analytical DB: Added explicit public schema setting since the analytical DB is often manually remade *after* the public schema has been renamed. Removed warnings that certain commands must be run after running make_analytical_db, because the "remake analytical DB" instructions no longer require this.
- 12:48 AM Revision 6366: README.TXT: Datasource setup: MySQL inputs: Added steps to export the database to a PostgreSQL-compatible .sql file, which can be directly used by the install process without the need to export each table as CSV
- 12:36 AM Revision 6365: README.TXT: Datasource setup: Choosing a table name: Documented that for .sql exports, you must use the name of the table in the DB export, not a suggested or custom name
- 12:34 AM Revision 6364: input.Makefile: Staging tables installation: $(dbExports): Also include the files that would be generated by running _MySQL/*.make and creating the corresponding PostgreSQL translations
- 12:18 AM Revision 6363: input.Makefile: Staging tables installation: Moved .sql export downloading and translation to separate Input data retrieval section
11/23/2012
- 11:41 PM Revision 6362: Added lib/MySQL.{data,schema}.sql.make templates to use in datasources' _MySQL/ dirs
- 10:38 PM Revision 6361: inputs/import.stats.xls: Updated import times
11/21/2012
- 11:13 PM Revision 6360: schemas/vegbien.sql: analytical_stem_view: scientificNameWithMorphospecies: Changed to use Brad's formula, which concatenates genus and specific_epithet/morphospecies, and uses family if just the family is present, rather than using the full taxonomic name
- 11:05 PM Revision 6359: mappings/VegCore-VegBIEN.csv: Concatenated taxonlabel: Don't prepend family if the taxonName/scientificName itself is the family, so that the family is not duplicated in the concatenated taxonomic name
- 10:19 PM Revision 6358: schemas/functions.sql: _nullIf(): Removed NOT NULL constraint on null param, to support use a (nullable) column rather than a literal as the null-equivalent value
- 09:08 PM Revision 6357: xml_func.py: Simplifying functions: Added _nullIf(), to remove calls with no null value
- 09:00 PM Revision 6356: xml_dom.py: Added prune_parent()
- 08:51 PM Revision 6355: schemas/functions.sql: Added _or()
- 08:20 PM Revision 6354: schemas/functions.sql: Added _merge_words()
- 08:04 PM Revision 6353: schemas/vegbien.sql: analytical_*: Renamed geosourceValid to geovalid. (It had gotten renamed in the reference -> source rename.)
- 08:00 PM Revision 6352: mappings/VegCore.csv: Renamed georeferenceValid to geovalid
- 07:48 PM Revision 6351: inputs/import.stats.xls: Updated import times. This now includes the Canadensys plants-related datasources HIBG, JBM, QFA, TRT, TRTE, UBC, VASCAN, and WIN.
11/20/2012
- 09:59 PM Revision 6350: inputs/import.stats.xls: Updated import times
- 09:42 PM Revision 6349: Added inputs/HIBG/
- 09:33 PM Revision 6348: Added inputs/JBM/
- 09:29 PM Revision 6347: Added inputs/VASCAN/
- 09:22 PM Revision 6346: Added inputs/WIN/
- 09:18 PM Revision 6345: Added inputs/UBC/
- 09:14 PM Revision 6344: Added inputs/TRTE/Specimen/
- 09:11 PM Revision 6343: Added inputs/QFA/
- 09:06 PM Revision 6342: Added inputs/TRT/
- 08:21 PM Revision 6341: schemas/vegbien.sql: Allow bien_read to SELECT from all tables in the public schema
- 08:10 PM Revision 6340: schemas/vegbien.sql: Allow bien_read to SELECT from analytical_aggregate, analytical_stem
- 08:09 PM Revision 6339: lib/PostgreSQL-MySQL.csv: Removed GRANT/REVOKE because SCHEMA GRANTs are not supported in MySQL
- 07:57 PM Revision 6338: pg_dump_vegbien: non-$owners mode: Removed --no-privileges in order to include GRANTs to other users
- 07:49 PM Revision 6337: root Makefile: PostgreSQL: $(postgresReload-Linux): Making schemas/*.conf world-readable: Fixed bug where need to do this as the bien user, which owns the files
- 07:46 PM Revision 6336: root Makefile: PostgreSQL: $(postgresReload-*): Make schemas/*.conf world-readable so it's readable by the postgres user, which the .conf installation is run as
- 07:43 PM Revision 6335: root Makefile: PostgreSQL: $(postgresReload-*): Also install pg_hba.conf
- 07:36 PM Revision 6334: root Makefile: PostgreSQL: Added postgres_reload to reload postgresql.conf and restart the DB
- 07:30 PM Revision 6333: root Makefile: PostgreSQL: postgres-*: Factored postgresql.conf installation out in to $(postgresReload-*)
- 07:15 PM Revision 6332: schemas/: Synced pg_hba.conf and pg_hba.Mac.conf's bien entries, which adds phpPgAdmin support (template1 access) on the Mac and bien_read access on Linux
- 06:56 PM Revision 6331: root Makefile: VegBIEN DB: DB and users: Also create bien_read user for read-only access to the DB
- 06:53 PM Revision 6330: schemas/pg_hba.Mac.conf: Allow access to the bien group rather than just the bien user, which will include bien_read
- 06:35 PM Revision 6329: schemas/pg_hba.Mac.conf: Fixed bug where also need to allow password-based logins from the same machine, in order to work with pgAdmin
- 06:06 PM Revision 6328: schemas/vegbien.ERD.poster.pdf: Updated to 33x51in poster size and 0.25in margins
- 05:35 PM Revision 6327: README.TXT: Schema changes: Creating a poster of the ERD: Added section with the State St FedEx Kinkos' rates for posters ($10.25/sq ft laminated)
- 05:29 PM Revision 6326: README.TXT: Schema changes: Creating a poster of the ERD: Changed "Measure the fractional height of the text onscreen" to "Determine the poster size"
- 05:19 PM Revision 6325: Added schemas/vegbien.ERD.poster.pdf
- 04:10 PM Revision 6324: Added schemas/vegbien.ERD.poster.core.print_options.png
- 04:01 PM Revision 6323: Added schemas/vegbien.ERD.poster.core.pdf
- 03:29 PM Revision 6322: schemas/pg_hba.Mac.conf: Fixed bug where needed ident entry for postgres superuser
- 03:18 PM Revision 6321: Added config/bien_read_password
- 02:53 PM Revision 6320: README.TXT: Schema changes: Added instructions to calculate the minimum VegBIEN poster size (to make the text as least as big as on the VegBank ERD poster), which is 35x54in portrait
11/19/2012
- 08:01 PM Revision 6319: schemas/vegbien.sql: analytical_stem_view: cultivated: Use location.iscultivated when taxonoccurrence.iscultivated is not available
- 07:55 PM Revision 6318: Added inputs/FIA/FIA_COND_unique/, which contains the oldgrowth flag
- 07:53 PM Revision 6317: mappings/VegCore-VegBIEN.csv: Mapped oldGrowth
- 07:48 PM Revision 6316: schemas/functions.sql: Added _not()
- 07:43 PM Revision 6315: mappings/VegCore.csv: Added oldGrowth
- 07:36 PM Revision 6314: mappings/VegCore-VegBIEN.csv: Remapped cultivated to location when a TaxonOccurrence is not provided, indicating that the record is a plot
- 07:35 PM Revision 6313: mappings/VegCore-VegBIEN.csv: Remapped cultivated to location when a TaxonOccurrence is not provided, indicating that the record is a plot
- 07:25 PM Revision 6312: schemas/vegbien.sql: location: Added iscultivated for cases when entire plots rather than individual taxonoccurrences are marked as cultivated
- 07:17 PM Revision 6311: inputs/FIA/: Added FIA_COND table from nimoy.geoscrub and code to generate a unique plot table from it, including the oldgrowth calculated field
- 06:46 PM Revision 6310: Added inputs/FIA/Organism/postprocess.sql to cast PlotCD to a bigint
- 06:22 PM Revision 6309: my2pg: Also remove (#) after bigint
- 06:05 PM Revision 6308: Regenerated vegbien.ERD exports
- 06:03 PM Revision 6307: schemas/vegbien.ERD.mwb: Fixed lines
- 05:54 PM Revision 6306: schemas/vegbien.ERD.mwb: Fixed lines
- 05:54 PM Revision 6305: schemas/vegbien.sql: source: Renamed fulltext to citation because according to the VegBank data dictionary <http://vegbank.org/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=reference&entity=dba_tabledescription&where=where_tablename#fulltext> this is actually the full text *of the reference citation*, not of the reference itself (it would be unusual to store that in VegBank)
- 05:48 PM Revision 6304: schemas/vegbien.sql: Removed no longer needed sourcejournal, which can be stored in source and pointed to via parent_id instead of sourcejournal_id. sourcejournal.journal maps to source.fulltext, issn to isbn, and abbreviation to shortname.
- 05:48 PM Revision 6303: mappings/VegCore-VegBIEN.csv: Mapped acceptedCounty, county to the matched place
- 05:41 PM Revision 6302: schemas/vegbien.sql: source: Added matched_source_id
- 05:34 PM Revision 6301: sql.py: parse_exception(): function MissingCastException: If 1st param is hstore, only perform the cast on the value param. This fixes a bug in _map() calls whose value is a non-text type, such as SALVIAS.plotMetadata.AccessCode.
- 05:32 PM Revision 6300: sql_io.py: cast(): Use sql_gen.Cast() to generate the cast, in order to take advantage of its support for casts to unknown
- 05:30 PM Revision 6299: sql_gen.py: Cast: Support casts to unknown by casting to text first
- 04:59 PM Revision 6298: schemas/postgresql.conf: Turn on the error log
- 04:58 PM Revision 6297: schemas/pg_hba.conf: Also grant the bien user access to template1, which is accessed by phpPgAdmin
- 04:24 PM Revision 6296: schemas/vegbien.sql: source: Added parent_id for nested sources, e.g. an article in a journal
- 04:23 PM Revision 6295: lib/forwarding.Makefile: $(subdirs): Also exclude .archive/
- 04:09 PM Revision 6294: mappings/VegCore-VegBIEN.csv: Mapped acceptedCounty, county to the matched place
- 04:08 PM Revision 6293: schemas/vegbien.ERD.mwb: Fixed lines
- 03:54 PM Revision 6292: Renamed inputs/_archive/ to .archive/ so it wouldn't be treated as a datasource
- 03:49 PM Revision 6291: README.TXT: Documentation: Redmine-formatted list of steps for column-based import: Use ACAD instead of QMOR, which was removed
- 03:45 PM Revision 6290: inputs/Makefile: Import logs: $(rsyncLogs): Include log files at any depth in the directory tree rather than just 1-2 levels deep. This adds log files whose containing directories have been moved to _archive/ directories.
- 03:29 PM Revision 6289: Added inputs/_archive/
- 03:27 PM Revision 6288: Removed inputs/QMOR/ because it's an insect collection
- 03:25 PM Revision 6287: schemas/vegbien.sql: projectcontributor: Removed surname, since this information is stored in party_id->party.surname
- 03:23 PM Revision 6286: schemas/vegbien.sql: projectcontributor: Removed cheatrole, since there is already a role field and this field was unused in VegBank
- 03:21 PM Revision 6285: schemas/vegbien.sql: role: Added values from projectcontributor.ROLE_ID <http://vegbank.org/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=projectcontributor&entity=dba_tabledescription&where=where_tablename#ROLE_ID>
- 03:17 PM Revision 6284: schemas/vegbien.sql: sourcecontributor: role: Changed type to role
- 03:15 PM Revision 6283: schemas/vegbien.sql: role enum: Added VegBank data dictionary values from <http://vegbank.org/vegbank/views/dba_fielddescription_detail.jsp?view=detail&wparam=1331&entity=dba_fielddescription¶ms=1331>
- 03:03 PM Revision 6282: schemas/vegbien.sql: sourcecontributor: Renamed position to order for consistency with the ERD definition <http://vegbank.org/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=referencecontributor&entity=dba_tabledescription&where=where_tablename#position> and disambiguation from other meanings of position which are similar to role
- 03:00 PM Revision 6281: schemas/vegbien.sql: sourcecontributor: Renamed roletype to role for consistency with the ERD definition <http://vegbank.org/vegbank/views/dba_tabledescription_detail.jsp?view=detail&wparam=referencecontributor&entity=dba_tabledescription&where=where_tablename#roleType>
- 02:53 PM Revision 6280: inputs/.geoscrub/geoscrub_output/map.csv: Mapped to county, acceptedCounty
- 02:52 PM Revision 6279: mappings/VegCore-VegBIEN.csv: Mapped acceptedCounty, county to the matched place
- 02:50 PM Revision 6278: mappings/VegCore.csv: Added acceptedCounty
- 02:42 PM Revision 6277: schemas/pg_hba.Mac.conf: Changed to match schemas/pg_hba.conf
- 02:37 PM Revision 6276: schemas/pg_hba.conf: Fixed bug where also need an IPv6 bien entry with md5 authentication, because the IPv4 md5 authentication does not apply to "localhost", which is translated to the IPv6 address ::1
- 02:27 PM Revision 6275: schemas/pg_hba.conf: Fixed bug where also need a *local* bien entry with md5 authentication, because the host-based md5 authentication applies only to literal IP addresses, not "localhost"
- 02:08 PM Revision 6274: Added schemas/pg_hba.Mac.conf
- 02:01 PM Revision 6273: schemas/pg_hba.conf: Restrict all accesses to the server except the bien user accessing vegbien using ident or a password, and the postgres superuser logging in using ident
- 01:25 PM Revision 6272: inputs/.geoscrub/geoscrub_output/map.csv: Mapped countyvalidity to latLongInCounty
- 01:24 PM Revision 6271: schemas/functions.sql: _map(): Fixed bug where entries that map to NULL were incorrectly being treated as if the entry didn't exist. Note that -> returns NULL both if the entry's value is NULL and if the entry doesn't exist, so ? must be used to recheck the presence of the key in the hstore.
- 12:48 PM Revision 6270: mappings/VegCore-VegBIEN.csv: Mapped latLongInCounty
- 12:46 PM Revision 6269: mappings/VegCore.csv: Added latLongInCounty
- 12:43 PM Revision 6268: schemas/vegbien.sql: Added distance_to_county_m. Note that this can also be used to store latLongInCounty by mapping true to 0 and false to -1.
- 12:22 PM Revision 6267: schemas/pg_hba.conf: Changed trust authentication back to ident/md5. Not sure how it got set to trust since I used md5 when enabling remote access to the DB for the bien user.
- 12:08 PM Revision 6266: Added schemas/pg_hba.conf
- 11:48 AM Revision 6265: schemas/vegbien.sql: place: Removed placecode to prevent datasources from creating duplicate entries for the same place, with different placecodes. This was a problem with the original BIEN2 geoscrub dataset, which contained duplicates.
- 10:54 AM Revision 6264: inputs/import.stats.xls: Updated import times
Also available in: Atom