HTTP status 404 - Apache flagging JDBC MySQL expired password

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request resource is not
available'. I looked through the Apache Tomcat logs and found the following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get
JDBC Connection; nested exception is java.sql.SQLException: Your password
has expired. To log in you must change it using a client that supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an automatic
one year expiry on their passwords. As such, I changed the root MySQL
password and restarted everything. No luck. I then reinstalled ODK
Aggregate using the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after the one
under discussion last year. Thinking it was the MySQL password expiry
issue, I quickly changed the password expiring on those servers so they
didn't expire. Both servers are up and running as per normal. Which
suggests to me the MySQL password expiry is key but simply updating it is
somehow insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

Oracle bought MySQL a few years ago. In their dubious wisdom, they changed
the behavior of the latest MySQL software so that your database passwords
are invalid after 360 days of use.
http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html

I suspect Oracle didn't like the reliability and low outage / failure rate
of MySQL. By making this change, they will cause a large number of sites to
go down annually (because we are all not used to this new password policy
and don't set reminders to change our passwords and re-run our installer
scripts to update them).

And, as a result, Gartner Group or some other survey organization will be
able to demonstrably prove that websites powered by Oracle databases have
higher availability and reliability than those powered by MySQL. Look for
the white paper on that sometime next year.

··· On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone wrote:

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request resource is
not available'. I looked through the Apache Tomcat logs and found the
following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get
JDBC Connection; nested exception is java.sql.SQLException: Your password
has expired. To log in you must change it using a client that supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an automatic
one year expiry on their passwords. As such, I changed the root MySQL
password and restarted everything. No luck. I then reinstalled ODK
Aggregate using the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after the one
under discussion last year. Thinking it was the MySQL password expiry
issue, I quickly changed the password expiring on those servers so they
didn't expire. Both servers are up and running as per normal. Which
suggests to me the MySQL password expiry is key but simply updating it is
somehow insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

Hi Sachin,

Mitch is right (both about the expiration and about Oracle's long
history of being not so nice).

My guess is that your post-expiry credentials are somehow still tied
to the expiration. Or Tomcat is still using the expanded copy of
Aggregate you have in your Tomcat webapps folder.

From the MySQL side, you can check expiration status with "SELECT *
FROM mysql.user;". And I think you can fix expirations with "ALTER
USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;"

From the Tomcat side, shut down Tomcat, remove both the WAR and the
expanded WAR and install the new WAR with the new credentials.

Restart MySQL and Tomcat and check your logs for any errors.

Yaw

··· -- Need ODK consultants? Nafundi provides form design, server setup, in-field training, and software development for ODK. Go to https://nafundi.com to get started.

On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt mitchellsundt@gmail.com wrote:

Oracle bought MySQL a few years ago. In their dubious wisdom, they changed
the behavior of the latest MySQL software so that your database passwords
are invalid after 360 days of use.
http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html

I suspect Oracle didn't like the reliability and low outage / failure rate
of MySQL. By making this change, they will cause a large number of sites to
go down annually (because we are all not used to this new password policy
and don't set reminders to change our passwords and re-run our installer
scripts to update them).

And, as a result, Gartner Group or some other survey organization will be
able to demonstrably prove that websites powered by Oracle databases have
higher availability and reliability than those powered by MySQL. Look for
the white paper on that sometime next year.

On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone sachin.destone@gmail.com wrote:

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request resource is
not available'. I looked through the Apache Tomcat logs and found the
following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get
JDBC Connection; nested exception is java.sql.SQLException: Your password
has expired. To log in you must change it using a client that supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an automatic one
year expiry on their passwords. As such, I changed the root MySQL password
and restarted everything. No luck. I then reinstalled ODK Aggregate using
the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after the one
under discussion last year. Thinking it was the MySQL password expiry issue,
I quickly changed the password expiring on those servers so they didn't
expire. Both servers are up and running as per normal. Which suggests to me
the MySQL password expiry is key but simply updating it is somehow
insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitchellsundt@gmail.com

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Yaw and Mitch,

First thank you so much for taking the time to help me out.

I share your frustration with Oracle as this is causing a not insignificant
problem.

I updated the MySQL password and set it to never expire. I also reinstalled
ODK Aggregate with the new user credentials and in that process inserted
the WAR file and the expanded WAR file (am I correct in thinking that is
the folder labelled ODKAggregate in the tomcat webapps folder?). It gives
me exactly the same problem.

The password has definitely updated since MySQL requires it to login and
the table says that the password is set to never expire.

Do you have any suggestions for how to proceed?

Thanks again for all your time

Best wishes,

Sachin

