TiDB

DB

TiDBのLONGTEXT型にはデフォルト設定では6MiBまでしか保存できないことを検証してみた

はじめにTiDBのLONGTEXT型の最大列長は 4,294,967,295 ですが、実はデフォルト設定では6MiB以上のデータはエラーで保存できなくなっています。今回はその回避方法について1つずつ検証しながら解説します。結論先に結論を書い...
DB

TiDBのLONGTEXTはデフォルトだと4GB格納できない

v8.5のTiDBで利用できるLONGTEXTは型は最大長では4GB格納できますが、txn-entry-size-limitという設定により6MiB以下のデータしか保存できないようになっています。LONGTEXT型LONGTEXT型はTEX...
DB

【図解】TiDBのAUTO_INCREMENTを体系的に理解する

はじめにTiDBはクラスタ化された分散ノードが協調動作することでスケーラビリティを実現しています。一方でスケーラビリティを重視してノードを分散させるようにしたことで、デフォルトのAUTO_INCREMENTの動作ではIDは1, 30001,...
MySQL

TiFlashをテーブルに設定したがTiFlashが使われない問題の解決 ~ANALYZE TABLEの実施~

TiFlashの利用方法TiDB Cloud DedicatedではTiFlashを簡単に利用することができます。利用方法は以下のとおりです。TiDB Cloud DedicatedのConsole画面からクラスターを変更し、TiFlash...
DB

「作って壊して直して学ぶNewSQL入門 / CH8 TiDBクラスターをつくって運用しよう」をLinuxでやってみる

はじめに「作って壊して直して学ぶNewSQL入門」というTiDBの書籍が出ており、その中で様々なハンズオンがあったので実際にやってみました。Localで実施できるものは皆やってそうだなーと思ったのでさくらのクラウドにTiDBをデプロイすると...
Golang

TiDBのissueを眺める「flaky test for IMPORT INTO」

どんなissueか?このissueはintegration test実行時に権限に関するテストがflakyであるというイシューです。run test err: sql:IMPORT INTO t FROM '/file.csv';: fai...
Golang

TiDBのコードリーディング「サーバの起動」

本記事ではTiDBのOSSのコードを読みつつ、メモをしていきます。サーバー起動まずTiDBではサーバ起動時にtidb-server/main.goが実行されます。ここでは、種々の初期化やサーバの実行、クリーンアップ処理などの処理が行われてい...
DB

TiDBに組み込み関数を追加実装する

本記事ではTiDBの開発者ガイドの「add a function」を参考に新しい関数を追加してみようと思います。 前提以下の条件で実施しています。OS: Ubuntu24Golang: go1.23.8 linux/amd64TiDB: T...
DB

TiDBのテストをIDE上で実行する

IDEの準備まずVsCodeをインストールし、TiDBのリポジトリのルートで以下のコマンドを実行し、おすすめの設定を反映します。mkdir -p .vscodeecho "{ \"go.testTags\": \"intest,deadlo...
DB

TiDBをソースコードからビルドしてターミナルから実行する

TiDBで利用されているバージョンのGoをインストールするまずTiDBで使われているGoのバージョンを以下のコマンドで取得して、そのバージョンのGoをインストールしてくださいとのことでした。curl -s -S -L | grep -Eo ...