Skip to content

PS,SD: Revocations from PS reply should also trigger cache invalidation #3057

@lukedirtwalker

Description

@lukedirtwalker

In the PS and SD we invalidate the NextQuery for all segments that have received a revocation. But currently we only do this for explicit revocations that come in as Revocation message, we should also do it for revocations that we receive in a SegReply from another PS. Note that we should invalidate NextQuery first before we insert the NextQuery that resulted from the reply.

Failing build: https://buildkite.com/scionproto/scionproto/builds/4088#78434307-3870-4691-994f-80f010f14dcb
Details in sd2-ff00_0_222.log:

2019-08-28 09:10:48.085799+0000 [DBUG] [TRACE] [Messenger] Received reply debug_id=f1e744f6 trace_id=79ab4eb5095dd90e req_id=6871871060105670068
2019-08-28 09:10:48.088536+0000 [DBUG] Segments inserted in DB debug_id=f1e744f6 trace_id=79ab4eb5095dd90e segments=[71d6be02bbce]
71d6be02bbce 2019-08-28 09:10:39+0000 1-ff00:0:110 3>453 2-ff00:0:210
....
# Revocation is received here:
2019-08-28 09:12:19.486261+0000 [DBUG] [TRACE] [Messenger] Received reply debug_id=7178a6c5 trace_id=e4317503ea96775 req_id=6871871060105670075
2019-08-28 09:12:19.494657+0000 [DBUG] Segments inserted in DB debug_id=7178a6c5 trace_id=e4317503ea96775 segments="[ce58416ac86f e0ea709801e4 15d7e932555f c421bc58f05a]"
....
2019-08-28 09:12:20.491558+0000 [DBUG] [PathRequestHandler] Received request debug_id=c3b99e6a trace_id=527c8f54662ef121 req="2-ff00:0:222 -> 1-ff00:0:110, maxPaths=1, flags={true false}"
2019-08-28 09:12:20.492696+0000 [DBUG] [TRACE] Delete NQ src=2-ff00:0:222 dst=2-0
2019-08-28 09:12:20.493958+0000 [DBUG] [TRACE] Request to process debug_id=c3b99e6a trace_id=527c8f54662ef121 req="{Up:{Src:2-ff00:0:222 Dst:2-0} Cores:[{Src:2-0 Dst:1-ff00:0:110}] Down:{Src:0-0 Dst:0-0}}" segs="{Up:[] Core:[] Down:[]}"
2019-08-28 09:12:20.494070+0000 [DBUG] [TRACE] After resolving debug_id=c3b99e6a trace_id=527c8f54662ef121 req="{Up:{Src:2-ff00:0:222 Dst:2-0} Cores:[{Src:2-0 Dst:1-ff00:0:110}] Down:{Src:0-0 Dst:0-0}}" segs="{Up:[] Core:[] Down:[]}"
2019-08-28 09:12:20.494133+0000 [DBUG] [TRACE] [Messenger] Sending request debug_id=c3b99e6a trace_id=527c8f54662ef121 req_type=SegRequest msg_id=6871871060105670086 request="2-ff00:0:222 -> 2-0, Flags: {Sibra:false CacheOnly:false}" peer="2-ff00:0:222,[PS A (0x0001)]:0 (UDP)"
2019-08-28 09:12:20.494177+0000 [DBUG] [TRACE] [Acceptance] overlay=[127.0.0.221]:30041
2019-08-28 09:12:20.494196+0000 [DBUG] [TRACE] Sending SVC resolution request debug_id=c3b99e6a trace_id=527c8f54662ef121 ia=2-ff00:0:222 svc="PS A (0x0001)" svcResFraction=0.400
2019-08-28 09:12:20.494974+0000 [DBUG] [TRACE] SVC resolution successful debug_id=c3b99e6a trace_id=527c8f54662ef121 reply="&{Transports:map[QUIC:[127.0.0.221]:30353 UDP:127.0.0.221:31046] ReturnPath:0xc000698280}"
2019-08-28 09:12:20.495006+0000 [DBUG] [TRACE] Request upgraded to QUIC debug_id=c3b99e6a trace_id=527c8f54662ef121 remote="2-ff00:0:222,[127.0.0.221]:30353 (UDP)"
2019-08-28 09:12:20.495027+0000 [DBUG] [TRACE] [Acceptance] overlay=<nil>
2019-08-28 09:12:20.504495+0000 [DBUG] [TRACE] [Messenger] Received reply debug_id=c3b99e6a trace_id=527c8f54662ef121 req_id=6871871060105670086
2019-08-28 09:12:20.510536+0000 [DBUG] Segments inserted in DB debug_id=c3b99e6a trace_id=527c8f54662ef121 segments="[f6aae4fa58af f83b8cbad673 68a13c60a724]"
2019-08-28 09:12:20.510899+0000 [DBUG] [TRACE] Request to process debug_id=c3b99e6a trace_id=527c8f54662ef121 req="{Up:{Src:2-ff00:0:222 Dst:2-0} Cores:[{Src:2-0 Dst:1-ff00:0:110}] Down:{Src:0-0 Dst:0-0}}" segs="{Up:[] Core:[] Down:[]}"
2019-08-28 09:12:20.512149+0000 [DBUG] [TRACE] After resolving debug_id=c3b99e6a trace_id=527c8f54662ef121 req="{Up:{Src:0-0 Dst:0-0} Cores:[] Down:{Src:0-0 Dst:0-0}}" segs="{Up:[f6aae4fa58af 2019-08-28 09:12:13+0000 2-ff00:0:210 451>7 2-ff00:0:211 4>301 2-ff00:0:222] Core:[] Down:[]}"
2019-08-28 09:12:20.512203+0000 [DBUG] [TRACE] Filtered paths with revocations debug_id=c3b99e6a trace_id=527c8f54662ef121 paths=0 nonrevoked=0
2019-08-28 09:12:20.512384+0000 [DBUG] Replied with paths debug_id=c3b99e6a trace_id=527c8f54662ef121 num_paths=1
2019-08-28 09:12:20.512395+0000 [DBUG] [TRACE] Full reply debug_id=c3b99e6a trace_id=527c8f54662ef121 paths=
>  ErrorCode=OK
>    Hops: [] Mtu: 1472 NextHop=[<nil>]:0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions