MC2 Release Notes - March 2020
SDP-33782 Python XML2XML: Add possibility to map nodes under the header node after objectType
Add possibility to map message header and transaction header nodes
Add possibility to map message header and transaction header nodes. Previously header could only be mapped in Delimited or Fixed formats using dest_items. For the dialect output where taxonomy element is used handling of elements "txn_h" and "h" in dest_items was also implemented.
Example:
"dest_items":
{ "h": [ [[ ["'custom_element_value_h'", "", false, null, "", "custom_header_node/custom_header_element_1"], [":investmentType:", "", false, null, "", "custom_header_node/custom_header_element_2"], ["get_instruction_param('custom_header_element_3', :GVAR_RTR:)", "", false, null, "", "custom_header_node/custom_header_element_3"], ["'custom_header_element_5_value'", "", false, null, "", "custom_header_element_5"]], "True", null] ], "txn_h": [ [[ ["'Test value for objectDescription'", "", false, null, "", "objectDescription"], ["'EffeectiveDate~Today'", "", false, null, "", "calcDates"], ["'N'", "", false, null, "", "checkActivity"], [":putCallIndicator:", "", false, null, "", "custom_transaction_header_node/custom_header_element_7"], ["'custom_header_element_8_value'", "", false, null, "", "custom_transaction_header_node/custom_header_element_8"], ["get_instruction_param('custom_header_element_9_value', :GVAR_RTR:)", "", false, null, "", "custom_transaction_header_node/custom_header_element_9"], ["convert(Date(|accrualDate|,'mm/dd/yyyy'), 'yyyy-mm-dd')", "", false, null, "", "accrualDate"]], "True", null] ] }
,
"taxonomy": [
...
],
SDP-33748 Installer error without description for corrupted file unzip and artifactory mc2.zip download time out error
Updated Installer to provide error message and exit with error in case of download timeout or corrupted archive
When artifactory download timed out for the installer, the stream was not failing and the time out error was hidden. The code was changed to fail the stream when artifactory download timed out to display the error.
Also, when the installer unzip was corrupted and failed there wasn't an error description. There was code added to display an error description when the unzip step failed.
SDP-33578 distribution profiles with ForceExtractFileCreation work incorrectly for SourceMashups
The distribution profiles issues have been fixed for EBS SourceMashup extracts.
The distribution profile issues are resolved for EBS source mashup requests with distribution profile configured.
SDP-33558 Create interfaces dataset that joins by the instance
Create interface dataset that joins by instance
Originally the EDS interfaces dataset was joining by source_name, but now it will join using instance instead.
SDP-33532 MC2 Generic Load profiles: add DECRYPT rule element to MC2
Added ability to decrypt inbound data in MC2
Added the ability to decrypt incoming gpg/pgp files in dfa stream and also made these changes backward compatible with classic mc generic load profile.
SDP-33507 issue with the effectivedaterule and ExtractNamePatternEx parameters for EBS extracts.
The ExtractNamePatternEx effectivedaterule issue for EBS extracts has been resolved.
If effectivedaterule and ExtractNamePatternEx with @effectivedate pattern parameters are specified, the extract file will contain effectivedate as a part of file name.
SDP-33479 MC2 Generic Load profiles: eagle_ml-2-0_default_cm_dfa has to support load profile datamap files
The MC2 eagle_ml-2-0_default_cm_dfa stream supports generic load profiles
As part of MC2 generic load profiles support we improved the MC2 DFA stream to parse and process generic load profiles.
SDP-33449 ForceExtractFileCreation does not work correctly - there is no headers in result files, while testing interfaces that contain source mashups
The ForceExtractFileCreation parameter issue has been fixed for EBS source mashups extracts
The EBS source mashup now creates empty file for if status is no_data and ForceExtractFileCreation is enabled.
SDP-32908 EDS Held Only filter fails to use the entity selection parameters
Corrected EDS Held Only filter
Corrected the EDS Held only filter to work in conjunction with the temp table used by the Entity filter.
SDP-32484 EntityXrefs were not loaded with GenericEntity mc2 loader
EntityXrefs were not loaded with GenericEntity mc2 loader
When using the MC2 loader for GenericEntity the EntityXrefs are now correctly being applied on the inbound.
SDP-34270 Change Python Deployment To Not Update The Python PATH In The User Profile
No longer updating bash_profile on python deployment
SDP-33793 Add support for using custom datasets with default query profiles
Support for Default Query Profile in Datasets
Default Query Profile is used to reduce number of fields in dataset query. One of the main goals of using default query profiles is for caching data for such static core datasets like GenericSMF, Codevalue, etc. (which do not change every day and fully cached) . For example, some clients do not need all Generic SMF data (~2100 fields) cached and use in mashups only less than 10% of fields. And in order not to cache all fields and make cache reload process faster, the default query profile will be introduced.
File Name, Id and location convention for default query profile:
File Name: _ {dataframe_name}
default.json Example: “codevalue_default.jsonâ€
Id: For default profile should be the the same as file name
Location: “eagle/estar/tpe/dynamic/matadata/custom/dataset/profileâ€
Default query profile will be applied during the initial request generated, when source query policy is created.
For current stage if default query profile exists in region, it will be used by default.
Example of profile:
{
"_id": "codevalue_default",
"sourceTable":
[
{ "resource": "eagledb:REFERENCE.CODE_VALUES", "selectColumns": "CODE_INST,LONG_DESC,SHORT_DESC,UPD_OPER" }
,
{ "resource": "eagledb:REFERENCE.INTERFACES", "selectColumns": "SHORT_DESC=SOURCE_NAME" }
]
}
SDP-32125 MC2-kafka messaging: implement java logic to work with kafka eagle streams configuration
Updated MC2 java to work with kafka streams
SDP-33380 Add the x-eagle-business-task-id to the Swagger UI for EQL
Added x_eagle_business_task_id parameter to EQL interface in swagger UI
The business task id parameter was not available in Swagger UI, so we added x_eagle_business_task_id parameter,
SDP-33315 Reply file not created with unique name in response to EQL request with error
Updated eql ReST endpoint to create response file with unique name
When there was an EQL request that failed, the TSR created was not a unique file name. The code was updated so that a unique file name was created even when an EQL request failed.
SDP-33127 Create ESTAR_PORTFOLIO_VALUATION EDS dataset
Create ESTAR_PORTFOLIO_VALUATION EDS
Created portfoliovaluation EDS dataset that pulls data from the ESTAR_PORTFOLIO_VALUATION table in Eagle. Can be used as an EDS Dataset call or used in Source Mashup.
SDP-33112 EQL endpoint returns incorrect Content-Type header value
Updated eql ReST endpoint to return correct content-type in response header
Content-Type header wasn’t set correspondingly to the response for EQL endpoint, so it had the default value application.json. This was corrected to show the appropriate file type according to the request.
SDP-31195 Ability to run multi processing transformation in EBS
Added ability to run multi processing transformation
Added option to transform data using multiprocessing to reduce transformation time.
It works for main data set and for additional destinations. This option can be enable via RTR parameters.
<taskParameter>
<name>multiproc</name>
<value>Y</value>
</taskParameter>
<taskParameter>
<name>partitioncount</name>
<value>2</value>
</taskParameter>
partitioncount can be any integer value and all result files are split on the several parts (chunk count = partitioncount).
SDP-31192 Add new cache mode - BLOB
New cache mode "blob"
Added new cache mode "blob" for data which does not have unique key.
Data and header are saved in cache with one common key which is caclulated with RTR filters.
To use this mode set in dataset file:
"source_query_policy" : {
"cache_mode": "blob",
...
Files changed:
def_enums.py
idsdataframe.py