Currently, for ticket acquisition, we don't respect the "maxTimeMS". We should do the same thing like we do it for the lock acquisition wait /prepare conflict wait . Though, TicketHolder::waitForTicketUntil() has the default smallest wait interval as 500 ms.
If any user sets the command maxTimeMS < 500ms, then it's a problem.-
It's not just problem with maxTimeMs <500ms. Basically, ticket acquisition can wait up to maxTimeMs+ 500ms (default semaphore wait interval), Eg. If user sets maxTimeMs = 1005, the cmd wait for 1500ms to acquire ticket.