Questions and discussion about developing processes and programming in PHP, JavaScript, web services & REST API.
Forum rules: Please search to see if a question has already asked before creating a new topic. Please don't post the same question in multiple forums.
By stevensi1018
#812590
I had an error last friday while rebuilding cache (see attachment) and we had to use an old backup since all our cases just disappeared of the processmaker interface (since there is no cache, there is nothing to show).

All works except one thing: the table APP_CACHE_VIEW doesn't work anymore since all new derivations/cases aren't in there. What could cause this problem ?

Also, it would be great to have a reason why the cache failed (and how to fix that)
Attachments
cache.PNG
cache.PNG (32.58 KiB) Viewed 4744 times
By stevensi1018
#812594
stevensi1018 wrote:I had an error last friday while rebuilding cache (see attachment) and we had to use an old backup since all our cases just disappeared of the processmaker interface (since there is no cache, there is nothing to show).

All works except one thing: the table APP_CACHE_VIEW doesn't work anymore since all new derivations/cases aren't in there. What could cause this problem ?

Also, it would be great to have a reason why the cache failed (and how to fix that)

So, we restarted the server and it's working for the new delegations created BUT, between december 15th and december 18th, all cases that were derivated were derivated in app_delegation but not in app_cache_view so it's still the last person that had it that see it in his inbox (he can't open it since it was derivated). Any tip on how to fix that ??
User avatar
By amosbatto
#812595
Your internal error #1513369746 is not from PM. I assume that it is generated by MySQL or the operating system of your server, but I can't find any information about that error number it when I googled it, so it isn't very common.

Go to the command line of you server and issue the processmaker cacheview-repair command.
For example, in Linux:
Code: Select all
cd /opt/processmaker  
php processmaker cacheview-repair
If you see errors, then use the processmaker database-verify-consistency command.
#828522
Nosotros ejecutamos lo siguiente para el mismo error de ProcessMaker versión 3.2.1 community:
Code: Select all
delete from app_cache_view  //Para eliminar los nuevos registros de la tabla

INSERT INTO APP_CACHE_VIEW (
    APP_UID,
    DEL_INDEX,
    APP_NUMBER,
    APP_STATUS,
    USR_UID,
    PREVIOUS_USR_UID,
    TAS_UID,
    PRO_UID,
    DEL_DELEGATE_DATE,
    DEL_INIT_DATE,
    DEL_FINISH_DATE,
    DEL_TASK_DUE_DATE,
    DEL_RISK_DATE,
    DEL_THREAD_STATUS,
    APP_THREAD_STATUS,
    APP_TITLE,
    APP_PRO_TITLE,
    APP_TAS_TITLE,
    APP_CURRENT_USER,
    APP_DEL_PREVIOUS_USER,
    DEL_PRIORITY,
    DEL_DURATION,
    DEL_QUEUE_DURATION,
    DEL_DELAY_DURATION,
    DEL_STARTED,
    DEL_FINISHED,
    DEL_DELAYED,
    APP_CREATE_DATE,
    APP_FINISH_DATE,
    APP_UPDATE_DATE,
    APP_OVERDUE_PERCENTAGE,
    DEL_LAST_INDEX
)

SELECT
  APPLICATION.APP_UID,
  APP_DELEGATION.DEL_INDEX,
  APPLICATION.APP_NUMBER,
  APPLICATION.APP_STATUS,
  APP_DELEGATION.USR_UID,
  IF (
      APP_DELEGATION.DEL_PREVIOUS = 0 AND (SELECT SUBAPP.APP_UID FROM SUB_APPLICATION AS SUBAPP WHERE SUBAPP.APP_UID = APP_DELEGATION.APP_UID LIMIT 1) IS NOT NULL,
      (SELECT APPDEL2.USR_UID
       FROM   SUB_APPLICATION AS SUBAPP, APP_DELEGATION AS APPDEL1, APP_DELEGATION AS APPDEL2
       WHERE  SUBAPP.APP_UID = APP_DELEGATION.APP_UID AND
              SUBAPP.APP_PARENT = APPDEL1.APP_UID AND SUBAPP.DEL_INDEX_PARENT = APPDEL1.DEL_INDEX AND
              APPDEL1.APP_UID = APPDEL2.APP_UID AND APPDEL1.DEL_PREVIOUS = APPDEL2.DEL_INDEX
       LIMIT 1
      ),
      APP_LAST_USER.USR_UID
  ) AS PREVIOUS_USR_UID,
  APP_DELEGATION.TAS_UID,
  APP_DELEGATION.PRO_UID,
  substring(APP_DELEGATION.DEL_DELEGATE_DATE,1,19),
  substring(APP_DELEGATION.DEL_INIT_DATE,1,19),
  substring(APP_DELEGATION.DEL_FINISH_DATE,1,19),
  substring(APP_DELEGATION.DEL_TASK_DUE_DATE,1,19),
  substring(APP_DELEGATION.DEL_RISK_DATE,1,19),
  APP_DELEGATION.DEL_THREAD_STATUS,
  APP_THREAD.APP_THREAD_STATUS,
  substring(APP_TITLE.CON_VALUE,1,255) AS APP_TITLE,  //Lo obliga a que el titulo no sea mayor a 255
  substring(PRO_TITLE.CON_VALUE,1,255) AS APP_PRO_TITLE,  //Lo obliga a que el nombre del proceso no sea mayor a 255
  substring(TAS_TITLE.CON_VALUE,1,255) AS APP_TAS_TITLE, //Lo obliga a que el el nombre de la tarea no sea mayor a 255
  CONCAT(USERS.USR_LASTNAME,  ' ',  USERS.USR_FIRSTNAME) AS APP_CURRENT_USER,
  CONCAT(APP_LAST_USER.USR_LASTNAME,  ' ',  APP_LAST_USER.USR_FIRSTNAME) AS APP_DEL_PREVIOUS_USER,
  APP_DELEGATION.DEL_PRIORITY,
  APP_DELEGATION.DEL_DURATION,
  APP_DELEGATION.DEL_QUEUE_DURATION,
  APP_DELEGATION.DEL_DELAY_DURATION,
  if( APP_DELEGATION.DEL_INIT_DATE IS NULL   , 0 , 1 ),
  if( APP_DELEGATION.DEL_FINISH_DATE IS NULL , 0 , 1 ),
  APP_DELEGATION.DEL_DELAYED,
  APPLICATION.APP_CREATE_DATE,
  IF (APPLICATION.APP_STATUS = 'COMPLETED', APPLICATION.APP_FINISH_DATE, NULL),
  APPLICATION.APP_UPDATE_DATE,
  APP_DELEGATION.APP_OVERDUE_PERCENTAGE,
  APP_DELEGATION.DEL_LAST_INDEX
FROM
  APPLICATION FORCE INDEX (PRIMARY)
  LEFT JOIN APP_DELEGATION ON (APPLICATION.APP_UID=APP_DELEGATION.APP_UID)
  LEFT JOIN TASK ON (APP_DELEGATION.TAS_UID=TASK.TAS_UID)
  LEFT JOIN USERS ON (APP_DELEGATION.USR_UID=USERS.USR_UID)
  LEFT JOIN APP_THREAD ON (APPLICATION.APP_UID=APP_THREAD.APP_UID AND APP_DELEGATION.DEL_THREAD=APP_THREAD.APP_THREAD_INDEX)
  LEFT JOIN CONTENT APP_TITLE FORCE INDEX (indexUid) ON (APPLICATION.APP_UID=APP_TITLE.CON_ID AND APP_TITLE.CON_CATEGORY='APP_TITLE' AND APP_TITLE.CON_LANG = 'EN') //se coloca el idioma del ProcessMaker 'EN' para nuestro caso
  LEFT JOIN CONTENT PRO_TITLE FORCE INDEX (indexUid) ON (APPLICATION.PRO_UID=PRO_TITLE.CON_ID AND PRO_TITLE.CON_CATEGORY='PRO_TITLE' AND PRO_TITLE.CON_LANG = 'EN') //se coloca el idioma del ProcessMaker 'EN' para nuestro caso
  LEFT JOIN CONTENT TAS_TITLE FORCE INDEX (indexUid) ON (APP_DELEGATION.TAS_UID=TAS_TITLE.CON_ID AND TAS_TITLE.CON_CATEGORY='TAS_TITLE' AND TAS_TITLE.CON_LANG = 'EN') //se coloca el idioma del ProcessMaker 'EN' para nuestro caso
  LEFT JOIN APP_DELEGATION APP_PREV_DEL ON (APPLICATION.APP_UID=APP_PREV_DEL.APP_UID AND APP_PREV_DEL.DEL_INDEX=APP_DELEGATION.DEL_PREVIOUS)
  LEFT JOIN USERS APP_LAST_USER ON (APP_PREV_DEL.USR_UID=APP_LAST_USER.USR_UID)
WHERE
  TASK.TAS_TYPE<>'SUBPROCESS'
Espero les sirva mucho!!! A nosotros nos funcionó.

<a herf="https://www.cloudemailmigration.c[…]

Try the CloudMigration PST Converter to convert […]

STEPN integrates social networking and games that […]

Cenforce 150 is a medication used to cope with a c[…]