Releases: USEPA/emf
Version 3.0 - 02/14/2018
EMF
- Updated EMF server to require Apache Tomcat 8 or later
- Fixed labeling for columns FUG_WIDTH_XDIM and FUG_LENGTH_YDIM in the Flat File 2010 Point dataset type
- Fixed the Dataset Type Manager window to correctly disable non-admin buttons after a refresh
- Added support for new Module Tool (disabled by default)
CoST
- Removed unused source groups
- Purged obsolete point sector control measures from the CMDB
- Removed all existing incremental cost-per-ton values from the CMDB; removed unused control-measure-specific capital recovery factors and discount rates
- Relabeled control strategy "discount rate" to "interest rate"
- Removed unused fields from the Control Measure At-A-Glance report
- Updated control strategy cost columns to use double precision values
- Added formatting to control efficiency values shown in view/edit windows and At-A-Glance reports
- Added columns to the control strategy detailed results dataset to report raw emissions reduction (based on uncontrolled inventory emissions) and associated annual cost-per-ton
- Updated labels on control strategy constraints tab to reflect that values are for effective reductions and cost-per-ton, not raw
- 3/6/2018 Deleted old control measure property records from CMDB
- 3/6/2018 Updated cost equation descriptions
Upgrading from v2.15
Before starting, shut down the Tomcat server. If you are not running Tomcat 8 or later, you will need to upgrade your installation. After upgrading Tomcat, make sure that the directory pointed to by the DOWNLOAD_EXPORT_FOLDER property in the emf.properties table exists.
Database updates
In version 3.0, two columns in the Flat File 2010 Point dataset type were renamed for clarity. The following SQL query updates the dataset type definition:
update emf.fileformat_columns
set name = 'FUG_WIDTH_XDIM'
where file_format_id in (select file_format from emf.dataset_types where name = 'Flat File 2010 Point')
and name = 'FUG_WIDTH_YDIM';
update emf.fileformat_columns
set name = 'FUG_LENGTH_YDIM'
where file_format_id in (select file_format from emf.dataset_types where name = 'Flat File 2010 Point')
and name = 'FUG_LENGTH_XDIM';
To update existing Flat File 2010 Point datasets, run the query from the file linked below. Note, this is only needed if you are using existing FF10 point datasets with the module system.
\i update_ff10_point_fug_columns.sql
CMDB updates
ALTER TABLE emf.control_strategies ALTER COLUMN total_cost TYPE double precision;
ALTER TABLE emf.strategy_results ALTER COLUMN total_cost TYPE double precision;
Load updated stored procedures
\i apply_cap_measures_on_hap_pollutants.sql
\i cost_equations_v2.sql
\i get_remaining_emis_expression.sql
\i populate_least_cost_strategy_detailed_result.sql
\i populate_least_cost_strategy_worksheet.sql
\i run_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy_finalize.sql
\i run_multi_pollutant_max_emis_red_strategy.sql
Load updated cost equation descriptions
\i update_equation_text.sql
EMF server updates
Copy new emf.war into Tomcat webapps directory
Update version in database
UPDATE emf.properties SET value = 'v3.0 - 02/14/2018' WHERE name = 'EMF-version';
Client updates
Copy new emf-client.jar into EMF client directory
Copy remaining JAR files (epa-commons.jar, jgraphx.jar, rsyntaxtextarea-3.0.0-SNAPSHOT.jar) into EMF/lib client directory
Enable module system (optional)
Create database schema
\i Upstream_CreateSchema.setup
\i Upstream_CreateModuleTypesTables.setup
\i Upstream_CreateModulesTables.setup
\i Upstream_CreateModuleHistoryTables.setup
\i Upstream_CreateModuleTagsTable.setup
\i Upstream_CreateModuleParameterTypesTable.setup
\i Upstream_CreateCompositeModuleTypesTables.setup
\i Upstream_CreateCompositeModulesTables.setup
\i Upstream_CreateCompositeModuleHistoryTables.setup
\i Upstream_InsertModuleParameterTypes.setup
\i Upstream_InsertModuleKeywords.setup
Update UI setting
UPDATE emf.properties SET value = 'true' WHERE name = 'SHOW_MODULES_MENU';
Finishing up
Once all updates are complete, start the Tomcat server.
Reload CMDB
If you have custom control measures in your CMDB, first export these measures, so you can reload them after the main update.
Load the updated control measure database from the cmdb_20180308_*.csv set of files. Purge all existing measures during the import step.
After loading the default CMDB, re-import any custom control measures.
Version 2.15 - 08/24/2017
CoST
- Fixed bug trying to finalize control strategies that use control measures to be purged
- Updated Control Measure Manager cost year menu to cover 2000 to 2016
- Fixed control measure reference search to be case-insensitive
- Fixed At-A-Glance report to handle various numbers of control efficiency records correctly
- Control Measure Database updates:
- Purged obsolete onroad and nonroad control measures, and old temporary measures
- Converted control measures using pollutants PM2_5 and PM10 to PM25-PRI and PM10-PRI
- Removed control efficiency records with old effective dates
- Removed special characters from control measure source group names and property values
- Updated control efficiencies and equipment life values for some NOx measures
- 8/28/2017 Updated control measures using equation types 1, 12, and 13
- 9/7/2017 For several PM measures, removed control efficiency records with effective dates of 1/1/2020 and updated control efficiency values
Upgrading from v2.14
Before starting, shut down the Tomcat server.
CMDB updates
Load updated stored procedures
\i populate_least_cost_strategy_worksheet.sql
\i populate_strategy_messages.sql
\i run_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy_finalize.sql
EMF server updates
Copy new emf.war into Tomcat webapps directory
Update version in database
UPDATE emf.properties SET value = 'v2.15 - 08/24/2017' WHERE name = 'EMF-version';
Client updates
Copy new emf-client.jar into EMF client directory
Finishing up
Once all updates are complete, start the Tomcat server.
Reload CMDB
If you have custom control measures in your CMDB, first export these measures, so you can reload them after the main update.
Load the updated control measure database from the cmdb_20170917_*.csv set of files. Purge all existing measures during the import step.
After loading the default CMDB, re-import any custom control measures.
Version 2.14 - 06/27/1017
CoST
- Updated the lists of pollutants in the Control Measure Manager window to only show pollutants actually controlled by measures in the system, instead of all defined pollutants
- Added checks for null cost equation parameters for Equation Type 2 and its variants
- Fixed a bug in the calculations for Equation Type 13 caused by an order of operations error
- Removed special characters (curly quotes, long dashes, and symbols) from control measure names, descriptions, and references
EMF
- Added logging for commands run from the RemoteCommand execute method
- Stopped renaming of database tables when a dataset's name is changed
- Fixed a bug when creating a new flexible format dataset type with spaces in the column names; spaces are automatically converted to underscores in the database table definition
Upgrading from v2.13
Before starting, shut down the Tomcat server.
CMDB updates
Load updated cost equations
\i cost_equations_v2.sql
EMF server updates
Copy new emf.war file into Tomcat webapps directory
Update version in database
UPDATE emf.properties SET value = 'v2.14 - 06/27/2017' WHERE name = 'EMF-version';
Client updates
Copy new emf-client.jar into EMF client directory
Copy new epa-commons.jar into EMF/lib client directory
Finishing up
Once all updates are complete, start the Tomcat server.
Reload CMDB
Note that the CMDB changes are purely cosmetic, removing special characters from control measure names, descriptions, and references. Reloading the CMDB won't change any strategy results.
If you have custom control measures in your CMDB, first export these measures, so you can reload them after the main update.
Load the updated control measure database from the cmdb_20170627_*.csv set of files. Purge all existing measures during the import step.
After loading the default CMDB, re-import any custom control measures.
Version 2.13 - 03/20/2017
EMF
- Improved the display of file format information when viewing or editing a dataset type
- Enhanced the case comparison report to include dataset version differences
- Added the ability to upload local files to the server via the EMF client
- Automatic clean-up of uploaded files after 12 hours
CoST
- Changed the control strategy cost year to use a pull-down menu of available years instead of a text field
- Updated cost year conversion factors (implicit price deflators) for 2013 through 2016
- Updated NOx non-EGU control measures based on SRA recommendations
- Miscellaneous CMDB clean-up and fixes
Upgrading from v2.12
Before starting, shut down the Tomcat server.
File upload handling
Create the file upload directory inside the ImportExportTempDir. The following query will show the currently set directory:
SELECT value FROM emf.properties WHERE name = 'ImportExportTempDir';
For example, if the value is /data/tmp/:
mkdir /data/tmp/upload
Ensure this directory is writeable by the Tomcat user.
Create max upload file size property (value in MB):
INSERT INTO emf.properties (name, value) VALUES ('MAX_FILE_UPLOAD_SIZE', '100');
CMDB updates
Load updated gdplev values
\i update_gdplev_values.sql
EMF server updates
Copy new emf.war file into Tomcat webapps directory
Update version in database
UPDATE emf.properties SET value = 'v2.13 - 03/20/2017' WHERE name = 'EMF-version';
Client updates
Copy new emf-client.jar into EMF client directory
Copy new epa-commons.jar into EMF/lib client directory
Copy commons-fileupload-1.3.2.jar into EMF/lib client directory
Finishing up
Once all updates are complete, start the Tomcat server.
Reload CMDB
If you have custom control measures in your CMDB, first export these measures, so you can reload them after the main update.
Load the updated control measure database from the cmdb_20170320_*.csv set of files. Purge all existing measures during the import step.
After loading the default CMDB, re-import any custom control measures.
Version 2.12 - 09/22/2016
Bug fixes
- Updated the uniqueness checks when importing control measure efficiency records to take into account the minimum and maximum capacity columns
- Updated the labels used for the maximum cost per ton and maximum annualized cost control strategy constraints to reflect that the constraints are specified in dollars matching the cost year of the control strategy, not a fixed reference year
Enhancements
- Consolidated database connections via the Tomcat-managed connection pool
- Expanded control measure cost equation Type 2 to support new NOx non-EGU control measures
- Updated NOx non-EGU control measures with new cost data, SCC assignments, and cost equations
- Changed the final cost-per-ton calculations in CoST to use the net emissions reduction instead of gross; this change impacts costs when replacement controls are applied
Upgrading from v2.11.1
Before starting, shut down the Tomcat server.
-
Apply schema upgrade statements from Cost_Schema_Upgrade.setup (all statements labeled as 08/04/2016). The package db_updates.v2.12.zip includes a version of Cost_Schema_Upgrade.setup with just the updates needed.
\i Cost_Schema_Upgrade.setup -
Load updated functions.
\i cost_equations_v2.sql -
Copy new emf.war file into Tomcat webapps directory
-
Copy new emf-client.jar into EMF client directory
-
Update version in database
UPDATE emf.properties SET value = 'v2.12 - 09/22/2016' WHERE name = 'EMF-version';
Once all updates are complete, start the Tomcat server.
To load the updated ptnonipm control measures, use the Import option from the Control Measures Manager window. Select the suite of nox_nonegu_20160713_*.csv files. Purge the existing ptnonipm control measures during the import.
Version 2.11.1 - 06/15/2016
Bug fixes
- Fix checks for design capacity columns in inventories when applying new generating capacity thresholds; allows control strategies using nonpoint inventories to run
Upgrading from v2.11
Before starting, shut down the Tomcat server.
-
Load updated functions
\i populate_least_cost_strategy_worksheet.sql
\i run_annotate_inventory.sql
\i run_apply_measures_in_series_strategy.sql
\i run_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy.sql
\i run_project_future_year_inventory.sql -
Copy new emf-client.jar into EMF client directory
-
Update version in database
UPDATE emf.properties SET value = 'v2.11.1 - 06/15/2016' WHERE name = 'EMF-version';
Once all updates are complete, start the Tomcat server.
Version 2.11 - 06/06/2016
Bug fixes
- Fixed a bug when editing cases where changes after an initial save weren't saved to the database
- Fixed a bug that caused multi-pollutant control strategies to fail in some circumstances
- Fixed issues in the control measure import interface where the import button wasn't enabled after errors
Enhancements
- The control measure database has been updated based on IPM v5.15 for the ptipm sector. Updates include revised control efficiency and cost equation parameters, removal of obsolete control measures, addition of new measures, and fixes to cost equation calculations. These updates make use of several new features included in EMF v2.11:
- Include the control measure's equation type in the Control Measure Manager details display
- Allow control measures to be targeted to sources based on generating capacity
- Use SCC-specific combustion efficiency percentages when calculating generating capacity from design capacity
Upgrading from v2.10
Before starting, shut down the Tomcat server.
-
Add new control measure fields to database
ALTER TABLE emf.control_measure_efficiencyrecords ADD COLUMN min_capacity double precision;
ALTER TABLE emf.control_measure_efficiencyrecords ADD COLUMN max_capacity double precision;
ALTER TABLE emf.control_measure_sccs ADD COLUMN combustion_efficiency real; -
Load updated functions
\i convert_design_capacity_to_mw.sql
\i cost_equations_old_approach.sql
\i cost_equations_v2.sql
\i get_convert_design_capacity_expression.sql
\i populate_least_cost_strategy_worksheet.sql
\i run_annotate_inventory.sql
\i run_apply_measures_in_series_strategy.sql
\i run_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy.sql
\i run_project_future_year_inventory.sql -
Copy new emf.war file into Tomcat webapps directory
-
Copy new epa-commons.jar into EMF client lib directory
-
Copy new emf-client.jar into EMF client directory
-
Update version in database
UPDATE emf.properties SET value = 'v2.11 - 06/06/2016' WHERE name = 'EMF-version';
Once all updates are complete, start the Tomcat server.
To load the updated ptipm control measures, use the Import option from the Control Measures Manager window. Select the suite of ptipm_20160329_*.csv files. Purge the existing ptipm control measures during the import.
Version 2.10 - 01/28/2016
Bug fixes
- Cost-per-ton values displayed in the Control Measure Manager window when Show Details is checked are now correctly adjusted for the selected Cost Year.
- Fixed an intermittent problem when running a Least Cost Curve control strategy that caused calculations at different increments to apply maximum controls instead of the specified percent reduction.
- Allow cancelled control strategies to be re-run.
Enhancements
- Conversions of dollar amounts between different years are now done using annual GDP implicit price deflator values. Previously, the EMF used chained GDP values for converting between cost years.
- Added support for cost years 2007 through 2014.
- Updated the default cost year to 2013; previously the default year was 2006.
Upgrading from v2.9.1
The zip archive db_updates.v2.10.zip contains the SQL files referred to in the list of updates below.
-
Update reference.gdplev schema
ALTER TABLE reference.gdplev ADD COLUMN deflator_gdp double precision; -
Load updated gdplev values
\i update_gdplev_values.sql -
Update stored reference year cost per ton values
\i update_eff_rec_ref_yr_cpt_to_new_gdplev.sql -
Update aggregated efficiency records
\i update_agg_eff_records.sql -
Load updated functions
\i cost_equations_v2.sql
\i cost_equations_old_approach.sql
\i populate_least_cost_strategy_worksheet.sql
\i run_annotate_inventory.sql
\i run_apply_measures_in_series_strategy.sql
\i run_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy.sql
\i run_multi_pollutant_max_emis_red_strategy_finalize.sql
\i run_project_future_year_inventory.sql
\i get_least_cost_worksheet_emis_reduction.sql
\i narrow_in_on_least_cost_target.sql -
Copy new emf.war file into Tomcat webapps directory
-
Copy new emf-client.jar into EMF client directory
-
Update version in database
UPDATE emf.properties SET value = 'v2.10 - 01/28/2016' WHERE name = 'EMF-version';
Version 2.9.1 - 09/09/2015
EMF
- Prevent datasets that are being used as a temporal profile or cross-reference input in a temporal allocation run from being deleted.
- Allow the project associated with a dataset, control strategy, or temporal allocation to be set back to none.
CoST
- Fixed a bug when matching inventory sources that could cause newer sources to be excluded from least cost analyses.
- Create the server export folder if needed when exporting control measures for automatic download.
- When deleting control strategies and associated datasets (control strategy results, generated inventories), fully delete the selected datasets. Previously, the datasets would be marked as deleted but not purged.
- Fixed the calculation of per-source percent reductions when creating projected inventories. This bug affected sources that had additive controls applied in the Project Future Year Inventory strategy.
Version 2.9 - 07/20/2015
EMF
- This release adds a new feature that will allow a user to Archive or Restore a dataset or QA Step result. The archive process will still keep around the meta data on the dataset or QA Step, but the underlying data will be archived and removed from the database. The Restore process will allow the user to bring back the underlying data for the dataset or QA Step.
CoST
- The Control Measure Manager search box will now match control measures by name or abbreviation.
- When editing control programs, the list of available dataset types is now limited to those types used by control programs: Allowable Packet, Allowable Packet Extended, Control Packet, Control Packet Extended, Plant Closure (CSV), Projection Packet, and Projection Packet Extended.