OpenTenBase / OpenTenBase/TXSQL

Bug#38328780: mysqld fails to start with assertions

Open
#105 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
337
Forks
234
PR merge metrics
No merged PRs in 30d

Description

Background:

When server is started with --skip-grant-tables privileges are not
checked. Remote connections are not allowed. In Windows, server has to
be run with TCP/IP, --shared-memory, or --named-pipe should be enabled
to allow remote connections. Otherwise server is not started and exits
execution early with a message that it was started with wrong
parameters.

Problem:

During early return server did not end the replication tracker thread
and compress GTID thread before it started to shut down the plugins as
it is done during normal server shutdown. As a result of that InnoDB
shutdown failed because it detected open transactions from those
threads.

Commit
https://github.com/LiuPlusPlus/TXSQL/commit/e54550dbb6cb3570147a6ca5bb284e824d654e10

Upstream Reference
https://github.com/mysql/mysql-server/commit/5b35664ed0cdb531b9c8298b81727a527437c12b

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the early server exit with --skip-grant-tables and the invalid Windows connection parameters, then compare the shutdown sequence with upstream commit 5b35664ed0cdb531b9c8298b81727a527437c12b. Done means the replication tracker and compress GTID threads are ended before plugin shutdown and the InnoDB assertion no longer occurs.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, mysql
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.