{"push_id":2348163522,"size":4,"distinct_size":4,"ref":"refs/heads/5.11.fb","head":"45328eca0833783421f7af724d352ce74e4e3cda","before":"20269d080ae406cd1e34e94031a71dc65916276e","commits":[{"sha":"935e834534a759cbd88c9a6167d085683b437bf9","author":{"name":"Jun Wu","email":"f54dff12a4c4c7b2fb4f5643d0189c4bc6bd2c91@fb.com"},"message":"crc32: suppress -Wimplicit-fallthrough warnings\n\nSummary:\nWorkaround a bunch of \"implicit-fallthrough\" compiler errors, like:\n\n```\nutil/crc32c.cc:533:7: error: this statement may fall through [-Werror=implicit-fallthrough=]\n   crc = _mm_crc32_u64(crc, *(uint64_t*)(buf + offset));\n       ^\nutil/crc32c.cc:1016:9: note: in expansion of macro ‘CRCsinglet’\n         CRCsinglet(crc0, next, -2 * 8);\n         ^~~~~~~~~~\nutil/crc32c.cc:1017:7: note: here\n       case 1:\n```\nCloses https://github.com/facebook/rocksdb/pull/3339\n\nReviewed By: sagar0\n\nDifferential Revision: D6874736\n\nPulled By: quark-zju\n\nfbshipit-source-id: eec9f3bc135e12fca336928d01711006d5c3cb16","distinct":true,"url":"https://api.github.com/repos/facebook/rocksdb/commits/935e834534a759cbd88c9a6167d085683b437bf9"},{"sha":"d33f155d8c99e23911c19cb4fd53bd6fde40fd02","author":{"name":"Siying Dong","email":"08df9db76b309dd2ff2f48dff8ee103d766ed3ff@fb.com"},"message":"Direct I/O writable file should do fsync in Close()\n\nSummary:\nWe don't do fsync() after truncate in direct I/O writeable file (in fact we don't do any fsync ever). This can cause metadata not persistent to disk after the file is generated. We call it instead.\nCloses https://github.com/facebook/rocksdb/pull/3500\n\nDifferential Revision: D6981482\n\nPulled By: siying\n\nfbshipit-source-id: 7e2b591b7e5dd1b96fc0775515b8b9e6092980ef","distinct":true,"url":"https://api.github.com/repos/facebook/rocksdb/commits/d33f155d8c99e23911c19cb4fd53bd6fde40fd02"},{"sha":"ee6f4fa6f544630a33a3f3dc713536103b245a9e","author":{"name":"Mike Kolupaev","email":"6376bfc718a20bfd521bac178a9c687edd3f390a@fb.com"},"message":"Fix deadlock in ColumnFamilyData::InstallSuperVersion()\n\nSummary:\nDeadlock: a memtable flush holds DB::mutex_ and calls ThreadLocalPtr::Scrape(), which locks ThreadLocalPtr mutex; meanwhile, a thread exit handler locks ThreadLocalPtr mutex and calls SuperVersionUnrefHandle, which tries to lock DB::mutex_.\n\nThis deadlock is hit all the time on our workload. It blocks our release.\n\nIn general, the problem is that ThreadLocalPtr takes an arbitrary callback and calls it while holding a lock on a global mutex. The same global mutex is (at least in some cases) locked by almost all ThreadLocalPtr methods, on any instance of ThreadLocalPtr. So, there'll be a deadlock if the callback tries to do anything to any instance of ThreadLocalPtr, or waits for another thread to do so.\n\nSo, probably the only safe way to use ThreadLocalPtr callbacks is to do only do simple and lock-free things in them.\n\nThis PR fixes the deadlock by making sure that local_sv_ never holds the last reference to a SuperVersion, and therefore SuperVersionUnrefHandle never has to do any nontrivial cleanup.\n\nI also searched for other uses of ThreadLocalPtr to see if they may have similar bugs. There's only one other use, in transaction_lock_mgr.cc, and it looks fine.\nCloses https://github.com/facebook/rocksdb/pull/3510\n\nReviewed By: sagar0\n\nDifferential Revision: D7005346\n\nPulled By: al13n321\n\nfbshipit-source-id: 37575591b84f07a891d6659e87e784660fde815f","distinct":true,"url":"https://api.github.com/repos/facebook/rocksdb/commits/ee6f4fa6f544630a33a3f3dc713536103b245a9e"},{"sha":"45328eca0833783421f7af724d352ce74e4e3cda","author":{"name":"Sagar Vemuri","email":"a88052e63a10b8355704b4b45d2cf40cba2ee75c@fb.com"},"message":"Add rocksdb.iterator.internal-key property\n\nSummary:\nAdded a new iterator property: `rocksdb.iterator.internal-key` to get the internal-key (converted to user key) at which the iterator stopped.\nCloses https://github.com/facebook/rocksdb/pull/3525\n\nDifferential Revision: D7033694\n\nPulled By: sagar0\n\nfbshipit-source-id: d51e6c00f5e9d766c6276ef79774b81c6c5216f8","distinct":true,"url":"https://api.github.com/repos/facebook/rocksdb/commits/45328eca0833783421f7af724d352ce74e4e3cda"}]}
{"actor":{"display_login":"miasantreble"}}