Skip to content

Tags: ConnectionMaster/mysql-5.6

Tags

fb-prod201803

Toggle fb-prod201803's commit message
New status variable gtid_committed to denote trxs committed to storag…

…e engine

Summary:
Gtid_executed can give a false sense of how many transactions are
committed because it's updated after they are written to the binlog. There are
scenarios where there might be a significant delay between write to binlog and
commit in the storage engine, like while using semi-sync protocol. This change
introduces another status variable gtid_committed that is updated after storage
engine commit.

Reviewed By: anirbanr-fb

Differential Revision: D10048517

fbshipit-source-id: fbde38d

fb-prod201802

Toggle fb-prod201802's commit message
Integrate deadlock timestamp to MySQL (facebook#855)

Summary:
Integrate deadlock timestamp info to MySQL based on RocksDB changes.
Pull Request resolved: facebook#855

Differential Revision: D8795674

Pulled By: chouxi

fbshipit-source-id: fd4dd75

fb-prod201801

Toggle fb-prod201801's commit message
Return state information for detached sessions

Summary:
The original implementation to return session information did not work for detached sessions.  Modify the detached sessions code to put the session state change information in the right location so that it gets returned correctly.

When using detached sessions there are two THDs - the one associated with the connection thread and the one associated with the detached session.  The prior diffs tried to handle this by having a session_tracker_ member variable that pointed into the connection thread's THD to update the session_tracker information correctly.  This was not comprehensive enough as some session tracking changes occurred at a much deeper level.  Modify the session tracking so that it always updates the copy in the detached session so that it will correctly get aggregated and returned to the client.

Once this was working I discovered that occasionally sessions that were detached because of a state change go reattached to the connection.  This is incorrect as there is no way to determine if the state has reverted back to before the state change.  I made additional changes to make sure that a session that has had state change never becomes the default session for a connection.  And once this change was made the existing tests had to be updated because some sessions (that originally had incorrectly become reattached) now showed up in the output results and needed to be specifically killed.

Reviewed By: anca-agape

Differential Revision: D7504732

fbshipit-source-id: e0de551

fb-prod201704

Toggle fb-prod201704's commit message
2017 Q4 release candidate

5.6.27-20160411.prod

Toggle 5.6.27-20160411.prod's commit message
Apply admission checks only once for multi query packet

Summary:
Initial version of admission control applied limits on each query statement in multi
query packet. The behavior is modified to the following:

A thread enters admission control when executing the first non-filtered command
in the multi query packet and exits after executing all the query statements in
the multi query packet.

This diff also fixes a bug where admission control limits are not initialized during
mysqld startup.

Squash with https://reviews.facebook.net/D48405

Test Plan: mtr

Reviewers: tianx, jkedgar

Reviewed By: jkedgar

Subscribers: davidgoode, webscalesql-eng, domas

Differential Revision: https://reviews.facebook.net/D56517

(cherry picked from commit bcbd77a)

5.6.27-20160403.prod

Toggle 5.6.27-20160403.prod's commit message
Decrement nesting level when object is closed

Summary:
If an object or array is parsed successfully, deprecent the nesting_lvl_ count

Squash with 090d736 [DocStore] Add limit on JSON object/array nesting levels

Test Plan:
run unit tests
     ✓ fbson/test:fbson_parser_test - FBSON_PARSER.nesting_level 0.000s (PASS)

Reviewers: pengt, tianx

Reviewed By: tianx

Subscribers: webscalesql-eng

Differential Revision: https://reviews.facebook.net/D56187

(cherry picked from commit cbc1670)

5.6.27-20160317.prod

Toggle 5.6.27-20160317.prod's commit message
Remove the usage of returns_nonnull to make sure that we'll compile w…

…ith gcc 4.8.x again

Summary:
The issue was exposed by facebook#207. The root cause is the fact that gcc 4.8.x doesn't implement a support for `returns_nonnull`. Take a look at https://gcc.gnu.org/onlinedocs/gcc-4.8.5/gcc/Function-Attributes.html vs. https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Function-Attributes.html.

For last couple of months we've been operating under the assumption that gcc 4.9.x is the lowest supported platform. We need to go back and internally either revisit this decision or be very explicit about our dependency requirements.

Test Plan:
Optimistic fix, needs to be really verified on the system running gcc 4.8.x.

```
mysqlbuild.sh
```

Reviewers: yoshinorim, MarkCallaghan

Reviewed By: MarkCallaghan

Subscribers: webscalesql-eng

Differential Revision: https://reviews.facebook.net/D55641

(cherry picked from commit 76887a2)

5.6.27-20160315.prod

Toggle 5.6.27-20160315.prod's commit message
Make 'SKIP', 'LOCKED', and 'NOWAIT' non-reserved key words

Summary:
When SELECT ... FOR UDPATE [SKIP LOCKED | NOWAIT] was introduced, 'SKIP', 'LOCKED', and 'NOWAIT' were made as reserved key words, which caused some existing SQL which access columns with name 'skip', 'locked', or 'nowait' being rejected with syntax errors. This diff fixes this issue by making these three key words non-reserved.

Squash with: 193896c  https://reviews.facebook.net/D53913

Test Plan: Added new tests in innodb.innodb_lock_skip_locked_nowait.test

Reviewers: tianx

Reviewed By: tianx

Subscribers: webscalesql-eng

Differential Revision: https://reviews.facebook.net/D55533

5.6.27-20160311.prod

Toggle 5.6.27-20160311.prod's commit message
New Valgrind Suppression for RocksDB

Summary:
Updated the valgrind suppression for RocksDB due to a function symbol name change.

Reproducible with mysqltest.sh --valgrind innodb_stress.innodb_stress_crash

Test Plan:
mysqltest.sh --valgrind innodb_stress.innodb_stress_crash
arc diff --big-test-queue

Reviewers: hermanlee4, mung, jkedgar

Reviewed By: jkedgar

Subscribers: webscalesql-eng

Differential Revision: https://reviews.facebook.net/D55389

(cherry picked from commit 39bdd23)

5.6.27-20160310.prod

Toggle 5.6.27-20160310.prod's commit message
Fix time granularity in dump thread

Summary:
Dump thread used second granularity to decide whether
heartbeat needs to be sent to slaves. With milli-second heartbeat
configuration on slaves, this caused dump thread to send heartbeat
events for every skipped event. This significantly increases slave
start time. Fix this by increasing the granularity.

Test Plan:
mtr
Set millisecond heartbeat and auto_position on slave.
Verify the time where SQL thread started progressing is not insanely high

Reviewers: pengt, hermanlee4, tianx

Reviewed By: tianx

Subscribers: webscalesql-eng, tengli

Differential Revision: https://reviews.facebook.net/D55281