Thanks - I've found the problem by accident
Its not our application code.
Running the proc
sp_helpdb
results in
Msg 12306, Level 26, State 39
Server '<servername>', Procedure 'sp_helpdb', Line 945
No table lock on object 'sysattributes' in database 'master'.
Msg 12306, Level 26, State 39
Server '<servername>', Procedure 'sp_helpdb', Line 945
No table lock on object 'sysattributes' in database 'master'.
Msg 12306, Level 26, State 39
Server '<servername>', Procedure 'sp_helpdb', Line 945
No table lock on object 'sysattributes' in database 'master'.
Msg 12306, Level 26, State 39
Server '<servername>', Procedure 'sp_helpdb', Line 945
No table lock on object 'sysdatabases' in database 'master'.
I'll log a fault.