1. 30 May, 2020 2 commits
  2. 29 May, 2020 1 commit
  3. 28 May, 2020 1 commit
  4. 26 May, 2020 1 commit
  5. 21 May, 2020 1 commit
  6. 17 May, 2020 1 commit
  7. 14 May, 2020 1 commit
  8. 10 May, 2020 1 commit
  9. 09 May, 2020 1 commit
  10. 06 May, 2020 4 commits
  11. 17 Apr, 2020 1 commit
  12. 14 Apr, 2020 2 commits
  13. 08 Apr, 2020 1 commit
  14. 25 Mar, 2020 1 commit
  15. 21 Mar, 2020 2 commits
    • Igor Poboiko's avatar
      [contacts/ContactModifyJob] Avoid race condition · dfb1afc6
      Igor Poboiko authored
      Summary:
      This patch is similar to {D28178}. Although `uid` is populated, and we can
      freely dispatch both contact and photo modify requests in parallel, the
      following race condition still sometimes happens:
      
       1) Contact modify request dispatched
       2) Contact photo modify request dispatched
       3) Photo reply arrives
      
      At this point, `d->lastContact` is not yet populated, and we call
      `processNextContact()`, which repeats steps 1 and 2 for the very same contact.
      Which could happen again and again, if photo reply arrives first again.
      
      Instead, I suggest to fire photo modify request only after we receive reply
      for contact modify request, ensuring everything happens in the following order:
      
       1) Contact modify request dispatched
       2) Contact modify reply received
       3) Contact photo modify request dispatched
       4) Contact photo reply received
      
      Test Plan:
       1) Modify a contact via KAddressBook
       2) Check logs
       3) (without patch) Bunch of modify requests somtimes gets fired
       4) (with patch) Only one modify request gets fired
      
      Reviewers: dvratil
      
      Reviewed By: dvratil
      
      Subscribers: kde-pim
      
      Tags: #kde_pim
      
      Differential Revision: https://phabricator.kde.org/D28181
      dfb1afc6
    • Igor Poboiko's avatar
      [contacts] Fix ContactCreateJob with a photo · 7de9af3d
      Igor Poboiko authored
      Summary:
      When we run `ContactCreateJob`, the UID of a contact is not yet known.
      We can only add a photo only after we receive a reply from main create job.
      
      Also, since we also don't want the following race condition to trigger:
       1) Contact1 create request
       2) Contact1 reply, Photo1 change request, Contact2 create request
       3) Contact2 reply, Photo2 change request
       4) Photo1 reply (here both `currentContact` and `lastContact` is Contact2)
       5) Photo2 reply
      we only go for next contact after the previous has been fully procesed:
       1) Contact1 create request
       2) Contact1 reply, Photo1 change request
       3) Photo1 reply, Contact2 create request
       4) Contact2 reply, Photo2 change request
       5) Photo2 reply
      
      Test Plan:
      Without patch:
       1) Create a contact with photo inside KAddressBook
       2) Check Web UI: no photo is set, sometimes bunch of contacts get created (?)
      With patch:
       2) Observe a single contact with a proper photo being set
      
      Reviewers: dvratil
      
      Reviewed By: dvratil
      
      Subscribers: kde-pim
      
      Tags: #kde_pim
      
      Differential Revision: https://phabricator.kde.org/D28178
      7de9af3d
  16. 20 Mar, 2020 2 commits
  17. 15 Mar, 2020 2 commits
  18. 13 Mar, 2020 1 commit
  19. 12 Mar, 2020 1 commit
  20. 11 Mar, 2020 1 commit
  21. 05 Mar, 2020 1 commit
  22. 04 Mar, 2020 1 commit
  23. 26 Feb, 2020 1 commit
  24. 19 Feb, 2020 2 commits
  25. 11 Feb, 2020 1 commit
  26. 07 Feb, 2020 1 commit
  27. 01 Feb, 2020 2 commits
  28. 17 Jan, 2020 1 commit
  29. 16 Jan, 2020 1 commit
  30. 09 Jan, 2020 1 commit