mysqlpostgresqlprocessmaker

How to configure processmaker(3.0.7) to use postgresql (9.3)?


Processmaker by default works with mysql but i do not want to use mysql as my team is on postgresql . I have changes the db.php file it is accepting the postgres connection but then it does not populate the database. in my sql it has 138 tables. I eas expecting it would detect the new database and add the necessary table. but it is not happening so far.

If i copy all the tables from the mysql to pgsql then will it work ?

Here is the error that i got

RuntimeException:
 [wrapped: Could not execute query [Native Error: ERROR:  relation "configuration" does not exist
LINE 1: SELECT COUNT(CONFIGURATION.CFG_UID) FROM CONFIGURATION WHERE...
                                                 ^] [User Info: SELECT COUNT(CONFIGURATION.CFG_UID) FROM CONFIGURATION WHERE CONFIGURATION.CFG_UID='getStarted' AND CONFIGURATION.OBJ_UID='' AND CONFIGURATION.CFG_VALUE='1' AND CONFIGURATION.PRO_UID='' AND CONFIGURATION.USR_UID='' AND CONFIGURATION.APP_UID='']]
At BasePeer::doSelect() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\classes\model\om\BaseConfigurationPeer.php line 293
At BaseConfigurationPeer::doSelectRS() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\classes\model\om\BaseConfigurationPeer.php line 223
At BaseConfigurationPeer::doCount() 
in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\engine\methods\login\login.php line 455
At require_once() in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\public_html\sysGeneric.php line 2027
At include() in C:\Users\admin\AppData\Roaming\ProcessMaker-3_0_1_7_community-1\processmaker\workflow\public_html\app.php line 61

Solution

  • Unfortunately, ProcessMaker can only run under the MySQL database engine for the core, primary database. It is possible to setup ProcessMaker to connect to an external database source of other engine types, such as Postgres, however, this is only for retrieving and pushing data to and from the external database connection.

    The reason for this is that there has been a significant amount of custom SQL written into the source code that is specific to MySQL.

    We have tried to get it to work on MSSQL, however, we ultimately concluded that it would require too much effort to allow for ProcessMaker to run on MSSQL and so we have decided to stick with only MySQL.