[
https://issues.apache.org/jira/browse/FINERACT-1379?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Victor Jo updated FINERACT-1379:
--------------------------------
Description:
I'm currently running Fineract on AWS ECS Fargate. Whenever a resource is
created on the system (client, savings account etc.), the dates are moved back
by one before eventually persisted. Note, when running locally, the dates are
persisted correctly just as it should be.
I put some logs and inspected them on aws cloudwatch to really track the
process.
>From the attached image. The *{color:#172b4d}JsonParserHelper{color}*
>correctly extracts the dates from the request body.
Then the logs from the *Client* class shows the final date after
{code:java}
Date.from(activationDate.atStartOfDay(DateUtils.getDateTimeZoneOfTenant()).toInstant());{code}
{color:#172b4d}is executed for the respective parameters (in this case:
submittedOnDate, activationDate and officeJoiningDate). The tenants on the
system all have timezones on the *_fineract_tenants.tenants_* table
This same thing happens on other parts of the project where a date is being
used.
{color}
{color:#172b4d}Does any one have any suggestions [~vorburger] ? Thanks.{color}
*{color:#172b4d}UPDATE:{color}*
{color:#172b4d}I was able to manually set the timezone on the docker container.
Unfortunately for a different tenant with a different time zone the dates will
be interpreted wrongly. The snippet added to my docker file.
{color}
{code:java}
...
RUN apt-get install -y tzdata
RUN ls /usr/share/zoneinfo && rm -rf /etc/localtime && ln -s
/usr/share/zoneinfo/Africa/Cairo /etc/localtime && echo "Africa/Cairo" >
/etc/timezone
...{code}
was:
I'm currently running Fineract on AWS ECS Fargate. Whenever a resource is
created on the system (client, savings account etc.), the dates are moved back
by one before eventually persisted. Note, when running locally, the dates are
persisted correctly just as it should be.
I put some logs and inspected them on aws cloudwatch to really track the
process.
>From the attached image. The *{color:#172b4d}JsonParserHelper{color}*
>correctly extracts the dates from the request body.
Then the logs from the *Client* class shows the final date after
{code:java}
Date.from(activationDate.atStartOfDay(DateUtils.getDateTimeZoneOfTenant()).toInstant());{code}
{color:#172b4d}is executed for the respective parameters (in this case:
submittedOnDate, activationDate and officeJoiningDate). The tenants on the
system all have timezones on the *_fineract_tenants.tenants_* table
This same thing happens on other parts of the project where a date is being
used.
{color}
{color:#172b4d}Does any one have any suggestions [~vorburger] ? Thanks.{color}
> Dates are one day off before saved
> ----------------------------------
>
> Key: FINERACT-1379
> URL: https://issues.apache.org/jira/browse/FINERACT-1379
> Project: Apache Fineract
> Issue Type: Task
> Affects Versions: 1.5.0
> Reporter: Victor Jo
> Priority: Major
> Attachments: cloud_watch_logs_ecs.png
>
>
> I'm currently running Fineract on AWS ECS Fargate. Whenever a resource is
> created on the system (client, savings account etc.), the dates are moved
> back by one before eventually persisted. Note, when running locally, the
> dates are persisted correctly just as it should be.
> I put some logs and inspected them on aws cloudwatch to really track the
> process.
>
> From the attached image. The *{color:#172b4d}JsonParserHelper{color}*
> correctly extracts the dates from the request body.
> Then the logs from the *Client* class shows the final date after
> {code:java}
> Date.from(activationDate.atStartOfDay(DateUtils.getDateTimeZoneOfTenant()).toInstant());{code}
> {color:#172b4d}is executed for the respective parameters (in this case:
> submittedOnDate, activationDate and officeJoiningDate). The tenants on the
> system all have timezones on the *_fineract_tenants.tenants_* table
>
> This same thing happens on other parts of the project where a date is being
> used.
> {color}
> {color:#172b4d}Does any one have any suggestions [~vorburger] ?
> Thanks.{color}
>
> *{color:#172b4d}UPDATE:{color}*
> {color:#172b4d}I was able to manually set the timezone on the docker
> container. Unfortunately for a different tenant with a different time zone
> the dates will be interpreted wrongly. The snippet added to my docker file.
> {color}
>
> {code:java}
> ...
> RUN apt-get install -y tzdata
> RUN ls /usr/share/zoneinfo && rm -rf /etc/localtime && ln -s
> /usr/share/zoneinfo/Africa/Cairo /etc/localtime && echo "Africa/Cairo" >
> /etc/timezone
> ...{code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)