What is the best way to find the SQL locks along wih the user associated with that lock in SQL Server 2008?
select * from sys.dm_tran_locks will list all current locks, granted or pending, along with the requesting session id. select * from sys.dm_exec_sessions will list all current sessions, including the client host and login name. But going this way is very seldom what you want. For a more digestible form, use the Activity Monitor and watch the blocking as reported there.
Run this against the master db:
SELECT spid,blocked,program_name,loginame,hostname,lastwaittype,*
FROM master.dbo.SysProcesses
WHERE blocked <> 0