{"push_id":1426871269,"size":99,"distinct_size":0,"ref":"refs/heads/webscalesql-5.6.27.75","head":"01b9be5f8d9d6c46212e6cce647e1c64e5445610","before":"bea6a1358e36dff699efe9d5d5a0bc5ca058769a","commits":[{"sha":"561bc2b6ade8f3a040de4705bc68b142d9f4eb05","author":{"name":"Jay Edgar","email":"fcf433c1ae8fab93c4b455096a25a524a23b11ac@fb.com"},"message":"Fix flaky rocksdb.type_decimal test\n\nSummary: The rocksdb.type_decimal test is occasionally failing.  My assumption is that the statistics for the table are not deterministic, so adding a call to ANALYZE TABLE may resolve the problem.\n\nTest Plan: MTR\n\nReviewers: hermanlee4, santoshb, tianx\n\nReviewed By: tianx\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64425","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/561bc2b6ade8f3a040de4705bc68b142d9f4eb05"},{"sha":"b0904cce900baca5a092035edd24048f77687798","author":{"name":"Alex Yang","email":"2baff167e888c9d2f955ebd8225f161dae3ae6b9@fb.com"},"message":"Add sstfilewriter api improvements to fast secondary index creation\n\nSummary:\nThis diff utilizes the recently implemented SSTFileWriter API for fast secondary index creation.\n\nWriting to SST files directly requires the records of each secondary key to be written in order, to do this we need to leverage an external sort as the index is often larger than what can be held memory.\n\nWe iterate through the primary key entries, writing the offsets of each entry into a balanced binary tree (std::set, which uses red-black tree under the hood).  The tree itself uses a custom comparator which does a byte-wise comparison of records during insertion, which it uses to maintain the ordering of the tree.\n\nOnce we have reached the limit of what our sort buffer can hold in memory (RDB_MERGE_BUF_SIZE), we write to a tmp file out to disk in sorted order by iterating through the sorted \"offset tree\".  We continue to do this until all entries in the primary key have been traversed.  At this point we have several sorted chunks in a tmp_file on disk.\n\nWe now perform the merge portion of the external sort, merging each of the sorted chunks.  We do this by maintaining a heap  (std::priority_queue, again using the custom comparator) which points to the entries in each chunk as we read them off the disk.  Finally, as we pop off each entry from the top of the heap,  we insert it into the SSTFileWriter via the new API.\n\nFixes https://github.com/facebook/mysql-5.6/issues/277\n\nTest Plan:\nNew add_index_inplace_sstfilewriter test, modeled after @jkedgar 's bulk load test.\nShould also pass original add_index_inplace test.\n\nNew sys_var tests for rocksdb_merge_buf_size and rocksdb_combine_read_size\nChecksum tests were run manually, and passed.  Also added a checksum test inside rocksdb.add_index_inplace_sstfilewriter so we can checksum inside MTR.\n\n@yoshinorim has helped to benchmark and has seen good results. (2-3x better cpu idle/write)\nI have also benchmarked on my own and found similar results with cp_sql and cp_bin.\nLoad time has improved slightly (~15%) and is expected to improve further in production environment.\n\nThe accompanying data correctness tests when testing perf with cp_sql have all passed as well.  This is cp_sql using 12 dump and load threads.\n\nTesting with OLM will be done in the future as well.\n\nReviewers: yoshinorim, hermanlee4, jkedgar\n\nReviewed By: jkedgar\n\nSubscribers: gunnarku, vasilep, webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D61779","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/b0904cce900baca5a092035edd24048f77687798"},{"sha":"e804f86b203bb9384740e1fe92796dada6f865c9","author":{"name":"Jay Edgar","email":"fcf433c1ae8fab93c4b455096a25a524a23b11ac@fb.com"},"message":"Allow tests to be skipped if full regex support is missing\n\nSummary: GCC 4.8 did not support full regex but did include the functions.  If we try to run some of our tests that intentionally cause failures the system crashes when built with GCC 4.8.  Add the ability to detect what compiler and version the system was built with so we can skip tests that are known to fail without full regex support\n\nTest Plan: Run rocksdb.collation on the regular build and see that it passes.  Then run it on the --gcc48 build and see that it gets skipped.\n\nReviewers: hermanlee4, mung, gunnarku\n\nReviewed By: mung\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64515","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/e804f86b203bb9384740e1fe92796dada6f865c9"},{"sha":"5ebdaf7b84c6001ba7a9728e0d5b252bb751631d","author":{"name":"Jay Edgar","email":"fcf433c1ae8fab93c4b455096a25a524a23b11ac@fb.com"},"message":"Rename variables for skipping unique checks\n\nSummary:\nRename rocksdb_skip_unique_check to rocksdb_skip_unique_check_tables and rocksdb_debug_skip_unique_check to rocksdb_skip_unique_check\n\nSquash with: https://reviews.facebook.net/D62421\n\nTest Plan: MTR\n\nReviewers: hermanlee4, yoshinorim\n\nReviewed By: yoshinorim\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64545","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/5ebdaf7b84c6001ba7a9728e0d5b252bb751631d"},{"sha":"8959b43b017dbb41c1504368b47a570828aa0a86","author":{"name":"Anirban Rahut","email":"d590514c8ffc8787fe90dac2906ba1c9bb8f76dd@fb.com"},"message":"Guard connection_count with LOCK_thread_count instead of LOCK_connection_count\n\nSummary:\nBy using LOCK_thread_count to guard connection count,\nand by making the blocking of the thread atomic we reduce the\ndelay when a connection count goes down but the thread is still\nactive. This prevents threads piling up by admitting more connections.\n\nTest Plan:\nRan concurrent connection benchmarks. Running tests on\nsandcastle\n\nReviewers: ebergen, jkedgar\n\nReviewed By: jkedgar\n\nSubscribers: gunnarku, webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64245","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/8959b43b017dbb41c1504368b47a570828aa0a86"},{"sha":"86587affafe77ef555f7c3839839de44f0f203f3","author":{"name":"Tian Xia","email":"5a990d9998e10c9ce0b2e41ad3bd421152f32cf6@fb.com"},"message":"Allow filtering of show commands through admission control\n\nSummary:\nAdded SHOW command filter in admission control.\n\nSquash with https://reviews.facebook.net/D55185\nSquash with https://reviews.facebook.net/D48405\n\nTest Plan: mtr\n\nReviewers: santoshb, jkedgar\n\nReviewed By: jkedgar\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64629","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/86587affafe77ef555f7c3839839de44f0f203f3"},{"sha":"27f478bf43b1aa6b9df710e3007b40416aa98d82","author":{"name":"Jay Edgar","email":"fcf433c1ae8fab93c4b455096a25a524a23b11ac@fb.com"},"message":"Fix the rocksdb.rocksdb test that was failing on killing a connection\n\nSummary: The MDEV-4059 test where a query waiting on a timeout should be able to be killed before the timeout exceeded was occasionally failing.  It turned out that the kill was generating a condition broadcast, but if it snuck in too early the broadcast occurred before the lock was waiting on the signal and the result of the broadcast was lost.  A simple sleep of one second before killing the query should solve the problem\n\nTest Plan: MTR\n\nReviewers: hermanlee4, mung\n\nReviewed By: mung\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64743","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/27f478bf43b1aa6b9df710e3007b40416aa98d82"},{"sha":"2c7e597a653f5848cdc51e2984bfc7188292ed0b","author":{"name":"Manuel Ung","email":"c1d59253d15d34fa0648204ca4e012a3582e1f6e@fb.com"},"message":"Support loose index range scans for low cardinality column predicates\n\nSummary:\nSuppose we have the following query:\n\n  CREATE TABLE tbl (\n    a int,\n    b int,\n    c int,\n    primary key (a, b, c)\n  )\n\n  SELECT * FROM tbl WHERE a = 5 AND c > 100 ORDER BY a, b, c;\n\nThe current behaviour in MySQL is to do a range scan on the whole range where a = 5, and then filter using the c > 100 predicate. However, we can be smarter than this.\nInstead, we do a loose index scan by scanning over distinct (a, b), and then doing a subrange scan on that distinct prefix for c > 100.\n\nThe implementation is heavily inspired by the existing loose index scan done for GROUP BY and DISTINCT queries. A new TABLE_READ_PLAN and QUICK_SELECT_I that implements this strategy was added. We check before creating the TABLE_READ_PLAN whether this plan is applicable or not. After that, we execute the loose index scan in the QUICK_LOOSE_RANGE_SELECT::get_next method.\n\nTest Plan: mtr\n\nReviewers: tianx, spetrunia\n\nReviewed By: spetrunia\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D59877","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/2c7e597a653f5848cdc51e2984bfc7188292ed0b"},{"sha":"d187f4fe6c8f0e268c6522d24ddf2189a70799cf","author":{"name":"Herman Lee","email":"48903ee85e50a9da03d069a1b79825f7ceed2cad@fb.com"},"message":"Convert the large buffer allocations in alter table using make_shared\n\nSummary:\nFor fast index creation on alter table statements, two large buffers are\nallocated. The size off these buffers are 64MB. However, with\nmake_shared<>, an extra 16B is allocated along with the 64MB buffer,\nresulting in a very large allocation of an unaligned buffer.\n\nChanging the call to allocate the two buffers separate looks to have\nsmall improvements with the glibc allocator.\n\nSquash with https://reviews.facebook.net/D61779\n\nTest Plan: Run sysbench against the build.\n\nReviewers: alexyang, gunnarku\n\nReviewed By: gunnarku\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64767","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/d187f4fe6c8f0e268c6522d24ddf2189a70799cf"},{"sha":"4b5e4a778fc1b77a14cdc3df8b9bba30c820f6f3","author":{"name":"Tian Xia","email":"5a990d9998e10c9ce0b2e41ad3bd421152f32cf6@fb.com"},"message":"Fix flaky test json.operator_document_contains\n\nSummary:\nWhen running the test in parallel, generating the test file at run tie seems to\ninterfere with each other. Use the generated test file instead. Both\njson.operator_document_contains and json.operator_document_subdoc are not\ndynanmic test cases anyway.\n\nTest Plan: mtr\n\nReviewers: horuff, gunnarku\n\nReviewed By: gunnarku\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64797","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/4b5e4a778fc1b77a14cdc3df8b9bba30c820f6f3"},{"sha":"9c2bd49973aa9f5854fd376c5ba67211bdea97c9","author":{"name":"Manuel Ung","email":"c1d59253d15d34fa0648204ca4e012a3582e1f6e@fb.com"},"message":"Fix test flakiness for loose index scans\n\nSummary:\nThe rocksdb test for loose index scans is giving the sort union merge plan sometimes, presumably due to undeterministic cardinality estimation.\n\nFix this by disabling this plan.\n\nSquash with: https://reviews.facebook.net/D59877\n\nTest Plan: mtr\n\nReviewers: spetrunia, horuff, tianx\n\nReviewed By: tianx\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64833","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/9c2bd49973aa9f5854fd376c5ba67211bdea97c9"},{"sha":"d77735ab8e1dc358e4381a3405d16095bce715ac","author":{"name":"Jay Edgar","email":"fcf433c1ae8fab93c4b455096a25a524a23b11ac@fb.com"},"message":"Fix performance problem caused by incorrect usage of shared_ptr\n\nSummary:\nWe were passing around references to shared_ptr<Rdb_key_def> and sometimes using shared_ptr<const Rdb_key_def>.  Whenever we passed one into the other a new shared_ptr was temporarily constructed and then destructed.  This is the wrong way to do this.  We should only be passing the shared_ptr object when we want to take ownership.\n\nAs is often the case, fully understanding the issue leads to cleaner/simpler code.\n\nFixes Issue 330 (https://github.com/facebook/mysql-5.6/issues/330)\n\nTest Plan: MTR and ran through the code under the debugger to make sure that a shared_ptr was not being constructed/destructed as before\n\nReviewers: yoshinorim, spetrunia, MarkCallaghan, hermanlee4\n\nReviewed By: hermanlee4\n\nSubscribers: mung, vasilep, webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64605","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/d77735ab8e1dc358e4381a3405d16095bce715ac"},{"sha":"e342b28698bb306f5058fbe8cf870c4add50970d","author":{"name":"Tian Xia","email":"5a990d9998e10c9ce0b2e41ad3bd421152f32cf6@fb.com"},"message":"Another fix for flaky rpl.rpl_gtid_failover test\n\nSummary:\nPrevious fix by adding `order by` to `select @@global.gtid_executed` doesn't\nwork because the select only outputs one row (despite showing as two lines in\nthe result). Fixing the test again by splitting and sorting the replaced\nstring.\n\nSquash with https://reviews.facebook.net/D64419\n\nTest Plan: tested with both `sort` and `sort -r`. Result order changed.\n\nReviewers: jkedgar\n\nReviewed By: jkedgar\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64863","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/e342b28698bb306f5058fbe8cf870c4add50970d"},{"sha":"2306b6e503a1e35b843e28ed00e2c867feb2bae7","author":{"name":"Santosh Praneeth Banda","email":"af6ad48840e1484f271b6f218d2501bee63e3164@fb.com"},"message":"Handle print-gtids along with skip-gtids in mysqlbinlog\n\nSummary:\nThe skipped gtids are not added to encountered gtids. Fix this.\n\nsquash with https://reviews.facebook.net/D60093\n\nTest Plan: mysqlbinlog --skip-gtids --print-gtids\n\nReviewers: tianx, abhinav04sharma, dreif\n\nReviewed By: dreif\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64905","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/2306b6e503a1e35b843e28ed00e2c867feb2bae7"},{"sha":"564824a5b502b79b99ddce96c738b442731e6b8c","author":{"name":"Santosh Praneeth Banda","email":"af6ad48840e1484f271b6f218d2501bee63e3164@fb.com"},"message":"Display row information in processlist for rbr threads\n\nSummary: Set row_query using the fields unpacked from the row event. Use row_query in show processlist.\n\nTest Plan: mtr\n\nReviewers: tianx\n\nReviewed By: tianx\n\nSubscribers: webscalesql-eng, ebergen\n\nDifferential Revision: https://reviews.facebook.net/D61833","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/564824a5b502b79b99ddce96c738b442731e6b8c"},{"sha":"dc8fcbaa068dbf4da55e60e26f72b85839d95d92","author":{"name":"Reid Horuff","email":"104c3a03962fa1d7ccc2760a19d3ddec00de042f@gmail.com"},"message":"Expose lock info through ROCKSDB_LOCKS virtual table\n\nSummary: This diff creates a myrocks virtual table information_schema.rocksdb_lock_info for displaying rocksdb lock info.\n\nTest Plan: added test. tested with mysqlslap.\n\nReviewers: hermanlee4\n\nSubscribers: jkedgar, mung, webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64647","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/dc8fcbaa068dbf4da55e60e26f72b85839d95d92"},{"sha":"31c0f69a87d3db5c8b9d223daca92d70d877ed2c","author":{"name":"Yoshinori Matsunobu","email":"9f214ad14b256cf9bad3a522b0aed3773996c6ef@fb.com"},"message":"Optionally write MyRocks snapshot conflict errors into *.err log\n\nSummary:\nThis diff adds new system variable\nrocksdb_print_snapshot_conflict_queries so that users and queries\nthat caused snapshot conflict errors were written to *.err log.\n\nTest Plan: mtr\n\nReviewers: jkedgar, mung, hermanlee4\n\nReviewed By: hermanlee4\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D64983","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/31c0f69a87d3db5c8b9d223daca92d70d877ed2c"},{"sha":"77b361cc33e63c3e6481bc0a460b3ffb7a1d0248","author":{"name":"Santosh Praneeth Banda","email":"af6ad48840e1484f271b6f218d2501bee63e3164@fb.com"},"message":"Option to filter by table\n\nSummary:\nAdd the following options\n\n1. --table is used to list entries of every matching table. If --database is used along with this, mysqlbinlog will list entries of only one table.\n2. --rewrite-to-table is used to redirect the entries to a different table. This is achieved by changing the underlying event buffers.\n3. --skip-row-query-events is used to filter row query log events. This is useful when replaying binary logs since these type of events are just comments.\n\nThis feature is needed to filter binlog events by table name for triggerless online schema change.\n\nTest Plan: mysqlbinlog --table --rewrite-to-table\n\nReviewers: hermanlee4, tianx\n\nReviewed By: tianx\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D65013","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/77b361cc33e63c3e6481bc0a460b3ffb7a1d0248"},{"sha":"72cbdbc42aa8ce974b001470637e0922d1f9dbd1","author":{"name":"Teng Li","email":"97c4e908a5b4a2f940287298bbcb5787074e1342@fb.com"},"message":"Fix comments in mysqldump-checksum.test\n\nSummary:\nFixed comments\n\nSquash with: https://reviews.facebook.net/D61809\n\nTest Plan: mtr\n\nReviewers: santoshb\n\nReviewed By: santoshb\n\nSubscribers: webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D65109","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/72cbdbc42aa8ce974b001470637e0922d1f9dbd1"},{"sha":"a5904dbd83b65310de3834f388888b17c730dc1d","author":{"name":"Reid Horuff","email":"104c3a03962fa1d7ccc2760a19d3ddec00de042f@gmail.com"},"message":"Fix failing tests caused by ROCKSDB_LOCKS table\n\nSummary: squash with https://reviews.facebook.net/D64647\n\nTest Plan: record tests then re-run.\n\nReviewers: hermanlee4, mung, alexyang\n\nReviewed By: mung\n\nSubscribers: alexyang, mung, tian.xia, webscalesql-eng\n\nDifferential Revision: https://reviews.facebook.net/D65127","distinct":false,"url":"https://api.github.com/repos/lth/mysql-5.6/commits/a5904dbd83b65310de3834f388888b17c730dc1d"}]}
{"actor":{"display_login":"lth"}}