Migrating from 6.2.6 to 6.3.0
Preliminars
- Make a backup!!!
Migration
- Stop Tomcat.
- Edit OpenKM.cfg file and set hibernate.hbm2ddl to update.
- Replace the OpenKM.war.
- Go to Administration > Crontab and delete "User Items Serialize" and "Refresh User Items" tasks.
- Run from your preferred SQL client these queries:
MySQL
ALTER TABLE OKM_MIME_TYPE ADD COLUMN MT_SEARCH CHAR(1);
UPDATE OKM_MIME_TYPE SET MT_SEARCH='T';
ALTER TABLE OKM_MIME_TYPE MODIFY COLUMN MT_SEARCH CHAR(1) NOT NULL;
PostgreSQL
ALTER TABLE OKM_MIME_TYPE ADD COLUMN MT_SEARCH CHAR(1);
UPDATE OKM_MIME_TYPE SET MT_SEARCH='T';
ALTER TABLE OKM_MIME_TYPE ALTER COLUMN MT_SEARCH SET NOT NULL;
- Start Tomcat again.
- Go to Administration > Database Query, and execute:
HSQL
ALTER TABLE OKM_MIME_TYPE ADD COLUMN MT_SEARCH CHAR(1);
UPDATE OKM_MIME_TYPE SET MT_SEARCH='T';
ALTER TABLE OKM_MIME_TYPE ALTER COLUMN MT_SEARCH SET NOT NULL;
- The ExecuteScription action SQL insert has changed between version 6.2.x to 6.3.x please take a look at Enable Automation actions and Enable Automation validations see how column with older value textarea now must have value code.
- Due change in way how some special characters like '&' are stored now in repository is necessary execute this script. Go to Administration, Scripting and execute it.
import com.openkm.dao.bean.*;
import com.openkm.dao.*;
import com.openkm.util.*;
import org.hibernate.*;
String qs = "from NodeBase nb where nb.name like '%&%' and nb.uuid NOT IN (select nb.uuid from NodeBase nb where nb.name like '%&%')";
Session session = null;
Transaction tx = null;
try {
session = HibernateUtil.getSessionFactory().openSession();
tx = session.beginTransaction();
Query q = session.createQuery(qs);
for (NodeBase nBase : q.list()) {
print(nBase.getUuid() + " -> " + nBase.getName() + "<br>");
nBase.setName(PathUtils.encodeEntities(nBase.getName()));
session.update(nBase);
}
HibernateUtil.commit(tx);
} catch (Exception e) {
HibernateUtil.rollback(tx);
e.printStackTrace();
} finally {
HibernateUtil.close(session);
}
- Enjoy OpenKM 6.3.0!
- And start Tomcat again.
If you have any weird problem try to stop Tomcat, delete these folders:
- $TOMCAT_HOME/webapps/OpenKM
- $TOMCAT_HOME/work/Catalina/localhost
Recommended to clear browser cache and Java Plugin cache.