··· On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote: > > Hi Sachin, > > Mitch is right (both about the expiration and about Oracle's long > history of being not so nice). > > My guess is that your post-expiry credentials are somehow still tied > to the expiration. Or Tomcat is still using the expanded copy of > Aggregate you have in your Tomcat webapps folder. > > From the MySQL side, you can check expiration status with "SELECT * > FROM mysql.user;". And I think you can fix expirations with "ALTER > USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;" > > From the Tomcat side, shut down Tomcat, remove both the WAR and the > expanded WAR and install the new WAR with the new credentials. > > Restart MySQL and Tomcat and check your logs for any errors. > > Yaw > -- > Need ODK consultants? Nafundi provides form design, server setup, > in-field training, and software development for ODK. Go to > https://nafundi.com to get started. > > On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt <mitche...@gmail.com > wrote: > > Oracle bought MySQL a few years ago. In their dubious wisdom, they > changed > > the behavior of the latest MySQL software so that your database > passwords > > are invalid after 360 days of use. > > http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html > > > > I suspect Oracle didn't like the reliability and low outage / failure > rate > > of MySQL. By making this change, they will cause a large number of sites > to > > go down annually (because we are all not used to this new password > policy > > and don't set reminders to change our passwords and re-run our installer > > scripts to update them). > > > > And, as a result, Gartner Group or some other survey organization will > be > > able to demonstrably prove that websites powered by Oracle databases > have > > higher availability and reliability than those powered by MySQL. Look > for > > the white paper on that sometime next year. > > > > > > > > On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone <sachin....@gmail.com > wrote: > >> > >> Dear Community, > >> > >> ODK Aggregate flags up error, 'HTTP status 404, the request resource is > >> not available'. I looked through the Apache Tomcat logs and found the > >> following: > >> > >> WARNING: Failure: _granted_authority_hierarchy exception: > >> org.springframework.jdbc.CannotGetJdbcConnectionException: Could not > get > >> JDBC Connection; nested exception is java.sql.SQLException: Your > password > >> has expired. To log in you must change it using a client that supports > >> expired passwords. > >> > >> The server went down, I think, on the first use after the annual > >> anniversary and a bit of googling showed me that MySQL have an > automatic one > >> year expiry on their passwords. As such, I changed the root MySQL > password > >> and restarted everything. No luck. I then reinstalled ODK Aggregate > using > >> the new, post-expiry credentials. Still no luck > >> > >> Possibly useful info: > >> I set up two other servers in the same manner a few days after the one > >> under discussion last year. Thinking it was the MySQL password expiry > issue, > >> I quickly changed the password expiring on those servers so they didn't > >> expire. Both servers are up and running as per normal. Which suggests > to me > >> the MySQL password expiry is key but simply updating it is somehow > >> insufficient. > >> > >> ANY HELP would be MASSIVELY APPRECIATED!!! > >> > >> Thanks x 2000 > >> > >> Sachin > >> > >> -- > >> -- > >> Post: opend...@googlegroups.com > >> Unsubscribe: opendatakit...@googlegroups.com > >> Options: http://groups.google.com/group/opendatakit?hl=en > >> > >> --- > >> You received this message because you are subscribed to the Google > Groups > >> "ODK Community" group. > >> To unsubscribe from this group and stop receiving emails from it, send > an > >> email to opendatakit...@googlegroups.com . > >> For more options, visit https://groups.google.com/d/optout. > > > > > > > > > > -- > > Mitch Sundt > > Software Engineer > > University of Washington > > mitche...@gmail.com > > > > -- > > -- > > Post: opend...@googlegroups.com > > Unsubscribe: opendatakit...@googlegroups.com > > Options: http://groups.google.com/group/opendatakit?hl=en > > > > --- > > You received this message because you are subscribed to the Google > Groups > > "ODK Community" group. > > To unsubscribe from this group and stop receiving emails from it, send > an > > email to opendatakit...@googlegroups.com . > > For more options, visit https://groups.google.com/d/optout. >

Sachin,

Expiry usually is not complicated to address; resetting the passwords
should solve the problem reported in your error message. However, since it
did not result in a working server, you may want to run through the
following to ensure you did not make a mistake during the process:

  • Manually login to MySQL with the same username/password you set for
    Aggregate (account is not expired)
  • If that succeeds, confirm your Aggregate connection settings match
    what you used to login manually (app has correct settings)
  • If they are exactly the same URL, username and password, restart
    Tomcat (server running latest app settings)
  • Navigate to your running Aggregate server, check the URL specifies the
    correct hostname, port and URL path (app starts, correct server)
  • If that still fails with a 404, confirm the latest error messages in
    the Tomcat logs are the same (exactly same problem)

Also, is that server running against MySQL version 5.7.4 - 5.7.10? The
problem Mitch and Yaw are talking about only affects those versions.

Brent

··· On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone wrote:

Hi Yaw and Mitch,

First thank you so much for taking the time to help me out.

I share your frustration with Oracle as this is causing a not
insignificant problem.

I updated the MySQL password and set it to never expire. I also
reinstalled ODK Aggregate with the new user credentials and in that process
inserted the WAR file and the expanded WAR file (am I correct in thinking
that is the folder labelled ODKAggregate in the tomcat webapps folder?). It
gives me exactly the same problem.

The password has definitely updated since MySQL requires it to login and
the table says that the password is set to never expire.

Do you have any suggestions for how to proceed?

Thanks again for all your time

Best wishes,

Sachin

On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote:

Hi Sachin,

Mitch is right (both about the expiration and about Oracle's long
history of being not so nice).

My guess is that your post-expiry credentials are somehow still tied
to the expiration. Or Tomcat is still using the expanded copy of
Aggregate you have in your Tomcat webapps folder.

From the MySQL side, you can check expiration status with "SELECT *
FROM mysql.user;". And I think you can fix expirations with "ALTER
USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;"

From the Tomcat side, shut down Tomcat, remove both the WAR and the
expanded WAR and install the new WAR with the new credentials.

Restart MySQL and Tomcat and check your logs for any errors.

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt mitche...@gmail.com wrote:

Oracle bought MySQL a few years ago. In their dubious wisdom, they
changed
the behavior of the latest MySQL software so that your database
passwords
are invalid after 360 days of use.
http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html

I suspect Oracle didn't like the reliability and low outage / failure
rate
of MySQL. By making this change, they will cause a large number of
sites to
go down annually (because we are all not used to this new password
policy
and don't set reminders to change our passwords and re-run our
installer
scripts to update them).

And, as a result, Gartner Group or some other survey organization will
be
able to demonstrably prove that websites powered by Oracle databases
have
higher availability and reliability than those powered by MySQL. Look
for
the white paper on that sometime next year.

On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone sachin....@gmail.com wrote:

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request resource
is

not available'. I looked through the Apache Tomcat logs and found the
following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not
get

JDBC Connection; nested exception is java.sql.SQLException: Your
password

has expired. To log in you must change it using a client that supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an
automatic one

year expiry on their passwords. As such, I changed the root MySQL
password

and restarted everything. No luck. I then reinstalled ODK Aggregate
using

the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after the one
under discussion last year. Thinking it was the MySQL password expiry
issue,

I quickly changed the password expiring on those servers so they
didn't

expire. Both servers are up and running as per normal. Which suggests
to me

the MySQL password expiry is key but simply updating it is somehow
insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups

"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an

email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Brent,

Thank you so much for getting back to me.

So first up, my MySQL is v5.7 in which case, is this definitely not the
error? In which case, what am I supposed to make of the error?

I ran through your steps anyway and all was well until the 'navigate to
your running Aggregate server'. I can get the Apache Tomcat page but as
soon as I add .../ODKAggregate then I get error 404 again and the log is
exactly the same as previously.

Many thanks for all your help and time - it is very, very much appreciated.

Best wishes,

Sachin

··· On Monday, September 19, 2016 at 6:12:32 PM UTC+1, Brent Atkinson wrote: > > Sachin, > > Expiry usually is not complicated to address; resetting the passwords > should solve the problem reported in your error message. However, since it > did not result in a working server, you may want to run through the > following to ensure you did not make a mistake during the process: > > - Manually login to MySQL with the same username/password you set for > Aggregate (account is not expired) > - If that succeeds, confirm your Aggregate connection settings match > what you used to login manually (app has correct settings) > - If they are exactly the same URL, username and password, restart > Tomcat (server running latest app settings) > - Navigate to your running Aggregate server, check the URL specifies > the correct hostname, port and URL path (app starts, correct server) > - If that still fails with a 404, confirm the latest error messages in > the Tomcat logs are the same (exactly same problem) > > Also, is that server running against MySQL version 5.7.4 - 5.7.10? The > problem Mitch and Yaw are talking about only affects those versions. > > Brent > > > > > > > On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone <sachin....@gmail.com > wrote: > >> Hi Yaw and Mitch, >> >> First thank you so much for taking the time to help me out. >> >> I share your frustration with Oracle as this is causing a not >> insignificant problem. >> >> I updated the MySQL password and set it to never expire. I also >> reinstalled ODK Aggregate with the new user credentials and in that process >> inserted the WAR file and the expanded WAR file (am I correct in thinking >> that is the folder labelled ODKAggregate in the tomcat webapps folder?). It >> gives me exactly the same problem. >> >> The password has definitely updated since MySQL requires it to login and >> the table says that the password is set to never expire. >> >> Do you have any suggestions for how to proceed? >> >> Thanks again for all your time >> >> Best wishes, >> >> Sachin >> >> On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote: >>> >>> Hi Sachin, >>> >>> Mitch is right (both about the expiration and about Oracle's long >>> history of being not so nice). >>> >>> My guess is that your post-expiry credentials are somehow still tied >>> to the expiration. Or Tomcat is still using the expanded copy of >>> Aggregate you have in your Tomcat webapps folder. >>> >>> From the MySQL side, you can check expiration status with "SELECT * >>> FROM mysql.user;". And I think you can fix expirations with "ALTER >>> USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;" >>> >>> From the Tomcat side, shut down Tomcat, remove both the WAR and the >>> expanded WAR and install the new WAR with the new credentials. >>> >>> Restart MySQL and Tomcat and check your logs for any errors. >>> >>> Yaw >>> -- >>> Need ODK consultants? Nafundi provides form design, server setup, >>> in-field training, and software development for ODK. Go to >>> https://nafundi.com to get started. >>> >>> On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt wrote: >>> > Oracle bought MySQL a few years ago. In their dubious wisdom, they >>> changed >>> > the behavior of the latest MySQL software so that your database >>> passwords >>> > are invalid after 360 days of use. >>> > http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html >>> > >>> > I suspect Oracle didn't like the reliability and low outage / failure >>> rate >>> > of MySQL. By making this change, they will cause a large number of >>> sites to >>> > go down annually (because we are all not used to this new password >>> policy >>> > and don't set reminders to change our passwords and re-run our >>> installer >>> > scripts to update them). >>> > >>> > And, as a result, Gartner Group or some other survey organization will >>> be >>> > able to demonstrably prove that websites powered by Oracle databases >>> have >>> > higher availability and reliability than those powered by MySQL. Look >>> for >>> > the white paper on that sometime next year. >>> > >>> > >>> > >>> > On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone wrote: >>> >> >>> >> Dear Community, >>> >> >>> >> ODK Aggregate flags up error, 'HTTP status 404, the request resource >>> is >>> >> not available'. I looked through the Apache Tomcat logs and found the >>> >> following: >>> >> >>> >> WARNING: Failure: _granted_authority_hierarchy exception: >>> >> org.springframework.jdbc.CannotGetJdbcConnectionException: Could not >>> get >>> >> JDBC Connection; nested exception is java.sql.SQLException: Your >>> password >>> >> has expired. To log in you must change it using a client that >>> supports >>> >> expired passwords. >>> >> >>> >> The server went down, I think, on the first use after the annual >>> >> anniversary and a bit of googling showed me that MySQL have an >>> automatic one >>> >> year expiry on their passwords. As such, I changed the root MySQL >>> password >>> >> and restarted everything. No luck. I then reinstalled ODK Aggregate >>> using >>> >> the new, post-expiry credentials. Still no luck >>> >> >>> >> Possibly useful info: >>> >> I set up two other servers in the same manner a few days after the >>> one >>> >> under discussion last year. Thinking it was the MySQL password expiry >>> issue, >>> >> I quickly changed the password expiring on those servers so they >>> didn't >>> >> expire. Both servers are up and running as per normal. Which suggests >>> to me >>> >> the MySQL password expiry is key but simply updating it is somehow >>> >> insufficient. >>> >> >>> >> ANY HELP would be MASSIVELY APPRECIATED!!! >>> >> >>> >> Thanks x 2000 >>> >> >>> >> Sachin >>> >> >>> >> -- >>> >> -- >>> >> Post: opend...@googlegroups.com >>> >> Unsubscribe: opendatakit...@googlegroups.com >>> >> Options: http://groups.google.com/group/opendatakit?hl=en >>> >> >>> >> --- >>> >> You received this message because you are subscribed to the Google >>> Groups >>> >> "ODK Community" group. >>> >> To unsubscribe from this group and stop receiving emails from it, >>> send an >>> >> email to opendatakit...@googlegroups.com. >>> >> For more options, visit https://groups.google.com/d/optout. >>> > >>> > >>> > >>> > >>> > -- >>> > Mitch Sundt >>> > Software Engineer >>> > University of Washington >>> > mitche...@gmail.com >>> > >>> > -- >>> > -- >>> > Post: opend...@googlegroups.com >>> > Unsubscribe: opendatakit...@googlegroups.com >>> > Options: http://groups.google.com/group/opendatakit?hl=en >>> > >>> > --- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "ODK Community" group. >>> > To unsubscribe from this group and stop receiving emails from it, send >>> an >>> > email to opendatakit...@googlegroups.com. >>> > For more options, visit https://groups.google.com/d/optout. >>> >> -- >> -- >> Post: opend...@googlegroups.com >> Unsubscribe: opendatakit...@googlegroups.com >> Options: http://groups.google.com/group/opendatakit?hl=en >> >> --- >> You received this message because you are subscribed to the Google Groups >> "ODK Community" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to opendatakit...@googlegroups.com . >> For more options, visit https://groups.google.com/d/optout. >> > >

Sachin,

Double-check your logs. Are you sure the password error you are seeing
is from a few seconds ago. That is, are you looking at the correct
logs?

Next, go to your exploded ODKAggregate folder in your webapps folder
of Tomcat. Navigate to WEB-INF/lib and find ODKAggregate-settings.jar.
Copy that jar to your Desktop.

Rename it to ODKAggregate-settings.zip and unzip it. In the unzipped
folder, there will be jdbc.properties. Open it with a text editor.

Now in that file, should be your database username and password. Is it
the new username and password or the old one?

Yaw

··· -- Need ODK consultants? Nafundi provides form design, server setup, in-field training, and software development for ODK. Go to https://nafundi.com to get started.

On Tue, Sep 20, 2016 at 3:46 PM, Sachin De Stone sachin.destone@gmail.com wrote:

Hi Brent,

Thank you so much for getting back to me.

So first up, my MySQL is v5.7 in which case, is this definitely not the
error? In which case, what am I supposed to make of the error?

I ran through your steps anyway and all was well until the 'navigate to your
running Aggregate server'. I can get the Apache Tomcat page but as soon as I
add .../ODKAggregate then I get error 404 again and the log is exactly the
same as previously.

Many thanks for all your help and time - it is very, very much appreciated.

Best wishes,

Sachin

On Monday, September 19, 2016 at 6:12:32 PM UTC+1, Brent Atkinson wrote:

Sachin,

Expiry usually is not complicated to address; resetting the passwords
should solve the problem reported in your error message. However, since it
did not result in a working server, you may want to run through the
following to ensure you did not make a mistake during the process:

Manually login to MySQL with the same username/password you set for
Aggregate (account is not expired)
If that succeeds, confirm your Aggregate connection settings match what
you used to login manually (app has correct settings)
If they are exactly the same URL, username and password, restart Tomcat
(server running latest app settings)
Navigate to your running Aggregate server, check the URL specifies the
correct hostname, port and URL path (app starts, correct server)
If that still fails with a 404, confirm the latest error messages in the
Tomcat logs are the same (exactly same problem)

Also, is that server running against MySQL version 5.7.4 - 5.7.10? The
problem Mitch and Yaw are talking about only affects those versions.

Brent

On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone sachin....@gmail.com wrote:

Hi Yaw and Mitch,

First thank you so much for taking the time to help me out.

I share your frustration with Oracle as this is causing a not
insignificant problem.

I updated the MySQL password and set it to never expire. I also
reinstalled ODK Aggregate with the new user credentials and in that process
inserted the WAR file and the expanded WAR file (am I correct in thinking
that is the folder labelled ODKAggregate in the tomcat webapps folder?). It
gives me exactly the same problem.

The password has definitely updated since MySQL requires it to login and
the table says that the password is set to never expire.

Do you have any suggestions for how to proceed?

Thanks again for all your time

Best wishes,

Sachin

On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote:

Hi Sachin,

Mitch is right (both about the expiration and about Oracle's long
history of being not so nice).

My guess is that your post-expiry credentials are somehow still tied
to the expiration. Or Tomcat is still using the expanded copy of
Aggregate you have in your Tomcat webapps folder.

From the MySQL side, you can check expiration status with "SELECT *
FROM mysql.user;". And I think you can fix expirations with "ALTER
USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;"

From the Tomcat side, shut down Tomcat, remove both the WAR and the
expanded WAR and install the new WAR with the new credentials.

Restart MySQL and Tomcat and check your logs for any errors.

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt mitche...@gmail.com wrote:

Oracle bought MySQL a few years ago. In their dubious wisdom, they
changed
the behavior of the latest MySQL software so that your database
passwords
are invalid after 360 days of use.
http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html

I suspect Oracle didn't like the reliability and low outage / failure
rate
of MySQL. By making this change, they will cause a large number of
sites to
go down annually (because we are all not used to this new password
policy
and don't set reminders to change our passwords and re-run our
installer
scripts to update them).

And, as a result, Gartner Group or some other survey organization will
be
able to demonstrably prove that websites powered by Oracle databases
have
higher availability and reliability than those powered by MySQL. Look
for
the white paper on that sometime next year.

On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone sachin....@gmail.com wrote:

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request resource
is
not available'. I looked through the Apache Tomcat logs and found the
following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not
get
JDBC Connection; nested exception is java.sql.SQLException: Your
password
has expired. To log in you must change it using a client that
supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an
automatic one
year expiry on their passwords. As such, I changed the root MySQL
password
and restarted everything. No luck. I then reinstalled ODK Aggregate
using
the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after the
one
under discussion last year. Thinking it was the MySQL password expiry
issue,
I quickly changed the password expiring on those servers so they
didn't
expire. Both servers are up and running as per normal. Which suggests
to me
the MySQL password expiry is key but simply updating it is somehow
insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Yaw,

Yes, I am looking at the log file, tomcat6-stdout.2016-09-20.log, where it
reads (among a lot of other things) - this being the time that I followed
Brent's instructions

Sep 20, 2016 4:24:41 PM org.apache.catalina.core.StandardContext
listenerStart
SEVERE: Exception sending context initialized event to listener instance of
class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'hierarchicalRoleRelationships' defined in ServletContext
resource [/WEB-INF/applicationContext-security.xml]: Invocation of init
method failed; nested exception is
org.opendatakit.common.persistence.exception.ODKDatastoreException:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get
JDBC Connection; nested exception is java.sql.SQLException: Your password
has expired. To log in you must change it using a client that supports
expired passwords.

I have followed your helpful steps and the credentials in the unzipped jar
file are correct!

Thanks again for your time :slight_smile:

Sachin

··· On Tuesday, September 20, 2016 at 5:46:00 PM UTC+1, Yaw Anokwa wrote: > > Sachin, > > Double-check your logs. Are you sure the password error you are seeing > is from a few seconds ago. That is, are you looking at the correct > logs? > > Next, go to your exploded ODKAggregate folder in your webapps folder > of Tomcat. Navigate to WEB-INF/lib and find ODKAggregate-settings.jar. > Copy that jar to your Desktop. > > Rename it to ODKAggregate-settings.zip and unzip it. In the unzipped > folder, there will be jdbc.properties. Open it with a text editor. > > Now in that file, should be your database username and password. Is it > the new username and password or the old one? > > Yaw > -- > Need ODK consultants? Nafundi provides form design, server setup, > in-field training, and software development for ODK. Go to > https://nafundi.com to get started. > > On Tue, Sep 20, 2016 at 3:46 PM, Sachin De Stone <sachin....@gmail.com > wrote: > > Hi Brent, > > > > Thank you so much for getting back to me. > > > > So first up, my MySQL is v5.7 in which case, is this definitely not the > > error? In which case, what am I supposed to make of the error? > > > > I ran through your steps anyway and all was well until the 'navigate to > your > > running Aggregate server'. I can get the Apache Tomcat page but as soon > as I > > add .../ODKAggregate then I get error 404 again and the log is exactly > the > > same as previously. > > > > Many thanks for all your help and time - it is very, very much > appreciated. > > > > Best wishes, > > > > Sachin > > > > On Monday, September 19, 2016 at 6:12:32 PM UTC+1, Brent Atkinson wrote: > >> > >> Sachin, > >> > >> Expiry usually is not complicated to address; resetting the passwords > >> should solve the problem reported in your error message. However, since > it > >> did not result in a working server, you may want to run through the > >> following to ensure you did not make a mistake during the process: > >> > >> Manually login to MySQL with the same username/password you set for > >> Aggregate (account is not expired) > >> If that succeeds, confirm your Aggregate connection settings match what > >> you used to login manually (app has correct settings) > >> If they are exactly the same URL, username and password, restart Tomcat > >> (server running latest app settings) > >> Navigate to your running Aggregate server, check the URL specifies the > >> correct hostname, port and URL path (app starts, correct server) > >> If that still fails with a 404, confirm the latest error messages in > the > >> Tomcat logs are the same (exactly same problem) > >> > >> Also, is that server running against MySQL version 5.7.4 - 5.7.10? The > >> problem Mitch and Yaw are talking about only affects those versions. > >> > >> Brent > >> > >> > >> > >> > >> > >> > >> On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone wrote: > >>> > >>> Hi Yaw and Mitch, > >>> > >>> First thank you so much for taking the time to help me out. > >>> > >>> I share your frustration with Oracle as this is causing a not > >>> insignificant problem. > >>> > >>> I updated the MySQL password and set it to never expire. I also > >>> reinstalled ODK Aggregate with the new user credentials and in that > process > >>> inserted the WAR file and the expanded WAR file (am I correct in > thinking > >>> that is the folder labelled ODKAggregate in the tomcat webapps > folder?). It > >>> gives me exactly the same problem. > >>> > >>> The password has definitely updated since MySQL requires it to login > and > >>> the table says that the password is set to never expire. > >>> > >>> Do you have any suggestions for how to proceed? > >>> > >>> Thanks again for all your time > >>> > >>> Best wishes, > >>> > >>> Sachin > >>> > >>> On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote: > >>>> > >>>> Hi Sachin, > >>>> > >>>> Mitch is right (both about the expiration and about Oracle's long > >>>> history of being not so nice). > >>>> > >>>> My guess is that your post-expiry credentials are somehow still tied > >>>> to the expiration. Or Tomcat is still using the expanded copy of > >>>> Aggregate you have in your Tomcat webapps folder. > >>>> > >>>> From the MySQL side, you can check expiration status with "SELECT * > >>>> FROM mysql.user;". And I think you can fix expirations with "ALTER > >>>> USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;" > >>>> > >>>> From the Tomcat side, shut down Tomcat, remove both the WAR and the > >>>> expanded WAR and install the new WAR with the new credentials. > >>>> > >>>> Restart MySQL and Tomcat and check your logs for any errors. > >>>> > >>>> Yaw > >>>> -- > >>>> Need ODK consultants? Nafundi provides form design, server setup, > >>>> in-field training, and software development for ODK. Go to > >>>> https://nafundi.com to get started. > >>>> > >>>> On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt wrote: > >>>> > Oracle bought MySQL a few years ago. In their dubious wisdom, they > >>>> > changed > >>>> > the behavior of the latest MySQL software so that your database > >>>> > passwords > >>>> > are invalid after 360 days of use. > >>>> > > http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html > >>>> > > >>>> > I suspect Oracle didn't like the reliability and low outage / > failure > >>>> > rate > >>>> > of MySQL. By making this change, they will cause a large number of > >>>> > sites to > >>>> > go down annually (because we are all not used to this new password > >>>> > policy > >>>> > and don't set reminders to change our passwords and re-run our > >>>> > installer > >>>> > scripts to update them). > >>>> > > >>>> > And, as a result, Gartner Group or some other survey organization > will > >>>> > be > >>>> > able to demonstrably prove that websites powered by Oracle > databases > >>>> > have > >>>> > higher availability and reliability than those powered by MySQL. > Look > >>>> > for > >>>> > the white paper on that sometime next year. > >>>> > > >>>> > > >>>> > > >>>> > On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone wrote: > >>>> >> > >>>> >> Dear Community, > >>>> >> > >>>> >> ODK Aggregate flags up error, 'HTTP status 404, the request > resource > >>>> >> is > >>>> >> not available'. I looked through the Apache Tomcat logs and found > the > >>>> >> following: > >>>> >> > >>>> >> WARNING: Failure: _granted_authority_hierarchy exception: > >>>> >> org.springframework.jdbc.CannotGetJdbcConnectionException: Could > not > >>>> >> get > >>>> >> JDBC Connection; nested exception is java.sql.SQLException: Your > >>>> >> password > >>>> >> has expired. To log in you must change it using a client that > >>>> >> supports > >>>> >> expired passwords. > >>>> >> > >>>> >> The server went down, I think, on the first use after the annual > >>>> >> anniversary and a bit of googling showed me that MySQL have an > >>>> >> automatic one > >>>> >> year expiry on their passwords. As such, I changed the root MySQL > >>>> >> password > >>>> >> and restarted everything. No luck. I then reinstalled ODK > Aggregate > >>>> >> using > >>>> >> the new, post-expiry credentials. Still no luck > >>>> >> > >>>> >> Possibly useful info: > >>>> >> I set up two other servers in the same manner a few days after the > >>>> >> one > >>>> >> under discussion last year. Thinking it was the MySQL password > expiry > >>>> >> issue, > >>>> >> I quickly changed the password expiring on those servers so they > >>>> >> didn't > >>>> >> expire. Both servers are up and running as per normal. Which > suggests > >>>> >> to me > >>>> >> the MySQL password expiry is key but simply updating it is somehow > >>>> >> insufficient. > >>>> >> > >>>> >> ANY HELP would be MASSIVELY APPRECIATED!!! > >>>> >> > >>>> >> Thanks x 2000 > >>>> >> > >>>> >> Sachin > >>>> >> > >>>> >> -- > >>>> >> -- > >>>> >> Post: opend...@googlegroups.com > >>>> >> Unsubscribe: opendatakit...@googlegroups.com > >>>> >> Options: http://groups.google.com/group/opendatakit?hl=en > >>>> >> > >>>> >> --- > >>>> >> You received this message because you are subscribed to the Google > >>>> >> Groups > >>>> >> "ODK Community" group. > >>>> >> To unsubscribe from this group and stop receiving emails from it, > >>>> >> send an > >>>> >> email to opendatakit...@googlegroups.com. > >>>> >> For more options, visit https://groups.google.com/d/optout. > >>>> > > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > Mitch Sundt > >>>> > Software Engineer > >>>> > University of Washington > >>>> > mitche...@gmail.com > >>>> > > >>>> > -- > >>>> > -- > >>>> > Post: opend...@googlegroups.com > >>>> > Unsubscribe: opendatakit...@googlegroups.com > >>>> > Options: http://groups.google.com/group/opendatakit?hl=en > >>>> > > >>>> > --- > >>>> > You received this message because you are subscribed to the Google > >>>> > Groups > >>>> > "ODK Community" group. > >>>> > To unsubscribe from this group and stop receiving emails from it, > send > >>>> > an > >>>> > email to opendatakit...@googlegroups.com. > >>>> > For more options, visit https://groups.google.com/d/optout. > >>> > >>> -- > >>> -- > >>> Post: opend...@googlegroups.com > >>> Unsubscribe: opendatakit...@googlegroups.com > >>> Options: http://groups.google.com/group/opendatakit?hl=en > >>> > >>> --- > >>> You received this message because you are subscribed to the Google > Groups > >>> "ODK Community" group. > >>> To unsubscribe from this group and stop receiving emails from it, send > an > >>> email to opendatakit...@googlegroups.com. > >>> For more options, visit https://groups.google.com/d/optout. > >> > >> > > -- > > -- > > Post: opend...@googlegroups.com > > Unsubscribe: opendatakit...@googlegroups.com > > Options: http://groups.google.com/group/opendatakit?hl=en > > > > --- > > You received this message because you are subscribed to the Google > Groups > > "ODK Community" group. > > To unsubscribe from this group and stop receiving emails from it, send > an > > email to opendatakit...@googlegroups.com . > > For more options, visit https://groups.google.com/d/optout. >

Hi Sachin,

At this point, I'll need to see it to believe it. If you can give me
remote admin access to your machine (yanokwa at nafundi com), I'm glad
to take a look.

Yaw

··· On Tue, Sep 20, 2016 at 5:10 PM, Sachin De Stone wrote: > Hi Yaw, > > Yes, I am looking at the log file, tomcat6-stdout.2016-09-20.log, where it > reads (among a lot of other things) - this being the time that I followed > Brent's instructions > > Sep 20, 2016 4:24:41 PM org.apache.catalina.core.StandardContext > listenerStart > SEVERE: Exception sending context initialized event to listener instance of > class org.springframework.web.context.ContextLoaderListener > org.springframework.beans.factory.BeanCreationException: Error creating bean > with name 'hierarchicalRoleRelationships' defined in ServletContext resource > [/WEB-INF/applicationContext-security.xml]: Invocation of init method > failed; nested exception is > org.opendatakit.common.persistence.exception.ODKDatastoreException: > org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get > JDBC Connection; nested exception is java.sql.SQLException: Your password > has expired. To log in you must change it using a client that supports > expired passwords. > > I have followed your helpful steps and the credentials in the unzipped jar > file are correct! > > Thanks again for your time :) > > Sachin > > > On Tuesday, September 20, 2016 at 5:46:00 PM UTC+1, Yaw Anokwa wrote: >> >> Sachin, >> >> Double-check your logs. Are you sure the password error you are seeing >> is from a few seconds ago. That is, are you looking at the correct >> logs? >> >> Next, go to your exploded ODKAggregate folder in your webapps folder >> of Tomcat. Navigate to WEB-INF/lib and find ODKAggregate-settings.jar. >> Copy that jar to your Desktop. >> >> Rename it to ODKAggregate-settings.zip and unzip it. In the unzipped >> folder, there will be jdbc.properties. Open it with a text editor. >> >> Now in that file, should be your database username and password. Is it >> the new username and password or the old one? >> >> Yaw >> -- >> Need ODK consultants? Nafundi provides form design, server setup, >> in-field training, and software development for ODK. Go to >> https://nafundi.com to get started. >> >> On Tue, Sep 20, 2016 at 3:46 PM, Sachin De Stone wrote: >> > Hi Brent, >> > >> > Thank you so much for getting back to me. >> > >> > So first up, my MySQL is v5.7 in which case, is this definitely not the >> > error? In which case, what am I supposed to make of the error? >> > >> > I ran through your steps anyway and all was well until the 'navigate to >> > your >> > running Aggregate server'. I can get the Apache Tomcat page but as soon >> > as I >> > add .../ODKAggregate then I get error 404 again and the log is exactly >> > the >> > same as previously. >> > >> > Many thanks for all your help and time - it is very, very much >> > appreciated. >> > >> > Best wishes, >> > >> > Sachin >> > >> > On Monday, September 19, 2016 at 6:12:32 PM UTC+1, Brent Atkinson wrote: >> >> >> >> Sachin, >> >> >> >> Expiry usually is not complicated to address; resetting the passwords >> >> should solve the problem reported in your error message. However, since >> >> it >> >> did not result in a working server, you may want to run through the >> >> following to ensure you did not make a mistake during the process: >> >> >> >> Manually login to MySQL with the same username/password you set for >> >> Aggregate (account is not expired) >> >> If that succeeds, confirm your Aggregate connection settings match what >> >> you used to login manually (app has correct settings) >> >> If they are exactly the same URL, username and password, restart Tomcat >> >> (server running latest app settings) >> >> Navigate to your running Aggregate server, check the URL specifies the >> >> correct hostname, port and URL path (app starts, correct server) >> >> If that still fails with a 404, confirm the latest error messages in >> >> the >> >> Tomcat logs are the same (exactly same problem) >> >> >> >> Also, is that server running against MySQL version 5.7.4 - 5.7.10? The >> >> problem Mitch and Yaw are talking about only affects those versions. >> >> >> >> Brent >> >> >> >> >> >> >> >> >> >> >> >> >> >> On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone wrote: >> >>> >> >>> Hi Yaw and Mitch, >> >>> >> >>> First thank you so much for taking the time to help me out. >> >>> >> >>> I share your frustration with Oracle as this is causing a not >> >>> insignificant problem. >> >>> >> >>> I updated the MySQL password and set it to never expire. I also >> >>> reinstalled ODK Aggregate with the new user credentials and in that >> >>> process >> >>> inserted the WAR file and the expanded WAR file (am I correct in >> >>> thinking >> >>> that is the folder labelled ODKAggregate in the tomcat webapps >> >>> folder?). It >> >>> gives me exactly the same problem. >> >>> >> >>> The password has definitely updated since MySQL requires it to login >> >>> and >> >>> the table says that the password is set to never expire. >> >>> >> >>> Do you have any suggestions for how to proceed? >> >>> >> >>> Thanks again for all your time >> >>> >> >>> Best wishes, >> >>> >> >>> Sachin >> >>> >> >>> On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote: >> >>>> >> >>>> Hi Sachin, >> >>>> >> >>>> Mitch is right (both about the expiration and about Oracle's long >> >>>> history of being not so nice). >> >>>> >> >>>> My guess is that your post-expiry credentials are somehow still tied >> >>>> to the expiration. Or Tomcat is still using the expanded copy of >> >>>> Aggregate you have in your Tomcat webapps folder. >> >>>> >> >>>> From the MySQL side, you can check expiration status with "SELECT * >> >>>> FROM mysql.user;". And I think you can fix expirations with "ALTER >> >>>> USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;" >> >>>> >> >>>> From the Tomcat side, shut down Tomcat, remove both the WAR and the >> >>>> expanded WAR and install the new WAR with the new credentials. >> >>>> >> >>>> Restart MySQL and Tomcat and check your logs for any errors. >> >>>> >> >>>> Yaw >> >>>> -- >> >>>> Need ODK consultants? Nafundi provides form design, server setup, >> >>>> in-field training, and software development for ODK. Go to >> >>>> https://nafundi.com to get started. >> >>>> >> >>>> On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt wrote: >> >>>> > Oracle bought MySQL a few years ago. In their dubious wisdom, they >> >>>> > changed >> >>>> > the behavior of the latest MySQL software so that your database >> >>>> > passwords >> >>>> > are invalid after 360 days of use. >> >>>> > >> >>>> > http://dev.mysql.com/doc/refman/5.7/en/password-expiration-policy.html >> >>>> > >> >>>> > I suspect Oracle didn't like the reliability and low outage / >> >>>> > failure >> >>>> > rate >> >>>> > of MySQL. By making this change, they will cause a large number of >> >>>> > sites to >> >>>> > go down annually (because we are all not used to this new password >> >>>> > policy >> >>>> > and don't set reminders to change our passwords and re-run our >> >>>> > installer >> >>>> > scripts to update them). >> >>>> > >> >>>> > And, as a result, Gartner Group or some other survey organization >> >>>> > will >> >>>> > be >> >>>> > able to demonstrably prove that websites powered by Oracle >> >>>> > databases >> >>>> > have >> >>>> > higher availability and reliability than those powered by MySQL. >> >>>> > Look >> >>>> > for >> >>>> > the white paper on that sometime next year. >> >>>> > >> >>>> > >> >>>> > >> >>>> > On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone wrote: >> >>>> >> >> >>>> >> Dear Community, >> >>>> >> >> >>>> >> ODK Aggregate flags up error, 'HTTP status 404, the request >> >>>> >> resource >> >>>> >> is >> >>>> >> not available'. I looked through the Apache Tomcat logs and found >> >>>> >> the >> >>>> >> following: >> >>>> >> >> >>>> >> WARNING: Failure: _granted_authority_hierarchy exception: >> >>>> >> org.springframework.jdbc.CannotGetJdbcConnectionException: Could >> >>>> >> not >> >>>> >> get >> >>>> >> JDBC Connection; nested exception is java.sql.SQLException: Your >> >>>> >> password >> >>>> >> has expired. To log in you must change it using a client that >> >>>> >> supports >> >>>> >> expired passwords. >> >>>> >> >> >>>> >> The server went down, I think, on the first use after the annual >> >>>> >> anniversary and a bit of googling showed me that MySQL have an >> >>>> >> automatic one >> >>>> >> year expiry on their passwords. As such, I changed the root MySQL >> >>>> >> password >> >>>> >> and restarted everything. No luck. I then reinstalled ODK >> >>>> >> Aggregate >> >>>> >> using >> >>>> >> the new, post-expiry credentials. Still no luck >> >>>> >> >> >>>> >> Possibly useful info: >> >>>> >> I set up two other servers in the same manner a few days after the >> >>>> >> one >> >>>> >> under discussion last year. Thinking it was the MySQL password >> >>>> >> expiry >> >>>> >> issue, >> >>>> >> I quickly changed the password expiring on those servers so they >> >>>> >> didn't >> >>>> >> expire. Both servers are up and running as per normal. Which >> >>>> >> suggests >> >>>> >> to me >> >>>> >> the MySQL password expiry is key but simply updating it is somehow >> >>>> >> insufficient. >> >>>> >> >> >>>> >> ANY HELP would be MASSIVELY APPRECIATED!!! >> >>>> >> >> >>>> >> Thanks x 2000 >> >>>> >> >> >>>> >> Sachin >> >>>> >> >> >>>> >> -- >> >>>> >> -- >> >>>> >> Post: opend...@googlegroups.com >> >>>> >> Unsubscribe: opendatakit...@googlegroups.com >> >>>> >> Options: http://groups.google.com/group/opendatakit?hl=en >> >>>> >> >> >>>> >> --- >> >>>> >> You received this message because you are subscribed to the Google >> >>>> >> Groups >> >>>> >> "ODK Community" group. >> >>>> >> To unsubscribe from this group and stop receiving emails from it, >> >>>> >> send an >> >>>> >> email to opendatakit...@googlegroups.com. >> >>>> >> For more options, visit https://groups.google.com/d/optout. >> >>>> > >> >>>> > >> >>>> > >> >>>> > >> >>>> > -- >> >>>> > Mitch Sundt >> >>>> > Software Engineer >> >>>> > University of Washington >> >>>> > mitche...@gmail.com >> >>>> > >> >>>> > -- >> >>>> > -- >> >>>> > Post: opend...@googlegroups.com >> >>>> > Unsubscribe: opendatakit...@googlegroups.com >> >>>> > Options: http://groups.google.com/group/opendatakit?hl=en >> >>>> > >> >>>> > --- >> >>>> > You received this message because you are subscribed to the Google >> >>>> > Groups >> >>>> > "ODK Community" group. >> >>>> > To unsubscribe from this group and stop receiving emails from it, >> >>>> > send >> >>>> > an >> >>>> > email to opendatakit...@googlegroups.com. >> >>>> > For more options, visit https://groups.google.com/d/optout. >> >>> >> >>> -- >> >>> -- >> >>> Post: opend...@googlegroups.com >> >>> Unsubscribe: opendatakit...@googlegroups.com >> >>> Options: http://groups.google.com/group/opendatakit?hl=en >> >>> >> >>> --- >> >>> You received this message because you are subscribed to the Google >> >>> Groups >> >>> "ODK Community" group. >> >>> To unsubscribe from this group and stop receiving emails from it, send >> >>> an >> >>> email to opendatakit...@googlegroups.com. >> >>> For more options, visit https://groups.google.com/d/optout. >> >> >> >> >> > -- >> > -- >> > Post: opend...@googlegroups.com >> > Unsubscribe: opendatakit...@googlegroups.com >> > Options: http://groups.google.com/group/opendatakit?hl=en >> > >> > --- >> > You received this message because you are subscribed to the Google >> > Groups >> > "ODK Community" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> > an >> > email to opendatakit...@googlegroups.com. >> > For more options, visit https://groups.google.com/d/optout. > > -- > -- > Post: opendatakit@googlegroups.com > Unsubscribe: opendatakit+unsubscribe@googlegroups.com > Options: http://groups.google.com/group/opendatakit?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "ODK Community" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to opendatakit+unsubscribe@googlegroups.com. > For more options, visit https://groups.google.com/d/optout.

Hi Yaw,

That is such a kind offer. I am talking to ethics guys at The University of
Oxford where our server currently resides to try and sort permission (might
be some kind of confidentiality agreement). I will get back to you when I
can.

Thanks again for this very generous offer.

Best wishes,

Sachin

··· On 22 September 2016 at 15:40, Yaw Anokwa wrote:

Hi Sachin,

At this point, I'll need to see it to believe it. If you can give me
remote admin access to your machine (yanokwa at nafundi com), I'm glad
to take a look.

Yaw

On Tue, Sep 20, 2016 at 5:10 PM, Sachin De Stone sachin.destone@gmail.com wrote:

Hi Yaw,

Yes, I am looking at the log file, tomcat6-stdout.2016-09-20.log, where
it
reads (among a lot of other things) - this being the time that I followed
Brent's instructions

Sep 20, 2016 4:24:41 PM org.apache.catalina.core.StandardContext
listenerStart
SEVERE: Exception sending context initialized event to listener instance
of
class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating
bean
with name 'hierarchicalRoleRelationships' defined in ServletContext
resource
[/WEB-INF/applicationContext-security.xml]: Invocation of init method
failed; nested exception is
org.opendatakit.common.persistence.exception.ODKDatastoreException:
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get
JDBC Connection; nested exception is java.sql.SQLException: Your password
has expired. To log in you must change it using a client that supports
expired passwords.

I have followed your helpful steps and the credentials in the unzipped
jar
file are correct!

Thanks again for your time :slight_smile:

Sachin

On Tuesday, September 20, 2016 at 5:46:00 PM UTC+1, Yaw Anokwa wrote:

Sachin,

Double-check your logs. Are you sure the password error you are seeing
is from a few seconds ago. That is, are you looking at the correct
logs?

Next, go to your exploded ODKAggregate folder in your webapps folder
of Tomcat. Navigate to WEB-INF/lib and find ODKAggregate-settings.jar.
Copy that jar to your Desktop.

Rename it to ODKAggregate-settings.zip and unzip it. In the unzipped
folder, there will be jdbc.properties. Open it with a text editor.

Now in that file, should be your database username and password. Is it
the new username and password or the old one?

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Tue, Sep 20, 2016 at 3:46 PM, Sachin De Stone sachin....@gmail.com wrote:

Hi Brent,

Thank you so much for getting back to me.

So first up, my MySQL is v5.7 in which case, is this definitely not
the

error? In which case, what am I supposed to make of the error?

I ran through your steps anyway and all was well until the 'navigate
to

your
running Aggregate server'. I can get the Apache Tomcat page but as
soon

as I
add .../ODKAggregate then I get error 404 again and the log is exactly
the
same as previously.

Many thanks for all your help and time - it is very, very much
appreciated.

Best wishes,

Sachin

On Monday, September 19, 2016 at 6:12:32 PM UTC+1, Brent Atkinson wrote:

Sachin,

Expiry usually is not complicated to address; resetting the passwords
should solve the problem reported in your error message. However,
since

it
did not result in a working server, you may want to run through the
following to ensure you did not make a mistake during the process:

Manually login to MySQL with the same username/password you set for
Aggregate (account is not expired)
If that succeeds, confirm your Aggregate connection settings match
what

you used to login manually (app has correct settings)
If they are exactly the same URL, username and password, restart
Tomcat

(server running latest app settings)
Navigate to your running Aggregate server, check the URL specifies
the

correct hostname, port and URL path (app starts, correct server)
If that still fails with a 404, confirm the latest error messages in
the
Tomcat logs are the same (exactly same problem)

Also, is that server running against MySQL version 5.7.4 - 5.7.10?
The

problem Mitch and Yaw are talking about only affects those versions.

Brent

On Mon, Sep 19, 2016 at 11:31 AM, Sachin De Stone sachin....@gmail.com wrote:

Hi Yaw and Mitch,

First thank you so much for taking the time to help me out.

I share your frustration with Oracle as this is causing a not
insignificant problem.

I updated the MySQL password and set it to never expire. I also
reinstalled ODK Aggregate with the new user credentials and in that
process
inserted the WAR file and the expanded WAR file (am I correct in
thinking
that is the folder labelled ODKAggregate in the tomcat webapps
folder?). It
gives me exactly the same problem.

The password has definitely updated since MySQL requires it to login
and
the table says that the password is set to never expire.

Do you have any suggestions for how to proceed?

Thanks again for all your time

Best wishes,

Sachin

On Wednesday, September 14, 2016 at 3:40:10 PM UTC+1, Yaw Anokwa wrote:

Hi Sachin,

Mitch is right (both about the expiration and about Oracle's long
history of being not so nice).

My guess is that your post-expiry credentials are somehow still
tied

to the expiration. Or Tomcat is still using the expanded copy of
Aggregate you have in your Tomcat webapps folder.

From the MySQL side, you can check expiration status with "SELECT *
FROM mysql.user;". And I think you can fix expirations with "ALTER
USER 'my_aggregate_users'@'localhost' PASSWORD EXPIRE NEVER;"

From the Tomcat side, shut down Tomcat, remove both the WAR and the
expanded WAR and install the new WAR with the new credentials.

Restart MySQL and Tomcat and check your logs for any errors.

Yaw

Need ODK consultants? Nafundi provides form design, server setup,
in-field training, and software development for ODK. Go to
https://nafundi.com to get started.

On Tue, Sep 13, 2016 at 4:57 PM, Mitch Sundt mitche...@gmail.com wrote:

Oracle bought MySQL a few years ago. In their dubious wisdom,
they

changed
the behavior of the latest MySQL software so that your database
passwords
are invalid after 360 days of use.

http://dev.mysql.com/doc/refman/5.7/en/password-
expiration-policy.html

I suspect Oracle didn't like the reliability and low outage /
failure
rate
of MySQL. By making this change, they will cause a large number
of

sites to
go down annually (because we are all not used to this new
password

policy
and don't set reminders to change our passwords and re-run our
installer
scripts to update them).

And, as a result, Gartner Group or some other survey organization
will
be
able to demonstrably prove that websites powered by Oracle
databases
have
higher availability and reliability than those powered by MySQL.
Look
for
the white paper on that sometime next year.

On Tue, Sep 13, 2016 at 6:06 AM, Sachin De Stone sachin....@gmail.com wrote:

Dear Community,

ODK Aggregate flags up error, 'HTTP status 404, the request
resource
is
not available'. I looked through the Apache Tomcat logs and
found

the
following:

WARNING: Failure: _granted_authority_hierarchy exception:
org.springframework.jdbc.CannotGetJdbcConnectionException:
Could

not
get
JDBC Connection; nested exception is java.sql.SQLException: Your
password
has expired. To log in you must change it using a client that
supports
expired passwords.

The server went down, I think, on the first use after the annual
anniversary and a bit of googling showed me that MySQL have an
automatic one
year expiry on their passwords. As such, I changed the root
MySQL

password
and restarted everything. No luck. I then reinstalled ODK
Aggregate
using
the new, post-expiry credentials. Still no luck

Possibly useful info:
I set up two other servers in the same manner a few days after
the

one
under discussion last year. Thinking it was the MySQL password
expiry
issue,
I quickly changed the password expiring on those servers so they
didn't
expire. Both servers are up and running as per normal. Which
suggests
to me
the MySQL password expiry is key but simply updating it is
somehow

insufficient.

ANY HELP would be MASSIVELY APPRECIATED!!!

Thanks x 2000

Sachin

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the
Google

Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from
it,

send an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
Mitch Sundt
Software Engineer
University of Washington
mitche...@gmail.com

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the
Google

Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it,
send

an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opend...@googlegroups.com
Unsubscribe: opendatakit...@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google
Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send
an
email to opendatakit...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to the Google Groups
"ODK Community" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--

Post: opendatakit@googlegroups.com
Unsubscribe: opendatakit+unsubscribe@googlegroups.com
Options: http://groups.google.com/group/opendatakit?hl=en


You received this message because you are subscribed to a topic in the
Google Groups "ODK Community" group.
To unsubscribe from this topic, visit https://groups.google.com/d/
topic/opendatakit/pp0mNX4Kpwk/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
opendatakit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.