I don’t know why exactly your cache refresh job fails, but I tried adding a new column in my cache database and then did a source refresh, the cache database in denodo got refreshed with the new column and doing the cache_preload = ‘true’ I was able to load the values into the database.
Another thing you can try is to copy the view into another view and cache it so that a new table is created and then you can rename to the older name. To copy the view you can just right click and click copy and in the same database you can paste the view, this will create another cache table into your cache database. If this new view is working successfully, then you can replace the original with this new one renaming it.
If this doesn’t work and you’re a customer, you can file a support case
Hope it helps!