<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style>
</head>
<body><div>Hi Anatoli,<br></div>
<div><br></div>
<div>no, what I am working is rather the opposite: the current implementation uses exclusive locks on mailboxes where it could do away with a shared read-only lock. That's because the  Cyrus DB API currently does not support shared locks.<br></div>
<div><br></div>
<div>We want to reduce latency of  requests, and that's what I am optimizing for. The work only touches the twoskip backend and is only for certain hot-paths in the code.<br></div>
<div><br></div>
<div>Cheers,<br></div>
<div>Robert</div>
<div><br></div>
<div><br></div>
<div>On Tue, Nov 27, 2018, at 1:50 PM, Anatoli wrote:<br></div>
<blockquote type="cite"><div><div style="font-size:10pt;font-family:Verdana, Arial;"><div>Hi All!<br></div>
<div> <br></div>
<div> Robert, is your work on read-only cyrusdb locks somehow related
        to the global lock feature
        (<a href="https://github.com/cyrusimap/cyrus-imapd/issues/1763">https://github.com/cyrusimap/cyrus-imapd/issues/1763</a>)?<br></div>
<div> <br></div>
<div> Regards,<br></div>
<div> Anatoli<br></div>
<div> <br></div>
</div>
<div style="border-right-width:initial;border-bottom-width:initial;border-left-width:initial;border-right-style:none;border-bottom-style:none;border-left-style:none;border-right-color:initial;border-bottom-color:initial;border-left-color:initial;border-image-source:initial;border-image-slice:initial;border-image-width:initial;border-image-outset:initial;border-image-repeat:initial;border-top-width:1pt;border-top-style:solid;border-top-color:rgb(181, 196, 223);padding-top:3pt;padding-right:0cm;padding-bottom:0cm;padding-left:0cm;font-size:10pt;font-family:Tahoma, sans-serif;"><div><b>From:</b> Robert Stepanek<br></div>
<div> <b>Sent:</b> Monday, November 26, 2018 18:40<br></div>
<div> <b>To:</b> Cyrus Devel<br></div>
<div> <b>Subject:</b> Notes - Nov 26 2018<br></div>
</div>
</div>
<div><span type="cite" style="display:block;word-break:break-all;margin-top:7px;margin-right:0px;margin-bottom:0px;margin-left:0px;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;line-height:0;"></span><br></div>
<div>Participants: Bron, Ellie, Ken, Partha, Robert<br></div>
<div><br></div>
<div>Ken:<br></div>
<div>- Short week for US.<br></div>
<div>- Mainly working on mailbox by id. Some Cassandane tests fail,
      more a matter of fixing them instead Cyrus code.<br></div>
<div>- Annotations.db needs to use ids instead of mailbox names.
      Same for conversations.db.<br></div>
<div>- RENAME should become fairly trivial, with reduced IO
      overhead.<br></div>
<div>- Before continuing with mailbox by id : need to update RFC
      drafts.<br></div>
<div>- Issue with building a SASL distribution on Fedora (due to
      Sphinx)<br></div>
<div><br></div>
<div>Bron:<br></div>
<div>- New Cyrus rolled out yesterday, along with changes to
      frontend and middleware.<br></div>
<div>- Fixed JMAP bugs that crept in with commits last week.<br></div>
<div><br></div>
<div>Ellie:<br></div>
<div>- IMAP labels patch updated after review, ready to merge.<br></div>
<div>- SASL: distcheck is flaky on Windows. Haven't looked into it,
      yet.<br></div>
<div><br></div>
<div>Robert:<br></div>
<div>- Short week as well, was ill.<br></div>
<div>- Fixed JMAP bugs and updated JSCalendar v8 implementation.<br></div>
<div>- JSCalendar RFC is in last call at IETF!<br></div>
<div>- JMAP Quota patch updated. JMAP part is trivial, but
      quotamodseq touches lots of critical areas: sync, mboxevent,
      counters. Bron volunteered to review.<br></div>
<div>- Now working on read-only cyrusdb locks: only for cyrusdb_open
      and twoskip.<br></div>
<div><br></div>
<div>Partha: <br></div>
<div>- Zeroskip is part of cyruslibs. Unit tests checked on
      cyrus.works.<br></div>
<div>- How to inspect zeroskip binary format for debugging? Either
      use zeroskip-inluded tooling to dump db, or use cvt_cyrusdb
      binary.<br></div>
</blockquote><div><br></div>
</body>
</html>