Skip to content

Releases: yoku0825/ytkit

ytkit 0.5.2

06 Sep 03:47
Compare
Choose a tag to compare

New script

  • yt-config: Ytkit::Config wrapper script for calling Ytkit::Config from bash-like script.
  • yt-repl-topology: Replication topology visualizer. --output allows "text", "json", "dot" and "member"

New feature

  • yt-admin: Add subcommand purge
  • yt-healthcheck: Add new option --fabric-no-candidate (default critical) #55
  • yt-healthcheck: Add --role variation "primary", "source", "replica", "read", "standby", "secondary", "cascade"
  • yt-alter-progress: Trim \n in displaying ALTER TABLE statement. #65

Miscellaneous

  • yt-binlog-groupby: Refactoring
  • CI test environments are now CentOS7 and CentOS8 Stream

Add yt-admin

12 May 07:07
Compare
Choose a tag to compare

yt-admin

  • yt-admin is a simple schema for managing mysqlds.
    • Schema for storing collected data (by Ytkit::Collect) into MySQL

Incompatible yt-binlog-groupby bug fixed

01 Mar 04:35
Compare
Choose a tag to compare

yt-binlog-groupby

  • yt-binlog-groupby without --sort missed some events to aggregate.
  • INCOMPATIBLE: yt-binlog-groupby is designed as "Countup each statements if binlog_format= STATEMENT" and "Countup each rows if binlog_format= ROW", but by miss-implementation, "Countup each statements even if binlog_format= ROWS".
    • as of 0.5.0, this bug is fixed but this is incompatible change from 0.4.2 and earlier,
    • #60

yt-healthcheck

  • Handle warning message in MySQL 5.5 vs --history-list-enable=1

xt Test Environment

  • 5.6.50 -> 5.6.51
  • 5.7.32 -> 5.7.33
  • 8.0.22 -> 8.0.23

yt-healthcheck supports --role=group_replication

10 Feb 03:15
Compare
Choose a tag to compare

yt-healthcheck

Improve Group Replication

  • Add --role=group_replication

    • Warn if replication_group_members are less than 3 (0, 1, or 2)
    • Critical if replication_group_members are less than 2 (0 or 1)
    • Warn if mysqld is in RECOVERING state in Group Replication.
    • --group_replication_lag_transactions_warning and --group_replication_lag_transactions_critical can specify thresholds "how many transactions in Group Replication applier queue"
    • --group_replication_lag_seconds_warning and --group_replication_lag_seconds_critical can specify thresholds "how many seconds delaying in Group Replication applier".
    • --group_replication_lag_enable=0 stops monitoring both of group_replication_lag_transactions and group_replication_lag_seconds
  • --role=auto can handle group_replication.

    • Group Replication + Async(Semisync) Replication is detect as role=master or role=slave .

Bug fixes

  • #52 has been fixed

0.4.1

25 Nov 05:59
Compare
Choose a tag to compare

yt-healthcheck

  • Add --history-list-enable, --history-list-warning, --history-list-critical for checking trx_rseg_history_len.
    • This uses information_schema.innodb_metrics, support only 5.6 and later.

yt-data-dumper (tool for ytkit-development)

  • Add --hashref-key for dumping selectall_hashref

Ytkit::Config

  • extract_for_usage moves into Ytkit::Config::Option

Ytkit::MySQLServer

  • Add warning for unsupported mysqld version ( for example, 5.5 vs SELECT FROM performance_schema.. )

Change output format (Incompatible)

03 Jul 04:40
Compare
Choose a tag to compare

Ytkit::IO

  • Change output format. This is incompatible change.
    • Now _infof adds "INFO: " prefix into each output line.
      • _notef adds "NOTE: ", _carpf adds "WARNING: ", _croakf adds "ERROR: "
    • These functions trim duplicated LF now.

yt-collect --query-latency-enable=1 now collects new columns (Incompatible change)

18 Jun 10:23
Compare
Choose a tag to compare

yt-collect

  • INCOMPATIBLE CHANGE : sum_rows_sorted and sum_created_tmp_tables are added in select_ps_digest
    • Use --old-compat for printing previous-compatible result.
  • Change select_ps_digest to not collect any "SET", "SHOW" statements.

Ytkit::Config

  • Now Ytkit::Config->new fails when same alias is specified by different options.
  • Add deprecated attribute

Ytkit::MySQLServer

  • Add new methods: exec_sql_with_croak, exec_sql_with_carp, use
  • Add warning-filter through $ENV{ytkit_ignore_warning}

Others

  • Remove $ENV{HARNESS_ACTIVE} handling for better testing.

Add new script yt-extract and yt-rename-database

28 May 06:23
Compare
Choose a tag to compare

yt-extract

  • Add new.
  • yt-extract transforms '*' to select_list such as SELECT * FROM d1.t1 to SELECT col1, col2, .. FROM d1.t1

yt-rename-database

  • Add new.
  • yt-rename-database emulates "RENAME DATABASE" using "RENAME TABLE" statement.

Support --debug

  • Now scripts accept --debug commonly.
  • Showing more information for debugging.
    • Implementation for #24, but not only yt-binlog-groupby.

Ytkit::Config

  • Support mandatory attribute

yt-healthcheck

  • Fix #40 , support MySQL 8.0.19 and later.

Refactor functions for putting in STDOUT

05 May 06:00
Compare
Choose a tag to compare

Ytkit.pm

  • Remove Ytkit::infof like functions. They has been moved to Ytkit::IO
  • Ytkit::ask_password moved to Ytkit::IO::_ask_password

Ytkit::Config

  • isa parameter now supports CODEref.

yt-print-information

  • Add performance_schema.threads to its output. ( yt-healthcheck --dump-detail is too)

Environment

  • Now ytkit runs tests in CentOS 7 and CentOS 8 (was CentOS 7 only)

Add sys.innodb_locks information into yt-healthcheck --dump-detail

01 Nov 09:07
Compare
Choose a tag to compare

yt-data-dumper

  • New utility for making test data(mostly only for me).
    • yt-data-dumper -e "SELECT NOW()" makes Data::Dumper::Dumper'ed data

yt-print-information

  • New utility for output MySQL's status.
    • This is separated from yt-healthcheck --dump-detail
    • Connect MySQL and output SHOW FULL PROCESSLIST, SHOW SLAVE STATUS, SHOW ENGINE INNODB STATUS and InnoDB Lock information.

yt-healthcheck

  • Add --uptime-* for checking SHOW GLOBAL STATUS LIKE 'uptime'
  • Separate --dump-detail 's function into Ytkit::MySQLServer
    • Now specifying --dump-detail dumps InnoDB Lock information too.
    • After that, dumping information will implement as yt-print-information 's implementation.

yt-wait-replication

  • Additional information like Current Seconds_Behind_Master = 891, Catching up 0.08/sec during 120 secs, Delay will solve in 10692.00 secs, Estimated at 11/01 01:51. when --verbose is given.

Ytkit::MySQLServer

  • Add method errno to access $dbh->{mysql_errno}
  • Add method _print_table for horizontal output and _print_vtable for vertical output.