-
-
Notifications
You must be signed in to change notification settings - Fork 119
fix: Send bcc-self messages to all own relays (#7656) #7706
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
This makes |
e32b229 to
d3bb93d
Compare
| transaction.execute( | ||
| "UPDATE config SET value=? WHERE keyname='configured_addr'", | ||
| " | ||
| UPDATE config SET value=? WHERE keyname='configured_addr' AND value!=?1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
AND value!=?1 is needed because SQLite counts all updates for which the WHERE condition is true, not just updates that really update rows
d3bb93d to
453ffe4
Compare
This fixes the bug when a new transport doesn't become primary on the 2nd device because INBOX from the new transport isn't fully fetched. Now the `Transports` sync message is received from the old transport, but as it has updated "From", it updates the primary transport correspondingly. NB: I/O for the new primary transport isn't immediately started however, this needs a separate fix.
This way, if the sync message updates transports, the check for a new primary transport is done against the updated transport list which is more reliable.
Otherwise it's not possible to write tests reliably because sync messages may be executed multiple times if they arrive from different transports. This should fix flaky `test_transport_synchronization`. Also always emit `TransportsModified` if the primary transport is changed by a sync message, even if it doesn't contain `SyncData::Transports`. Also don't decrease `add_timestamp` in `save_transport()` if nothing else changes, this doesn't make sense.
453ffe4 to
a845d1f
Compare
This fixes the bug when a new transport doesn't become primary on the 2nd device because INBOX from the new transport isn't fully fetched. Now the
Transportssync message is received from the old transport, but as it has updated "From", it updates the primary transport correspondingly. NB: I/O for the new primary transport isn't immediately started however, this needs a separate fix.There are additional commits, see commit messages. Particularly,
fix: Only emit TransportsModified if transports are really modifiedis needed to fix tests flakiness introduced by the subject change, so not moving it to a separate PR.Close #7656