Fixed this issue.
In every /Modules folder, there is a *_schema.php file. e.g. vis_schema.php in the emoncms/Modules/vis folder.
What the Update database routine does is compares the actual description of the mqSQL tables and compares them with the array description in that schema.php file. If there is a mismatch it feels that there are changes that are needed.
mySQL no longer needs an int length. All my tables have the datatype as int, but the schema.php seems to still be specifying a length for them. The Update database routine then marks this as a change that needs to be applied. Of course that change does not be applied and hence the loop.
The fix for me was going through each schema.php file in every folder and removing the specified length from any int fields.
e.g.
change the line found in vis_schema.php from
'id' => array('type' => 'int(11)', 'Null'=>false, 'Key'=>'PRI', 'Extra'=>'auto_increment'),
to
'id' => array('type' => 'int', 'Null'=>false, 'Key'=>'PRI', 'Extra'=>'auto_increment'),
Then clicking the Update database, gives me a nice " Database is up to date - Nothing to do"
I might open an Issue on the git to fix this because I will get this same issue again when I git pull the next version.