An additional thread is created when setting the option "validConnectionTimeout".
This thread verify that connections are all active.
Using This is normally done by pool that call Connection.isValid()
Since Aurora role of each instance can change over time, this will validate that connection are active AND role have not changed.
It will be better to avoid this additionnal thread, and implement a specific validation (Connection.isValid()) for aurora, so pool can use this without having a specific thread.