stefan-mititelu-idt left a comment (kamailio/kamailio#4425)
@henningw I had double checked the code flow for this and still think method
name is not needed for the reasons below.
Short answer:
No, callid should be enough for the other methods too, because that key format
will always identify either INVITE or SUBSCRIBE transactions only, in the first
place.
Long answer:
1. When storing transaction or dialog data, topos_htable storage must build
both key and value and store them as key -> value
2. When storing transaction, topos_htable storage builds the key like this:
- for all transactions, use via-branch as key
- for "initial_method_branch" transactions in particular
(INVITE/SUBSCRIBE), one more metadata-like entry is stored in addition, which
used the "method|callid|tag|uuid" as key and via-branch as value. This is just
to have a reference to those INVITE/SUBSCRIBE transactions. But since both
methods are dialog-forming, **callid is different**, so no need to
differentiate them by method.
3. When loading transaction, the "nosql" storages builds the key to be looked
up like this, depending on the "mode" function param:
- if mode = 0 => looks up using via-branch directly and gets the
transaction values
- if mode = 1 => looks up using "method|callid|tag|uuid", gets via-branch
value. Then looks it up again using that via-branch as key, and gets the
transaction values. This is the case for that NOTIFY, and can only use its own
callid to figure out to which "initial_method_branch" it belongs (INVITE or
SUBSCRIBE). Generally speaking, is the same for any "METHOD_BYE | METHOD_INFO |
METHOD_PRACK | METHOD_UPDATE | METHOD_NOTIFY", no need for method.
The above is also applicable to topos_redis (since it was the dev start point
of topos_htable).
We will do some more testing for this, but just looking at the code seems like
no problem.
Thanks you,
Stefan
--
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/4425#issuecomment-3380245699
You are receiving this because you are subscribed to this thread.
Message ID: <kamailio/kamailio/pull/4425/[email protected]>_______________________________________________
Kamailio - Development Mailing List -- [email protected]
To unsubscribe send an email to [email protected]
Important: keep the mailing list in the recipients, do not reply only to the
sender!