Hi Isaac, great initiative towards pushing to PostgreSQL.
I looked at your instructions and tried to run your changes locally. The sh script came in handy to quickly clone and build everything that was needed. But then I got confused about provisioning. Question #1: How exactly I should run demo-server? I tried the following options: 1. I didn't have postgre and cassandra running locally. java -jar -Ddemoserver.lite=true demo-server-0.1.0-BUILD-SNAPSHOT.jar resulted org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'provisionerInitializer': Invocation of init method failed; nested exception is java.lang.IllegalStateException: Could not initialize service! Caused by: org.postgresql.util.PSQLException: FATAL: database "seshat" does not exist 2. I started posgresql (and created a database seshat) and cassandra and ran: java -Ddemoserver.provision=true -Ddemoserver.persistent=true -Dcustom.cassandra.contactPoints=127.0.0.1:9042 \ -Dcassandra.cluster.user=cassandra -Dcassandra.cluster.pwd=password -Ddemoserver.lite=true -jar demo-server-0.1.0-BUILD-SNAPSHOT.jar Initially applications started up one after anther (ProvisionerApplication, RhythmApplication, OfficeApplication) but CustomerApplication threw an exception: 11:50:39.377 [qtp1424482154-21] WARN o.e.jetty.servlet.ServletHandler - org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: Could not insert org.apache.fineract.cn.provisioner.tenant info! Caused by: org.postgresql.util.PSQLException: ERROR: relation "seshat.tenants" does not exist Question #2 - do I still need to have Mysql running? I see that you haven't made code changes to identity which as I understand still uses Mysql. Kind regards Juhan Kontakt Isaac Kamga (<isaac.ka...@mifos.org>) kirjutas kuupäeval L, 23. märts 2019 kell 04:31: > Hello fineracters, > > Trust that you had a great week. > > I just finished migrating libraries PostgreSQL[1] and Test[2] from MariaDB > to PostgreSQL, mostly adapting SQL statements & database connections to > work with PostgreSQL and reverting back to Hibernate ORM until database > migrations are completed. > > I have also migrated the "minimal" services viz provisioner[3], rhythm[4], > office[5], template[6] and customer[7] from MariaDB to PostgreSQL. The > Spring datasource credentials had to be incorporated into application.yaml > files to make things work too. > > Given I updated service-starter [8] and demo-server [9], developers can > test the migrated services when running the *-Ddemoserver.lite=true* option > which builds the minimal set of services. > > You'll observe that some of the pull requests are heading to develop > branches ( It appears comparing changes and creating PRs towards the same > branch name from origin to upstream expires after a few minutes on > Github... weird ) > > Here is a script [10] to enable anyone clone and do an integration-test of > the new changes using demo-server. > > Kindly test these changes and provide feedback. > > At Your Service, > Isaac Kamga. > > [1] https://github.com/apache/fineract-cn-postgresql/pull/1 > [2] https://github.com/apache/fineract-cn-test/pull/7 > [3] https://github.com/apache/fineract-cn-provisioner/pull/6 > [4] https://github.com/apache/fineract-cn-rhythm/pull/8 > [5] https://github.com/apache/fineract-cn-office/pull/9 > [6] https://github.com/apache/fineract-cn-template/pull/6 > [7] https://github.com/apache/fineract-cn-customer/pull/10 > [8] https://github.com/apache/fineract-cn-service-starter/pull/8 > [9] https://github.com/apache/fineract-cn-demo-server/pull/27 > [10] > > https://github.com/Izakey/fineract-cn-demo-server/blob/FINCN-141/scripts/Unix/postgres-setup-lite.sh >