Hi Juhan,

Thanks for verifying. What could be the problem?

Isaac, do you have more details?

On Fri, May 3, 2019 at 12:01 PM Juhan Aasaru <[email protected]> wrote:

> Hi!
>
> good point, Awasum.
> it seems database "playground" is created but inside it there are no
> tables created.
>
> Juhan
>
> Kontakt Awasum Yannick (<[email protected]>) kirjutas kuupƤeval R, 3. mai
> 2019 kell 12:50:
>
>> Thanks very much Juhan for the thorough QA and Dev work.
>>
>> I learnt alot.
>>
>> Is the playground postgres DB been created and used?
>>
>> On Fri, May 3, 2019 at 9:18 AM Juhan Aasaru <[email protected]> wrote:
>>
>>> Hi Isaac,
>>>
>>> Sorry abou the delay in my response. I did test out your code now and
>>> found some issues.
>>>
>>> Here is what I did:
>>> I pulled the newest code from your forks.
>>> I'm running PostgreSQL and Cassandra inside Docker, so I cleaned the
>>> containers to loose any previous state.
>>>
>>> Then I ran:
>>>
>>> java -Ddemoserver.persistent=true -Ddemoserver.provision=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
>>>
>>> In the logs I see that the migrations to database get applied without
>>> errors and the applications get started.
>>> There was however an error by Provisioner that database "seshat" didn't
>>> exist but it seems that the service
>>> managed to recover fromt his and create the database itself. Or should I
>>> have created database "seshat" myself?
>>>
>>> Then I started fims-web-app and I managed to log in.
>>> What I didn't manage to do was to create an headquarter office
>>>
>>> I filled in the details in fims-web-app and from developer console under
>>> Networking I see
>>> that the request is sent to http://localhost:4200/api/office/v1/offices
>>> and it gets 202 (Accepted) as response:
>>> Payload:
>>> { "identifier": "OF123", "name": "Office name", "description": null,
>>> "address": { "street": "Street", "city": "City", "postalCode": "",
>>> "region": null } }
>>>
>>> But when the app makes a request:
>>>
>>> http://localhost:4200/api/office/v1/offices/OF123
>>> it gets 404 (not found).
>>>
>>> In the logs I see:
>>>
>>> 10:06:11.670 [async-processor-4] WARN  o.h.e.jdbc.spi.SqlExceptionHelper
>>> - SQL Error: 0, SQLState: 23502
>>> 10:06:11.671 [async-processor-4] ERROR o.h.e.jdbc.spi.SqlExceptionHelper
>>> - ERROR: null value in column "id" violates not-null constraint
>>>   Detail: Failing row contains (null, null, OF123, Office name, null,
>>> operator, 2019-05-03 10:06:11.663, null, null).
>>>
>>> If I compare the new Postgre DB scripts with old MariaDB scripts then I
>>> see that in MariaDB/MySQL the ID fields are AUTO_INCREMENT:
>>>
>>>   id               BIGINT        NOT NULL AUTO_INCREMENT,
>>>
>>> but in your postgresql flyway *.sql scripts you don't create any
>>> sequences and you don't use serial type. You have just:
>>>
>>> id BIGINT NOT NULL,
>>>
>>> So there is nothing to create ID-s for new records. So I changed in
>>> fineract-cn-office/*.sql files all "id BIGINT NOT NULL" into:
>>>
>>> id SERIAL,
>>>
>>> this is basically Postgres version of AUTO_INCREMENT (and you don't have
>>> to specify data type), you can read more abut it here:
>>> http://www.postgresqltutorial.com/postgresql-serial/
>>> Now I cleaned Posgre database, rebuilt fineract-cn-office and restarted
>>> the server and then I managed to create offices
>>> in fims-web-app.
>>>
>>> So what you need to do is everywhere where there was AUTO_INCREMENT in
>>> *.sql files you need to use SERIAL.
>>>
>>> So almost there! Please let me know if you have gone over all the *sql
>>> files and I will test again.
>>>
>>> Kind regards
>>> Juhan
>>>
>>> Kontakt Isaac Kamga (<[email protected]>) kirjutas kuupƤeval N, 27.
>>> detsember 2018 kell 03:26:
>>>
>>>> Hey Juhan,
>>>>
>>>> Yes, I've been following the updates to the How-To-Build page.
>>>>
>>>> I'm happy the clarification was helpful and you've improved Step 3. I
>>>> also
>>>> updated the demo-server and service-starter repositories to enable the
>>>> Fineract CN build happen in less time. Kindly update your respective
>>>> repositories and build once more to provide more feedback.
>>>>
>>>> Keep up the good work.
>>>>
>>>> Cheers,
>>>> Isaac Kamga.
>>>>
>>>> On Wed, Dec 26, 2018 at 11:14 PM Juhan Aasaru <[email protected]> wrote:
>>>>
>>>> > Thanks, Isaac for clearing up the confusion.
>>>> > Based on your explanations I also restructured Step 3 to make it
>>>> easier to
>>>> > follow.
>>>> > Please review if you have a moment.
>>>> >
>>>> > Kind regards
>>>> > Juhan Aasaru
>>>> >
>>>>
>>>

Reply via email to