HOR-1319 "Registros corruptos: Crea 2 registros de un Elemento..." SOLVED

Issue:
    Registros corruptos: Crea 2 registros de un Elemento con 2 Tareas, se debe borrar los q no se usan
Cause:
    - El problema se presenta cuando se tiene la combinacion gateway-to-gateway y al hacer (por ejemplo) un movimiento
      de algun elemento del proceso y posteriormente guardarlo. Esto ocasiona que se creen registros corruptos en las tablas
      TASK, ROUTE y ELEMENT_TASK_RELATION
    - Este problema fue ocasionado por:
          > Commit: 137a4ea2237573a54964414f477e13a4f5c76a5d, Card: PMLOCAL-3840
      El commit 137a4ea2237573a54964414f477e13a4f5c76a5d tambien origino los siguientes issues:
          > Commit: 6bb8ad6cc05a3d8e671baa5d358b409c1f2710f6, Card: HOR-421
          > Commit: 9e8030904a4c0f4f670fc159c9220fead10a5859, Card: PMLOCAL-4270
          > Commit: d3296132bf13f81aee12c0f7696d5952d79ee323, Card: HOR-1383
          > Commit: b58dc888c1f54d981fc329c3a35cb4294785e0f7, Card: HOR-1358
Solution:
    Se revirtieron los cambios de los commits involucrados, con el siguiente detalle:
        - Commit 137a4ea2237573a54964414f477e13a4f5c76a5d: Se revirtio el cambio; se soluciono el problema problema planteado en el card
        - Commit 6bb8ad6cc05a3d8e671baa5d358b409c1f2710f6: Se revirtio el cambio; se soluciono el problema problema planteado en el card
        - Commit 9e8030904a4c0f4f670fc159c9220fead10a5859: Se revirtio el cambio
        - Commit d3296132bf13f81aee12c0f7696d5952d79ee323: Se revirtio el cambio
        - Commit b58dc888c1f54d981fc329c3a35cb4294785e0f7: Se revirtio el cambio; se soluciono el problema planteado segun el analisis del commit
This commit is contained in:
Victor Saisa Lopez
2016-07-26 15:34:52 -04:00
parent d58967138c
commit bf115b86ca
16 changed files with 249 additions and 305 deletions

View File

