meeting minutes, 2020-08-17

Ricardo Signes rjbs at
Mon Aug 17 09:21:11 EDT 2020

Fun fact about working at Fastmail: so many meetings are held in the US evening / AU morning that most agendas get two dates on them.  The Cyrus call, though, is held in the US morning / AU night, so we only have one date to mention.

Anyway, the Cyrus development call happened this morning, and here are some notes from it:


 * log format normalization
   * figure out what we care about
   * create a syslog wrapper which generates the format we want!
   * logline(level, function_name, category, subcategory, message)
   * auditlog: type foo=<var> bar=<var> …
   * create a macro to get things auto-added (fn name, line no)
   * agree what we want to do for new code
   * change it
   * tell everyone
   * [rjbs: I already sent an email asking for more info!]
 * deleting ACL when we delete folder: should we?
   * when user is recreated from pending delete in Fm, ACLs not recreated, including (anyone p) which allows plus addr delivery
   * ACL should be copied to the DELETED. folder
   * Doesn’t matter if we leave it on the tombstone as well, but we should always be bringing it back from the folder we undelete, not using the copy on the tombstone, because that folder is GONE.
 * lmtp fuzzy matching with plus addressing will cause delivery to parent (if ACL allows) if child doesn’t exist
   * is this a recent change? to be investigated
 * discuss upgrading mailboxes.db for UUID mailboxes - specifically multiple mailboxes with same UID
   * [discussion to be noted by Ken]
 * robert
   * bunch of work on making sure Email/changes exists on destroy of containing mailbox
     * involves change of semantics of deleted modseq counter
     * we now bump the email deleted modseq when we soft delete a mailbox
     * with this change: after doing Mailbox/set.delete, Email/changes will get cannotCalculateChanges
   * running AFL against MIME parser: so far, no results
     * will be looking into using AFL dictionaries to refine attack
     * DigitalOcean maybe not the best place to be running this; will look for other resource
   * looked into key-too-long errors that turned up recently; potential fix has been send upstream
   * next up: JSCalendar object updates; then updating role on Mailbox/set
   * rjbs to follow up internally about testing new JMAP Calendar branch on future
 * murch
   * sieve has been updated to match mailbox and snooze drafts
   * fixed weird bug in uppercasing in Sieve
 * bron
   * “synchronous replication is awesome!”
   * I’ve patched synclog; there was a thing called a synclog checklog, which picked up the log and ran it right there
   * that’s sync replication… but kind of bogus
   * now we create it in memory
   * next step is to create a backend connection with a 30s timeout and change the synclog reader to read from a buffer; if our buffer is nonempty, we hand that to synclog
   * when we get back an OK, we know it has been committed to the “blessed” replica
   * would like to get this under some real testing to figure out impact on performance and resource consumption
   * after that will be sync caching to improve performance of checking state of replica
     * append is 4 round trips; this will bring down to 3
     * drop another one by knowing about existing copies of msg
     * drop another one by embedding file (email) as part of the apply if file small enough; otherwise separate reserve upload
   * “user has moved” bug: we tried to efficiently combine requests, but didn’t deduplicate mailbox names, which led to aborts — once for every mailbox in a rename [rjbs: surely I got this a little wrong]
 * rjbs
   * we’ve changed how we aggregate errors
   * a question about how we get “deadlock avoided” in delivery from Sieve: rjbs to research
 * rsto
   * needs to update Cyrus docs for new query behavior
 * murch
   * dealing with conflict between include-in-fm PRs and usermeta-bis work

Ricardo Signes (rjbs)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Cyrus-devel mailing list