File: wait-queue-timeout.yml

package info (click to toggle)
ruby-mongo 2.23.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 15,020 kB
  • sloc: ruby: 110,810; makefile: 5
file content (51 lines) | stat: -rw-r--r-- 1,342 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
version: 1
style: unit
description: must aggressively timeout threads enqueued longer than waitQueueTimeoutMS
# Remove the topology runOn requirement when cmap specs are adjusted for lbs
runOn:
  - topology: [ "single", "replicaset", "sharded" ]
poolOptions:
  maxPoolSize: 1
  waitQueueTimeoutMS: 50
operations:
  - name: ready
  # Check out only possible connection
  - name: checkOut
    label: conn0
  # Start a thread, have it enter the wait queue
  - name: start
    target: thread1
  - name: checkOut
    thread: thread1
  # Wait for other thread to time out, then check in connection
  - name: waitForEvent
    event: ConnectionCheckOutFailed
    count: 1
  - name: checkIn
    connection: conn0
  # Rejoin thread1, should experience error
  - name: waitForThread
    target: thread1
error:
  type: WaitQueueTimeoutError
  message: Timed out while checking out a connection from connection pool
events:
  - type: ConnectionCheckOutStarted
    address: 42
  - type: ConnectionCheckedOut
    connectionId: 42
    address: 42
  - type: ConnectionCheckOutStarted
    address: 42
  - type: ConnectionCheckOutFailed
    reason: timeout
    address: 42
  - type: ConnectionCheckedIn
    connectionId: 42
    address: 42
ignore:
  - ConnectionCreated
  - ConnectionReady
  - ConnectionClosed
  - ConnectionPoolCreated
  - ConnectionPoolReady