Devs

@Vishwas Babu <[email protected]>

I'm going through the instructions for building the fineract-CN project
locally.
https://cwiki.apache.org/confluence/display/FINERACT/How+To+Build+Apache+Fineract+CN

I'd like to get your feedback and then I'll make some changes.

I think first thing I note is that the versions of pre-requisite software
are not specified, and given that I'm starting with a clean install I'm
using only the latest.  I did remember to use java1.8.  In fact I came
across a cool tool called 'jenv' for installing and using different
versions of java locally or globally (hides the complexity a bit).

Anyway, I have installed:

postgres (PostgreSQL) 11.5


java version "1.8.0_231"

Java(TM) SE Runtime Environment (build 1.8.0_231-b11)

Java HotSpot(TM) 64-Bit Server VM (build 25.231-b11, mixed mode)


Gradle 5.6.4


on Mac OS Catalina 10.15.1


npm-6.11.3

node-v12.12.0


--

Regarding instructions:

When I get to step 3, and choice of persistence  Option A or Option B, I
think that these two paths should be more sequenced or more clearly
separated.


In particular, it might be good to highlight the lightweight and
non-persistence path as a first step, so that people coming to the project
for the first time can get to something rapidly and then move onto the more
involved setup.   i.e. to get to this command:


java -jar -Ddemoserver.provision=true -Ddemoserver.lite=true
demo-server-0.1.0-BUILD-SNAPSHOT.jar


So, first time through A to validate (skip if you've already done it or
have an understanding), and that way we can move the Postgres requirement
to that section.


Also, to define what .lite actually means, I think it merely loads the
customer micro service on top of the basic microservices.

Confirm?


Regarding angular dependencies. There is a note that when launching 'NPM
run dev' that there might be missing dependencies.  I think that should be
made more clear, as in under what circumstances... its a vague comment.


--

I am uncertain, given the above where or why my build is failing.


I detect this error in Option B after creation of the last microservice.

*tenant_identifier FROM khepri_beats WHERE (next_beat < ?) FOR UPDATE*

* bind => [2019-11-19 02:44:33.606]*

*ERROR:  relation "khepri_beats" does not exist at character 103*

*STATEMENT:  SELECT id, alignment_hour, application_identifier,
beat_identifier, next_beat, tenant_identifier FROM khepri_beats WHERE
(next_beat < $1) FOR UPDATE*

*[EL Fine]: sql: 2019-11-19
02:44:33.838--ClientSession(1246845483)--Thread(Thread[pool-8-thread-1,5,main])--SELECT
1*

*ERROR:  current transaction is aborted, commands ignored until end of
transaction block*

*STATEMENT:  SELECT 1*

*[EL Warning]: 2019-11-19
02:44:33.839--UnitOfWork(1315887033)--Thread(Thread[pool-8-thread-1,5,main])--Local
Exception Stack: *

*Exception [EclipseLink-4002] (Eclipse Persistence Services -
2.6.4.v20160829-44060b6):
org.eclipse.persistence.exceptions.DatabaseException*

*Internal Exception: org.postgresql.util.PSQLException: ERROR: relation
"khepri_beats" does not exist*

*  Position: 103*

*Error Code: 0*



and practically the same error on Option A. This makes me suspect that I've
got a PostgreSQL issue.


Also, I think these instructions should be related to the dockerized
version to explain when one would want to use one or the other.


Thoughts?



@jdailey <[email protected]>

Reply via email to