@@ -25,7 +25,7 @@ abstract class BaseProcessPeer
const CLASS_DEFAULT = 'classes.model.Process';
/** The total number of columns. */
const NUM_COLUMNS = 37;
const NUM_COLUMNS = 39;
/** The number of lazy-loaded columns. */
const NUM_LAZY_LOAD_COLUMNS = 0;
@@ -145,6 +145,9 @@ abstract class BaseProcessPeer
/** the column name for the PRO_ITEE field */
const PRO_ITEE = 'PROCESS.PRO_ITEE';
/** the column name for the PRO_ACTION_DONE field */
const PRO_ACTION_DONE = 'PROCESS.PRO_ACTION_DONE';
/** The PHP to DB Name Mapping */
private static $phpNameMap = null;
@@ -156,10 +159,10 @@ abstract class BaseProcessPeer
* e.g. self::$fieldNames[self::TYPE_PHPNAME][0] = 'Id'
*/
private static $fieldNames = array (
BasePeer::TYPE_PHPNAME => array ('ProUid', 'ProTitle', 'ProDescription', 'ProParent', 'ProTime', 'ProTimeunit', 'ProStatus', 'ProTypeDay', 'ProType', 'ProAssignment', 'ProShowMap', 'ProShowMessage', 'ProSubprocess', 'ProTriOpen', 'ProTriDeleted', 'ProTriCanceled', 'ProTriPaused', 'ProTriReassigned', 'ProTriUnpaused', 'ProTypeProcess', 'ProShowDelegate', 'ProShowDynaform', 'ProCategory', 'ProSubCategory', 'ProIndustry', 'ProUpdateDate', 'ProCreateDate', 'ProCreateUser', 'ProHeight', 'ProWidth', 'ProTitleX', 'ProTitleY', 'ProDebug', 'ProDynaforms', 'ProDerivationScreenTpl', 'ProCost', 'ProUnitCost', 'ProItee', ),
BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID, ProcessPeer::PRO_TITLE, ProcessPeer::PRO_DESCRIPTION, ProcessPeer::PRO_PARENT, ProcessPeer::PRO_TIME, ProcessPeer::PRO_TIMEUNIT, ProcessPeer::PRO_STATUS, ProcessPeer::PRO_TYPE_DAY, ProcessPeer::PRO_TYPE, ProcessPeer::PRO_ASSIGNMENT, ProcessPeer::PRO_SHOW_MAP, ProcessPeer::PRO_SHOW_MESSAGE, ProcessPeer::PRO_SUBPROCESS, ProcessPeer::PRO_TRI_OPEN, ProcessPeer::PRO_TRI_DELETED, ProcessPeer::PRO_TRI_CANCELED, ProcessPeer::PRO_TRI_PAUSED, ProcessPeer::PRO_TRI_REASSIGNED, ProcessPeer::PRO_TRI_UNPAUSED, ProcessPeer::PRO_TYPE_PROCESS, ProcessPeer::PRO_SHOW_DELEGATE, ProcessPeer::PRO_SHOW_DYNAFORM, ProcessPeer::PRO_CATEGORY, ProcessPeer::PRO_SUB_CATEGORY, ProcessPeer::PRO_INDUSTRY, ProcessPeer::PRO_UPDATE_DATE, ProcessPeer::PRO_CREATE_DATE, ProcessPeer::PRO_CREATE_USER, ProcessPeer::PRO_HEIGHT, ProcessPeer::PRO_WIDTH, ProcessPeer::PRO_TITLE_X, ProcessPeer::PRO_TITLE_Y, ProcessPeer::PRO_DEBUG, ProcessPeer::PRO_DYNAFORMS, ProcessPeer::PRO_DERIVATION_SCREEN_TPL, ProcessPeer::PRO_COST, ProcessPeer::PRO_UNIT_COST, ProcessPeer::PRO_ITEE, ),
BasePeer::TYPE_FIELDNAME => array ('PRO_UID', 'PRO_TITLE', 'PRO_DESCRIPTION', 'PRO_PARENT', 'PRO_TIME', 'PRO_TIMEUNIT', 'PRO_STATUS', 'PRO_TYPE_DAY', 'PRO_TYPE', 'PRO_ASSIGNMENT', 'PRO_SHOW_MAP', 'PRO_SHOW_MESSAGE', 'PRO_SUBPROCESS', 'PRO_TRI_OPEN', 'PRO_TRI_DELETED', 'PRO_TRI_CANCELED', 'PRO_TRI_PAUSED', 'PRO_TRI_REASSIGNED', 'PRO_TRI_UNPAUSED', 'PRO_TYPE_PROCESS', 'PRO_SHOW_DELEGATE', 'PRO_SHOW_DYNAFORM', 'PRO_CATEGORY', 'PRO_SUB_CATEGORY', 'PRO_INDUSTRY', 'PRO_UPDATE_DATE', 'PRO_CREATE_DATE', 'PRO_CREATE_USER', 'PRO_HEIGHT', 'PRO_WIDTH', 'PRO_TITLE_X', 'PRO_TITLE_Y', 'PRO_DEBUG', 'PRO_DYNAFORMS', 'PRO_DERIVATION_SCREEN_TPL', 'PRO_COST', 'PRO_UNIT_COST', 'PRO_ITEE', ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, )
BasePeer::TYPE_PHPNAME => array ('ProUid', 'ProTitle', 'ProDescription', 'ProParent', 'ProTime', 'ProTimeunit', 'ProStatus', 'ProTypeDay', 'ProType', 'ProAssignment', 'ProShowMap', 'ProShowMessage', 'ProSubprocess', 'ProTriOpen', 'ProTriDeleted', 'ProTriCanceled', 'ProTriPaused', 'ProTriReassigned', 'ProTriUnpaused', 'ProTypeProcess', 'ProShowDelegate', 'ProShowDynaform', 'ProCategory', 'ProSubCategory', 'ProIndustry', 'ProUpdateDate', 'ProCreateDate', 'ProCreateUser', 'ProHeight', 'ProWidth', 'ProTitleX', 'ProTitleY', 'ProDebug', 'ProDynaforms', 'ProDerivationScreenTpl', 'ProCost', 'ProUnitCost', 'ProItee', 'ProActionDone', ),
BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID, ProcessPeer::PRO_TITLE, ProcessPeer::PRO_DESCRIPTION, ProcessPeer::PRO_PARENT, ProcessPeer::PRO_TIME, ProcessPeer::PRO_TIMEUNIT, ProcessPeer::PRO_STATUS, ProcessPeer::PRO_TYPE_DAY, ProcessPeer::PRO_TYPE, ProcessPeer::PRO_ASSIGNMENT, ProcessPeer::PRO_SHOW_MAP, ProcessPeer::PRO_SHOW_MESSAGE, ProcessPeer::PRO_SUBPROCESS, ProcessPeer::PRO_TRI_OPEN, ProcessPeer::PRO_TRI_DELETED, ProcessPeer::PRO_TRI_CANCELED, ProcessPeer::PRO_TRI_PAUSED, ProcessPeer::PRO_TRI_REASSIGNED, ProcessPeer::PRO_TRI_UNPAUSED, ProcessPeer::PRO_TYPE_PROCESS, ProcessPeer::PRO_SHOW_DELEGATE, ProcessPeer::PRO_SHOW_DYNAFORM, ProcessPeer::PRO_CATEGORY, ProcessPeer::PRO_SUB_CATEGORY, ProcessPeer::PRO_INDUSTRY, ProcessPeer::PRO_UPDATE_DATE, ProcessPeer::PRO_CREATE_DATE, ProcessPeer::PRO_CREATE_USER, ProcessPeer::PRO_HEIGHT, ProcessPeer::PRO_WIDTH, ProcessPeer::PRO_TITLE_X, ProcessPeer::PRO_TITLE_Y, ProcessPeer::PRO_DEBUG, ProcessPeer::PRO_DYNAFORMS, ProcessPeer::PRO_DERIVATION_SCREEN_TPL, ProcessPeer::PRO_COST, ProcessPeer::PRO_UNIT_COST, ProcessPeer::PRO_ITEE, ProcessPeer::PRO_ACTION_DONE, ),
BasePeer::TYPE_FIELDNAME => array ('PRO_UID', 'PRO_TITLE', 'PRO_DESCRIPTION', 'PRO_PARENT', 'PRO_TIME', 'PRO_TIMEUNIT', 'PRO_STATUS', 'PRO_TYPE_DAY', 'PRO_TYPE', 'PRO_ASSIGNMENT', 'PRO_SHOW_MAP', 'PRO_SHOW_MESSAGE', 'PRO_SUBPROCESS', 'PRO_TRI_OPEN', 'PRO_TRI_DELETED', 'PRO_TRI_CANCELED', 'PRO_TRI_PAUSED', 'PRO_TRI_REASSIGNED', 'PRO_TRI_UNPAUSED', 'PRO_TYPE_PROCESS', 'PRO_SHOW_DELEGATE', 'PRO_SHOW_DYNAFORM', 'PRO_CATEGORY', 'PRO_SUB_CATEGORY', 'PRO_INDUSTRY', 'PRO_UPDATE_DATE', 'PRO_CREATE_DATE', 'PRO_CREATE_USER', 'PRO_HEIGHT', 'PRO_WIDTH', 'PRO_TITLE_X', 'PRO_TITLE_Y', 'PRO_DEBUG', 'PRO_DYNAFORMS', 'PRO_DERIVATION_SCREEN_TPL', 'PRO_COST', 'PRO_UNIT_COST', 'PRO_ITEE', 'PRO_ACTION_DONE', ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, )
);
/**
@@ -169,10 +172,10 @@ abstract class BaseProcessPeer
* e.g. self::$fieldNames[BasePeer::TYPE_PHPNAME]['Id'] = 0
*/
private static $fieldKeys = array (
BasePeer::TYPE_PHPNAME => array ('ProUid' => 0, 'ProTitle' => 1, 'ProDescription' => 2, 'ProParent' => 3, 'ProTime' => 4, 'ProTimeunit' => 5, 'ProStatus' => 6, 'ProTypeDay' => 7, 'ProType' => 8, 'ProAssignment' => 9, 'ProShowMap' => 10, 'ProShowMessage' => 11, 'ProSubprocess' => 12, 'ProTriOpen' => 13, 'ProTriDeleted' => 14, 'ProTriCanceled' => 15, 'ProTriPaused' => 16, 'ProTriReassigned' => 17, 'ProTriUnpaused' => 18, 'ProTypeProcess' => 19, 'ProShowDelegate' => 20, 'ProShowDynaform' => 21, 'ProCategory' => 22, 'ProSubCategory' => 23, 'ProIndustry' => 24, 'ProUpdateDate' => 25, 'ProCreateDate' => 26, 'ProCreateUser' => 27, 'ProHeight' => 28, 'ProWidth' => 29, 'ProTitleX' => 30, 'ProTitleY' => 31, 'ProDebug' => 32, 'ProDynaforms' => 33, 'ProDerivationScreenTpl' => 34, 'ProCost' => 35, 'ProUnitCost' => 36, 'ProItee' => 37, ),
BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID => 0, ProcessPeer::PRO_TITLE => 1, ProcessPeer::PRO_DESCRIPTION => 2, ProcessPeer::PRO_PARENT => 3, ProcessPeer::PRO_TIME => 4, ProcessPeer::PRO_TIMEUNIT => 5, ProcessPeer::PRO_STATUS => 6, ProcessPeer::PRO_TYPE_DAY => 7, ProcessPeer::PRO_TYPE => 8, ProcessPeer::PRO_ASSIGNMENT => 9, ProcessPeer::PRO_SHOW_MAP => 10, ProcessPeer::PRO_SHOW_MESSAGE => 11, ProcessPeer::PRO_SUBPROCESS => 12, ProcessPeer::PRO_TRI_OPEN => 13, ProcessPeer::PRO_TRI_DELETED => 14, ProcessPeer::PRO_TRI_CANCELED => 15, ProcessPeer::PRO_TRI_PAUSED => 16, ProcessPeer::PRO_TRI_REASSIGNED => 17, ProcessPeer::PRO_TRI_UNPAUSED => 18, ProcessPeer::PRO_TYPE_PROCESS => 19, ProcessPeer::PRO_SHOW_DELEGATE => 20, ProcessPeer::PRO_SHOW_DYNAFORM => 21, ProcessPeer::PRO_CATEGORY => 22, ProcessPeer::PRO_SUB_CATEGORY => 23, ProcessPeer::PRO_INDUSTRY => 24, ProcessPeer::PRO_UPDATE_DATE => 25, ProcessPeer::PRO_CREATE_DATE => 26, ProcessPeer::PRO_CREATE_USER => 27, ProcessPeer::PRO_HEIGHT => 28, ProcessPeer::PRO_WIDTH => 29, ProcessPeer::PRO_TITLE_X => 30, ProcessPeer::PRO_TITLE_Y => 31, ProcessPeer::PRO_DEBUG => 32, ProcessPeer::PRO_DYNAFORMS => 33, ProcessPeer::PRO_DERIVATION_SCREEN_TPL => 34, ProcessPeer::PRO_COST => 35, ProcessPeer::PRO_UNIT_COST => 36, ProcessPeer::PRO_ITEE => 37, ),
BasePeer::TYPE_FIELDNAME => array ('PRO_UID' => 0, 'PRO_TITLE' => 1, 'PRO_DESCRIPTION' => 2, 'PRO_PARENT' => 3, 'PRO_TIME' => 4, 'PRO_TIMEUNIT' => 5, 'PRO_STATUS' => 6, 'PRO_TYPE_DAY' => 7, 'PRO_TYPE' => 8, 'PRO_ASSIGNMENT' => 9, 'PRO_SHOW_MAP' => 10, 'PRO_SHOW_MESSAGE' => 11, 'PRO_SUBPROCESS' => 12, 'PRO_TRI_OPEN' => 13, 'PRO_TRI_DELETED' => 14, 'PRO_TRI_CANCELED' => 15, 'PRO_TRI_PAUSED' => 16, 'PRO_TRI_REASSIGNED' => 17, 'PRO_TRI_UNPAUSED' => 18, 'PRO_TYPE_PROCESS' => 19, 'PRO_SHOW_DELEGATE' => 20, 'PRO_SHOW_DYNAFORM' => 21, 'PRO_CATEGORY' => 22, 'PRO_SUB_CATEGORY' => 23, 'PRO_INDUSTRY' => 24, 'PRO_UPDATE_DATE' => 25, 'PRO_CREATE_DATE' => 26, 'PRO_CREATE_USER' => 27, 'PRO_HEIGHT' => 28, 'PRO_WIDTH' => 29, 'PRO_TITLE_X' => 30, 'PRO_TITLE_Y' => 31, 'PRO_DEBUG' => 32, 'PRO_DYNAFORMS' => 33, 'PRO_DERIVATION_SCREEN_TPL' => 34, 'PRO_COST' => 35, 'PRO_UNIT_COST' => 36, 'PRO_ITEE' => 37, ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, )
BasePeer::TYPE_PHPNAME => array ('ProUid' => 0, 'ProTitle' => 1, 'ProDescription' => 2, 'ProParent' => 3, 'ProTime' => 4, 'ProTimeunit' => 5, 'ProStatus' => 6, 'ProTypeDay' => 7, 'ProType' => 8, 'ProAssignment' => 9, 'ProShowMap' => 10, 'ProShowMessage' => 11, 'ProSubprocess' => 12, 'ProTriOpen' => 13, 'ProTriDeleted' => 14, 'ProTriCanceled' => 15, 'ProTriPaused' => 16, 'ProTriReassigned' => 17, 'ProTriUnpaused' => 18, 'ProTypeProcess' => 19, 'ProShowDelegate' => 20, 'ProShowDynaform' => 21, 'ProCategory' => 22, 'ProSubCategory' => 23, 'ProIndustry' => 24, 'ProUpdateDate' => 25, 'ProCreateDate' => 26, 'ProCreateUser' => 27, 'ProHeight' => 28, 'ProWidth' => 29, 'ProTitleX' => 30, 'ProTitleY' => 31, 'ProDebug' => 32, 'ProDynaforms' => 33, 'ProDerivationScreenTpl' => 34, 'ProCost' => 35, 'ProUnitCost' => 36, 'ProItee' => 37, 'ProActionDone' => 38, ),
BasePeer::TYPE_COLNAME => array (ProcessPeer::PRO_UID => 0, ProcessPeer::PRO_TITLE => 1, ProcessPeer::PRO_DESCRIPTION => 2, ProcessPeer::PRO_PARENT => 3, ProcessPeer::PRO_TIME => 4, ProcessPeer::PRO_TIMEUNIT => 5, ProcessPeer::PRO_STATUS => 6, ProcessPeer::PRO_TYPE_DAY => 7, ProcessPeer::PRO_TYPE => 8, ProcessPeer::PRO_ASSIGNMENT => 9, ProcessPeer::PRO_SHOW_MAP => 10, ProcessPeer::PRO_SHOW_MESSAGE => 11, ProcessPeer::PRO_SUBPROCESS => 12, ProcessPeer::PRO_TRI_OPEN => 13, ProcessPeer::PRO_TRI_DELETED => 14, ProcessPeer::PRO_TRI_CANCELED => 15, ProcessPeer::PRO_TRI_PAUSED => 16, ProcessPeer::PRO_TRI_REASSIGNED => 17, ProcessPeer::PRO_TRI_UNPAUSED => 18, ProcessPeer::PRO_TYPE_PROCESS => 19, ProcessPeer::PRO_SHOW_DELEGATE => 20, ProcessPeer::PRO_SHOW_DYNAFORM => 21, ProcessPeer::PRO_CATEGORY => 22, ProcessPeer::PRO_SUB_CATEGORY => 23, ProcessPeer::PRO_INDUSTRY => 24, ProcessPeer::PRO_UPDATE_DATE => 25, ProcessPeer::PRO_CREATE_DATE => 26, ProcessPeer::PRO_CREATE_USER => 27, ProcessPeer::PRO_HEIGHT => 28, ProcessPeer::PRO_WIDTH => 29, ProcessPeer::PRO_TITLE_X => 30, ProcessPeer::PRO_TITLE_Y => 31, ProcessPeer::PRO_DEBUG => 32, ProcessPeer::PRO_DYNAFORMS => 33, ProcessPeer::PRO_DERIVATION_SCREEN_TPL => 34, ProcessPeer::PRO_COST => 35, ProcessPeer::PRO_UNIT_COST => 36, ProcessPeer::PRO_ITEE => 37, ProcessPeer::PRO_ACTION_DONE => 38, ),
BasePeer::TYPE_FIELDNAME => array ('PRO_UID' => 0, 'PRO_TITLE' => 1, 'PRO_DESCRIPTION' => 2, 'PRO_PARENT' => 3, 'PRO_TIME' => 4, 'PRO_TIMEUNIT' => 5, 'PRO_STATUS' => 6, 'PRO_TYPE_DAY' => 7, 'PRO_TYPE' => 8, 'PRO_ASSIGNMENT' => 9, 'PRO_SHOW_MAP' => 10, 'PRO_SHOW_MESSAGE' => 11, 'PRO_SUBPROCESS' => 12, 'PRO_TRI_OPEN' => 13, 'PRO_TRI_DELETED' => 14, 'PRO_TRI_CANCELED' => 15, 'PRO_TRI_PAUSED' => 16, 'PRO_TRI_REASSIGNED' => 17, 'PRO_TRI_UNPAUSED' => 18, 'PRO_TYPE_PROCESS' => 19, 'PRO_SHOW_DELEGATE' => 20, 'PRO_SHOW_DYNAFORM' => 21, 'PRO_CATEGORY' => 22, 'PRO_SUB_CATEGORY' => 23, 'PRO_INDUSTRY' => 24, 'PRO_UPDATE_DATE' => 25, 'PRO_CREATE_DATE' => 26, 'PRO_CREATE_USER' => 27, 'PRO_HEIGHT' => 28, 'PRO_WIDTH' => 29, 'PRO_TITLE_X' => 30, 'PRO_TITLE_Y' => 31, 'PRO_DEBUG' => 32, 'PRO_DYNAFORMS' => 33, 'PRO_DERIVATION_SCREEN_TPL' => 34, 'PRO_COST' => 35, 'PRO_UNIT_COST' => 36, 'PRO_ITEE' => 37, 'PRO_ACTION_DONE' => 38, ),
BasePeer::TYPE_NUM => array (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, )
);
/**
@@ -349,6 +352,8 @@ abstract class BaseProcessPeer
$criteria->addSelectColumn(ProcessPeer::PRO_ITEE);
$criteria->addSelectColumn(ProcessPeer::PRO_ACTION_DONE);
}
const COUNT = 'COUNT(PROCESS.PRO_UID)';