This worrying error was fixed by naming columns selected from a linked server EG:-
select * from openquery([someserver\someinstance], 'select * from [databasename].[schema].[tablename]')
Msg 0, Level 11, State 0, Line 4
A severe error occurred on the current command. The results, if any, should be discarded.
select * from openquery([someserver\someinstance], 'select [LifeID] from [databasename].[schema].[tablename]')
(111878 row(s) affected)