After several experiments with business processes, I noticed that the old definitions of business processes somewhere is cached.
For example, I developed some business process, then installed the AMP file with it. I worked with it, and then decided to make some changes.
For this, I again assembled the AMP file and installed it:
[bykovan@docflow alfresco-community]$ sudo java -jar bin/alfresco-mmt.jar uninstall some-module-repo tomcat/webapps/alfresco.war
...
[bykovan@docflow alfresco-community]$ sudo java -jar bin/alfresco-mmt.jar install amps/some-module-repo-1.0-SNAPSHOT.amp tomcat/webapps/alfresco.war
...
But I don't see my changes after deploy! To make the change take effect I have to make quite a lot of extra work.
1 Shutdown Tomcat
[bykovan@docflow alfresco-community]$ sudo ./alfresco.sh stop
2 Re-create the alfresco database
[bykovan@docflow alfresco-community]$ sudo -i -u postgres
[postgres@docflow ~]$ psql
psql (9.5.5)
postgres=#
postgres=# drop database alfresco;
...
postgres=# create database alfresco;
...
postgres=# alter database alfresco owner to alfresco;
...
postgres=# \q
[postgres@docflow ~]$ exit
3 Remove everything from alf_data
[bykovan@docflow alf_data]$ sudo rm -r *
4 Remove alfresco and share folders
[bykovan@docflow alfresco-community]$ sudo rm -r alfresco
[bykovan@docflow alfresco-community]$ sudo rm -r share
5 Start Tomcat
[bykovan@docflow alfresco-community]$ sudo ./alfresco.sh start
6 Wait until the database is initialized...
7 Set the administrator's password
SELECT
anp1.node_id, // paste to the update statement
anp1.qname_id, // paste to the update statement
anp1.string_value
FROM alf_node_properties anp1
INNER JOIN alf_qname aq1 ON aq1.id = anp1.qname_id
INNER JOIN alf_node_properties anp2 ON anp2.node_id = anp1.node_id
INNER JOIN alf_qname aq2 ON aq2.id = anp2.qname_id
WHERE aq1.local_name = 'password'
AND aq2.local_name = 'username'
AND anp2.string_value = 'admin';
UPDATE
alf_node_properties
SET
string_value='209c6174da490caeb422f3fa5a7ae634'
WHERE node_id=... and qname_id=...;
(where '209c6174da490caeb422f3fa5a7ae634' is NTLM-encoded string 'admin')
8 Restart Tomcat
9 Log-in as Admin with password admin, add users etc...
What caches uses Alfresco and how to properly clean them?
I use the following configuration:
Alfresco Share v5.2.d (r134641-b15, Aikau 1.0.101.3, Spring Surf 5.2.d, Spring WebScripts 6.13, Freemarker 2.3.20-alfresco-patched, Rhino 1.7R4-alfresco-patched, Yui 2.9.0-alfresco-20141223)
Alfresco Community v5.2.0 (r134428-b13) schema 10005