MySQL Read lock and query performance analyses
Don't use "prefix indexes" (status(3)); they usually hurt more than they help.
Shrink the table size...
What kind of values are in id VARCHAR(32).  (It is unusually to have such a bulky PRIMARY KEY.)
Change status from a multi-byte varchar to a 1-byte ENUM.
If there are other columns or indexes in the table, we need to see them in order to understand whether there are side issues.
What is the value of innodb_buffer_pool_size?  How much RAM do you have?
The query will (based on the EXPLAIN) scan through the table until it finds the first entry with "UNASSIGNED".  Without knowing the distribution of the data, I can't say when that would occur.
Eliminating the prefixing may speed things up.
Saying SELECT id instead of SELECT * may speed things up.
(I don't know how whether the rows before the first "UNASSIGNED" will be locked.)