0.00.01000005050NY50000YN1000100clusterNdynamicY1ati-dev-ana01ati-dev-ana019081pentaho-dinjainEncrypted 2be98afc86aa7f2e4bb18bd63c99dbddeYNATI-PRD-ANA03ATI-PRD-ANA039080pentaho-diadminEncrypted 2be98afc86aa7f2e4bb18bd63c99dbddeNNATI-STG-ANA03ATI-STG-ANA039080pentaho-dipentahoEncrypted 2be98afc86aa7f2b4ae17ba71d69dff8bNNDI Serverlocalhost9080pentaho-dijoeEncrypted 2be98afc86aa7f2e4bb18bd63c99dbddeYNDI Server 5.0localhost9080pentaho-diadminEncrypted 2be98afc86aa7f2e4bb18bd63c99dbddeYNlocal127.0.0.19080clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8YNMasterlocalhost8081clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8YNremote192.168.1.169080pentaho-di/kettleadminEncrypted 2be98afc86aa7f2e4bb18bd63c99dbddeYNSlave1localhost8082clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8NNSlave2localhost8083clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8NNSlave3localhost8084clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8NNSlave4localhost8085clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8NNSlave5localhost8086clusterEncrypted 2be98afc86aa7f2e4cb1aa265cd86aac8NNClusterSchema4000020005000YNSlave3Slave2Slave1MasterClusterSchema_dynamic4000020005000YYMaster-2020/08/06 18:24:35.729schmitz2022/06/03 16:13:43.354H4sIAAAAAAAAAAMAAAAAAAAAAAA=Ncreated (from jiraissue)1920108815126.SF NS Text13NN000255205112100100100Ycreated (from changegroup)1248108818226.SF NS Text13NN000255205112100100100YExtract and Transform326414526.AppleSystemUIFont13NN000255205112100100100YLoad3217444026.AppleSystemUIFont13NN000255205112100100100YIf the status of an issue has never been changed, there is no status change event for that issue.
The procedure on the right adds a change event to any issue that does not yet have a status change event.
For the value of the status change event the current status of the issue is used, which should be the initial
status, defined by the configured status workflow.
For the timestamp of the change event, the creation timestamp of the issue itself is used.832960656106.AppleSystemUIFont13NN000255205112100100100YData Warehouse[ihre_domain/container_name]POSTGRESQLNativedatawarehouse[host/container_port]datawarehouseEncrypted 6461746175dfeacaa005d28181bb18bd63c99dbddeFORCE_IDENTIFIERS_TO_LOWERCASENFORCE_IDENTIFIERS_TO_UPPERCASENIS_CLUSTEREDNPORT_NUMBER[host/container_port]PRESERVE_RESERVED_WORD_CASEYQUOTE_ALL_FIELDSNSUPPORTS_BOOLEAN_DATA_TYPENSUPPORTS_TIMESTAMP_DATA_TYPENUSE_POOLINGNJira DB[ihre_domain/container_name]POSTGRESQLNativejira[host/container_port]jiraEncrypted 2be98c5a118c69686bb18bd63c99dbddeFORCE_IDENTIFIERS_TO_LOWERCASENFORCE_IDENTIFIERS_TO_UPPERCASENIS_CLUSTEREDNPORT_NUMBER[host/container_port]PRESERVE_RESERVED_WORD_CASEYQUOTE_ALL_FIELDSNSUPPORTS_BOOLEAN_DATA_TYPEYSUPPORTS_TIMESTAMP_DATA_TYPEYUSE_POOLINGNData GridTransformation Executor - llua_jira_issue_dimension-distYTransformation Executor - llua_jira_issue_dimension-distjiraisssueYjiraisssueSort rows id 3YCalculator split timestampSelect values remove created fieldYSelect values remove created fieldMain tableYauthor dimensionissue dimensionYissue dimensionRemove lookup fieldsYRemove lookup fieldsdate dimensionYdate dimensiontime dimensionYtime dimensionrename dimension idsYMain tableauthor dimensionYrename dimension idsBlocking stepYBlocking stepInsert / updateYFilter rows for status fieldSelect values: rename id to changeitem and remove fieldYMerge join newvalueSort rows oldvalueYMerge join oldvalueSelect values: rename status and remove obsolete fieldsYSelect values: rename id to changeitem and remove fieldSort rows newvalueYSelect values: rename status and remove obsolete fieldsSort rows groupidYSort rows newvalueMerge join newvalueYSort rows idMerge join newvalueYSort rows idMerge join oldvalueYSort rows oldvalueMerge join oldvalueYTable input - changeitemFilter rows for status fieldYTable input - statusSort rows idYMerge join groupidSelect values only necessary valuesYSelect values only necessary valuesSort rows issueidYSort rows id 2Merge join groupidYTable input - changegroupSort rows id 2YSort rows groupidMerge join groupidYMerge join issueidSelect values - rm id and status_oldYSort rows issueidMerge join issueidYSort rows id 3Merge join issueidYAppend streams 4Calculator split timestampYSelect values - rm id and status_oldSelect values - sort columnsYSelect values - sort columnsAppend streams 4YConcat fields - date & timeText file output: CSV for PMYMain tableConcat fields - date & timeYAppend streams 2Add a checksum - changeitem_manualYFilter rows - created == created_minSort rows issueid 2YFilter rows - status_old == nullSelect values 2YFilter rows - status_old == nullSelect values sort and renameYGroup by - issueid, aggregate created_minFilter rows - created == created_minYMerge join id - issueidFilter rows - created <> created_minYSelect values sort and rename 2Append streams 2YSelect values 2Stream lookup - issue dataYSelect values sort and renameSet field value to a constant - changeitemYSet field value to a constant - changeitemAppend streams 2YSort rows - issueidGroup by - issueid, aggregate created_minYSort rows issueid 2Merge join id - issueidYSort rows 9Merge join id - issueidYStream lookup - issue dataStream lookup - statusYStream lookup - statusSelect values sort and rename 2YTable input - pseudo_jiraissueSort rows 9YTable input - status 2Stream lookup - statusYFilter rows - created <> created_minFilter rows - status_old == nullYAdd a checksum - changeitem_manualSet field value changeitemYSet field value changeitemSelect values remove changeitem_manualYMerge join issueidSort rows - issueidYSelect values remove changeitem_manualAppend streams 4YSort rows id 3jiraissue 2Yjiraissue 2Stream lookup - issue dataYAdd a checksum - changeitem_manualCheckSumY1noneCRC32changeitem_manualstringNNauthorissueidcreated13121376YAppend streams 2AppendN1noneSet field value to a constant - changeitemSelect values sort and rename 215041376YAppend streams 4AppendN1noneSelect values remove changeitem_manualSelect values - sort columns6881376YBlocking stepBlockingStepY1noneY%%java.io.tmpdir%%block5000Y6882704YCalculator split timestampCalculatorY1noneYyearYEAR_OF_DATEcreatedNone-1-1NmonthMONTH_OF_DATEcreatedNone-1-1NdayDAY_OF_MONTHcreatedNone-1-1NhourHOUR_OF_DAYcreatedNone-1-1NminuteMINUTE_OF_HOURcreatedNone-1-1NsecondSECOND_OF_MINUTEcreatedNone-1-1N6881504YConcat fields - date & timeConcatFieldsY1none-"NNNDOSNoneNYNYtxtNNNNNNYNN0yearNonenone-1-1monthNonenone-1-1dayNonenone-1-1hourNonenone-1-1minuteNonenone-1-1secondNonenone-1-1timestamp255N8641888YData GridDataGridY1none160928YFilter rows - created <> created_minFilterRowsY1noneFilter rows - status_old == nullNcreated_min<>created20161136YFilter rows - created == created_minFilterRowsY1noneSort rows issueid 2Ncreated=created_min13281136YFilter rows - status_old == nullFilterRowsY1noneSelect values 2Select values sort and renameNstatus_oldIS NULL22881136YFilter rows for status fieldFilterRowsY1noneSelect values: rename id to changeitem and remove fieldNfield=constantStringstatus-1-1N352128YGroup by - issueid, aggregate created_minGroupByY1noneYN%%java.io.tmpdir%%grpNNissueidcreated_mincreatedMIN10561136YInsert / updateInsertUpdateY1noneData Warehouse100Nllua_jira_status
fact_status
changeitemchangeitem=statusstatusYauthor_idauthor_idYissue_idissue_idYdate_iddate_idYtime_idtime_idYchangeitemchangeitemN6882816YMain tableDummyN1none6881888YMerge join id - issueidMergeJoinN1noneLEFT OUTERSort rows 9Sort rows issueid 2idissueid18081136YMerge join groupidMergeJoinY1noneLEFT OUTERSort rows groupidSort rows id 2groupidid688816YMerge join issueidMergeJoinN1noneLEFT OUTERSort rows issueidSort rows id 3issueidid6881136YMerge join newvalueMergeJoinY1noneLEFT OUTERSort rows newvalueSort rows idnewvalueid688288YMerge join oldvalueMergeJoinY1noneLEFT OUTERSort rows oldvalueSort rows idoldvalueid688480YRemove lookup fieldsSelectValuesY1noneNissueidassigneesummarylabelprojectissuetypeepicsprintcreatorreporter6882224YSelect values - rm id and status_oldSelectValuesN1noneNstatus_oldid6881216YSelect values - sort columnsSelectValuesY1nonestatusissueidauthorcreatedchangeitemassigneecreatorreportersummarylabelprojectissuetypeepicsprintN6881296YSelect values 2SelectValuesY1noneissuestatusstatusidcreatorauthorcreatedchangeitemN22881264YSelect values remove changeitem_manualSelectValuesY1noneNchangeitem_manual8481376YSelect values only necessary valuesSelectValuesN1nonestatusissueidauthorcreatedchangeitemstatus_oldN688912YSelect values remove created fieldSelectValuesY1noneNcreated6881632YSelect values sort and renameSelectValuesY1nonestatus_oldstatusidissueidcreatorauthorcreatedchangeitemassigneecreatorreportersummarylabelprojectissuetypeepicsprintN20321264YSelect values sort and rename 2SelectValuesY1nonestatus_namestatusidissueidauthorcreatedchangeitemassigneecreatorreportersummarylabelprojectissuetypeepicsprintN17121376YSelect values: rename id to changeitem and remove fieldSelectValuesY1noneidchangeitemYfield688128YSelect values: rename status and remove obsolete fieldsSelectValuesY1nonepnamestatuspname_1status_oldYnewvalueidoldvalueid_1688608YSet field value changeitemSetValueFieldY1nonechangeitemchangeitem_manual10881376YSet field value to a constant - changeitemSetValueConstantN1noneNchangeitemY16961264YSort rows - issueidSortRowsY1none%%java.io.tmpdir%%out1000000NNissueidYNN0NcreatedYNN0N8481136YSort rows issueid 2SortRowsY1none%%java.io.tmpdir%%out1000000NNissueidYNN0N15681136YSort rows 9SortRowsY1none%%java.io.tmpdir%%out1000000NNidYNN0N17601056YSort rows groupidSortRowsY1none%%java.io.tmpdir%%out1000000NNgroupidYNN0N688704YSort rows idSortRowsN1none%%java.io.tmpdir%%out1000000NNidYNN0N352288YSort rows id 2SortRowsY1none%%java.io.tmpdir%%out1000000NNidYNN0N352816YSort rows id 3SortRowsN1none%%java.io.tmpdir%%out1000000NNidYNN0N3521136YSort rows issueidSortRowsN1none%%java.io.tmpdir%%out1000000NNissueidYNN0N6881024YSort rows newvalueSortRowsY1none%%java.io.tmpdir%%out1000000NNnewvalueYNN0N688208YSort rows oldvalueSortRowsY1none%%java.io.tmpdir%%out1000000NNoldvalueYNN0N688384YStream lookup - issue dataStreamLookupY1nonejiraissue 2NYNNididassigneeassigneeStringsummarysummaryStringlabellabelStringprojectprojectStringissuetypeissuetypeStringepicepicStringsprintsprintStringcreatorcreatorStringreporterreporterString22881440YStream lookup - statusStreamLookupY1noneTable input - status 2NYNNstatusidpnamestatus_nameNone20321376YTable input - changegroupTableInputY1noneJira DBSELECT
id
, issueid
, author
, created
FROM public.changegroup
0NNNNIntegernormalid180Table input - changegroupid####0;-####0.,noneNY0NNNen_USEurope/BerlinNIntegernormalissueid180Table input - changegroupissueid####0;-####0.,noneNY0NNNen_USEurope/BerlinNStringnormalauthor255-1Table input - changegroupauthor.,noneNY0NNNen_USEurope/BerlinNTimestampnormalcreated6-1Table input - changegroupcreated.,noneNY0NNNen_USEurope/BerlinN160816YTable input - changeitemTableInputY1noneJira DBSELECT
id
, groupid
, field
, newvalue
, oldvalue
FROM public.changeitem
0NNNNIntegernormalid180Table input - changeitemid####0;-####0.,noneNY0NNNen_USEurope/BerlinNIntegernormalgroupid180Table input - changeitemgroupid####0;-####0.,noneNY0NNNen_USEurope/BerlinNStringnormalfield255-1Table input - changeitemfield.,noneNY0NNNen_USEurope/BerlinNStringnormalnewvalue2147483647-1Table input - changeitemnewvalue.,noneNY0NNNen_USEurope/BerlinNStringnormaloldvalue2147483647-1Table input - changeitemoldvalue.,noneNY0NNNen_USEurope/BerlinN160128YTable input - pseudo_jiraissueTableInputY1noneJira DBSELECT
id
, issuestatus
, created
, creator
FROM public.jiraissue
0NNNNIntegernormalid180Table input - pseudo_jiraissueid####0;-####0.,noneNY0NNNen_USEurope/BerlinNStringnormalissuestatus255-1Table input - pseudo_jiraissueissuestatus.,noneNY0NNNen_USEurope/BerlinNTimestampnormalcreated6-1Table input - pseudo_jiraissuecreated.,noneNY0NNNen_USEurope/BerlinNStringnormalcreator255-1Table input - pseudo_jiraissuecreator.,noneNY0NNNen_USEurope/BerlinN1760960YTable input - statusTableInputY1noneJira DBSELECT
id
, pname
FROM public.issuestatus
0NNNNStringnormalid60-1Table input - statusid.,noneNY0NNNen_USEurope/BerlinNStringnormalpname60-1Table input - statuspname.,noneNY0NNNen_USEurope/BerlinN160288YTable input - status 2TableInputY1noneJira DBSELECT
id
, pname
FROM public.issuestatus
0NNNNStringnormalid60-1Table input - status 2id.,noneNY0NNNen_USEurope/BerlinNStringnormalpname60-1Table input - status 2pname.,noneNY0NNNen_USEurope/BerlinN20321504YText file output: CSV for PMTextFileOutputY1none;"NNYUNIXNoneUTF-8NY${DI_HOME}/csv/jira_status_starNYcsvNNNNNY-yyyy-MM-dd-HH-mm-ssYNN10721888YTransformation Executor - llua_jira_issue_dimension-distTransExecutorY1nonefilename${Internal.Entry.Current.Directory}/llua_jira_issue_dimension-dist.ktr0YTransformation Executor - llua_jira_issue_dimension-distExecutionTimeExecutionResultExecutionNrErrorsExecutionLinesReadExecutionLinesWrittenExecutionLinesInputExecutionLinesOutputExecutionLinesRejectedExecutionLinesUpdatedExecutionLinesDeletedExecutionFilesRetrievedExecutionExitStatusExecutionLogTextExecutionLogChannelIdjiraisssueidInteger180assigneeString255-1creatorString255-1reporterString255-1summaryString255-1labelString-1-1projectString255-1issuetypeString60-1epicString255-1sprintString255-1Transformation Executor - llua_jira_issue_dimension-distFileName1601024Yauthor dimensionCombinationLookupY1nonellua_jira_status
dim_author
Data Warehouse1009999YNNhashcodeauthorauthoridtablemaxN6882000Ydate dimensionCombinationLookupY1nonellua_jira_status
dim_date
Data Warehouse1009999YNNhashcodeyearyearmonthmonthdaydayidtablemaxN6882336Yissue dimensionDimensionLookupY1nonellua_jira_status
dim_issue
Data Warehouse100Yissueidissuedate_fromdate_tosummarysummaryUpdateassigneeassigneeInsertcreatorcreatorUpdatereporterreporterInsertprojectprojectUpdateissuetypeissuetypeUpdatelabellabelsUpdateepicepicUpdatesprintsprintInsertidtablemaxNversion190021995000NNnoneN6882128YjiraisssueDummyY1none1601136Yjiraissue 2DummyY1none3521440Yrename dimension idsSelectValuesY1nonestatusidauthor_idid_1issue_idid_2date_idid_3time_idchangeitemN6882592Ytime dimensionCombinationLookupY1nonellua_jira_status
dim_time
Data Warehouse1009999YNNhashcodehourhourminuteminutesecondsecondidtablemaxN6882464YN