apple / apple/swift-distributed-actors
FAILED: DistributedReceptionistTests.test_receptionist_listing_shouldEndAfterTaskIsCancelled
- Dominant language
- Swift
- Stars
- 679
- Forks
- 84
- PR merge metrics
- No merged PRs in 30d
Description
https://ci.swiftserver.group/job/swift-distributed-actors-5.7-prb/66/consoleFull
```
DistributedReceptionistTests.test_receptionist_listing_shouldEndAfterTaskIsCancelled : failed - Expected [/user/Greeter-y] to terminate within 5s
22:53:57 ------------------------------------- ClusterSystem(DistributedReceptionistTests) ------------------------------------------------
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3360] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": OpLogDistributedReceptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3360] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "actor/type": OpLogDistributedReceptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3360] [OperationLogDistributedReceptionist.swift:270][/system/receptionist] [debug] Initialized receptionist
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3360] [ClusterSystem.swift:399] [info] ClusterSystem [DistributedReceptionistTests] initialized; Cluster disabled, not listening for connections.
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3370] [_OperationLogClusterReceptionistBehavior.swift:95][/system/receptionist-ref] [debug] Initialized receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3370] [ClusterEventStream.swift:80][/system/clusterEvents] [trace] Successfully added async subscriber [ObjectIdentifier(0x00007f1a5043aa10)]
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3370] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/_TestProbeInternal-y
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": _TestProbeInternal
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3370] [ClusterEventStream.swift:44][/system/clusterEvents] [trace] Successfully subscribed [_ActorRef(/system/receptionist-ref/$sub-DistributedActors.Cluster.Event-y)], offering membership snapshot
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3370] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/_TestProbeInternal-y
22:53:57 // "actor/type": _TestProbeInternal
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/_TestProbeInternal-b
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": _TestProbeInternal
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/_TestProbeInternal-b
22:53:57 // "actor/type": _TestProbeInternal
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Boss-n
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": Boss
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Boss-n
22:53:57 // "actor/type": Boss
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Boss-d
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": Boss
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3380] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Boss-d
22:53:57 // "actor/type": Boss
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3390] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-r
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3390] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-r
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5
22:53:57 :53:55.3390] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-f
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3390] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-f
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3390] [ClusterSystem.swift:915] [warning] Assign identity
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-g
22:53:57 // "actor/id/uniqueNode": sact://DistributedReceptionistTests@127.0.0.1:9001
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3390] [ClusterSystem.swift:928] [trace] Actor ready
22:53:57 // metadata:
22:53:57 // "actor/id": /user/Worker-g
22:53:57 // "actor/type": Worker
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3400] [OperationLogDistributedReceptionist.swift:297][/system/receptionist] [warning] distributed receptionist: checkIn(Worker /user/Worker-r, with: DistributedReception.Key(id: worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3460] [OperationLogDistributedReceptionist.swift:318][/system/receptionist] [debug] Registered [/user/Worker-r] for key [AnyDistributedReceptionKey(worker/*)]
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "receptionist/guest": /user/Worker-r
22:53:57 // "receptionist/key": AnyDistributedReceptionKey(worker/*)
22:53:57 // "receptionist/opLog": [DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(1), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-r))]
22:53:57 // "receptionist/opLog/maxSeqNr": 1
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3460] [OperationLogDistributedReceptionist.swift:423][/system/receptionist] [debug] schedule delayed flush
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3470] [OperationLogDistributedReceptionist.swift:362][/system/receptionist] [trace] Subscribed async sequence to AnyDistributedReceptionKey(worker/*) actors
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "subscription/key": AnyDistributedReceptionKey(worker/*)
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.3470] [OperationLogDistributedReceptionist.swift:362][/system/receptionist] [trace] Subscribed async sequence to AnyDistributedReceptionKey(worker/*) actors
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "subscription/key": AnyDistributedReceptionKey(worker/*)
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6380] [OperationLogDistributedReceptionist.swift:433][/system/receptionist] [trace] Run delayed listing flush, key: AnyDistributedReceptionKey(worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6380] [ClusterSystem.swift:865] [trace] Resolve: /user/Worker-r
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6380] [ClusterSystem.swift:880] [info] Resolved as local instance
22:53:57 // metadata:
22:53:57 // "actor": Worker /user/Worker-r
22:53:57 // "actor/id": /user/Worker-r
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6380] [Cl
22:53:57 usterSystem.swift:865] [trace] Resolve: /user/Worker-r
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6380] [ClusterSystem.swift:880] [info] Resolved as local instance
22:53:57 // metadata:
22:53:57 // "actor": Worker /user/Worker-r
22:53:57 // "actor/id": /user/Worker-r
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6410] [OperationLogDistributedReceptionist.swift:371][/system/receptionist] [trace] Cancel subscription [ObjectIdentifier(0x00007f1ab0679cd0)]
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "subscription/key": AnyDistributedReceptionKey(worker/*)
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6410] [OperationLogDistributedReceptionist.swift:297][/system/receptionist] [warning] distributed receptionist: checkIn(Worker /user/Worker-f, with: DistributedReception.Key(id: worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6450] [OperationLogDistributedReceptionist.swift:318][/system/receptionist] [debug] Registered [/user/Worker-f] for key [AnyDistributedReceptionKey(worker/*)]
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "receptionist/guest": /user/Worker-f
22:53:57 // "receptionist/key": AnyDistributedReceptionKey(worker/*)
22:53:57 // "receptionist/opLog": [DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(1), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-r)), DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(2), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-f))]
22:53:57 // "receptionist/opLog/maxSeqNr": 2
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.6450] [OperationLogDistributedReceptionist.swift:423][/system/receptionist] [debug] schedule delayed flush
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.9380] [OperationLogDistributedReceptionist.swift:433][/system/receptionist] [trace] Run delayed listing flush, key: AnyDistributedReceptionKey(worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.9390] [ClusterSystem.swift:865] [trace] Resolve: /user/Worker-f
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:55.9390] [ClusterSystem.swift:880] [info] Resolved as local instance
22:53:57 // metadata:
22:53:57 // "actor": Worker /user/Worker-f
22:53:57 // "actor/id": /user/Worker-f
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.4420] [OperationLogDistributedReceptionist.swift:371][/system/receptionist] [trace] Cancel subscription [ObjectIdentifier(0x00007f1a4c396be0)]
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "subscription/key": AnyDistributedReceptionKey(worker/*)
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.4420] [OperationLogDistributedReceptionist.swift:297][/system/receptionist] [warning] distributed receptionist: checkIn(Worker /user/Worker-g, with: DistributedReception.Key(id: worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/recept
22:53:57 ionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.4440] [OperationLogDistributedReceptionist.swift:318][/system/receptionist] [debug] Registered [/user/Worker-g] for key [AnyDistributedReceptionKey(worker/*)]
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 // "receptionist/guest": /user/Worker-g
22:53:57 // "receptionist/key": AnyDistributedReceptionKey(worker/*)
22:53:57 // "receptionist/opLog": [DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(1), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-r)), DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(2), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-f)), DistributedActors.OpLog.SequencedOp(sequenceRange: DistributedActors.OpLog.SequencedOp.SequenceRange.single(3), op: DistributedActors.OpLogDistributedReceptionist.ReceptionistOp.register(key: AnyDistributedReceptionKey(worker/*), identity: /user/Worker-g))]
22:53:57 // "receptionist/opLog/maxSeqNr": 3
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.4440] [OperationLogDistributedReceptionist.swift:423][/system/receptionist] [debug] schedule delayed flush
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.5370] [OperationLogDistributedReceptionist.swift:676][/system/receptionist] [trace] Periodic ack tick
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.7410] [OperationLogDistributedReceptionist.swift:433][/system/receptionist] [trace] Run delayed listing flush, key: AnyDistributedReceptionKey(worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 Captured log [DistributedReceptionistTests][2022-07-08 5:53:56.7410] [OperationLogDistributedReceptionist.swift:441][/system/receptionist] [debug] No one is listening for key AnyDistributedReceptionKey(worker/*)
22:53:57 // metadata:
22:53:57 // "actor/id": /system/receptionist
22:53:57 ========================================================================================================================
22:53:57 [pprint][5:53:57.4770] [/code/Sources/DistributedActors/LifecycleMonitoring/LifecycleWatchContainer.swift:197][thread:139753714337536]: ENTER: receiveTerminated(_:)
22:53:57 Test Case 'DistributedReceptionistTests.test_receptionist_listing_shouldEndAfterTaskIsCancelled' failed (2.147 seconds)
```
Contributor guide
Research direction
Start by running DistributedReceptionistTests.test_receptionist_listing_shouldEndAfterTaskIsCancelled and compare its expected termination with the failure log. Read OperationLogDistributedReceptionist.swift and the referenced receptionist behavior paths; done means the test reliably observes /user/Greeter-y terminating within 5 seconds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- distributed-systems, testing
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100