If there is a problem retrieving database product name, then VendorDatabaseIdProvider.getDatabaseId simply returns null. This causes " org.apache.ibatis.binding.BindingException: Parameter '_databaseId' not found" when calling a mapper that references this databaseId.
It would be probably much better throwing RuntimeException in this case.