Tree:
90fbd8b22b
1-10.5-mdev-34687-binlog-corruption-warning
10-7.selectivity
10.0
10.0-galera
10.1
10.10
10.10-MDEV-16440
10.10-MDEV-28632-old-master-fix
10.10-merge-28798
10.10-spider-sts-demo
10.11
10.11-MDEV-16232
10.11-MDEV-16232-remove-unlock_row
10.11-MDEV-17846
10.11-MDEV-19574
10.11-MDEV-19749-orig
10.11-MDEV-21923-35049
10.11-MDEV-29445-MDEV-31956
10.11-MDEV-30073-R1
10.11-MDEV-31517
10.11-MDEV-31772
10.11-MDEV-31887-Wrong-result-with-split-optimization
10.11-MDEV-33515-spinflag
10.11-MDEV-33515-spinlock
10.11-MDEV-33894
10.11-MDEV-34575
10.11-MDEV-35420
10.11-MDEV-35673
10.11-MDEV-35815-use-after-poison_in_get_hash_symbol
10.11-MDEV-36410-review-input
10.11-MDEV-36787
10.11-MDEV-37056
10.11-MDEV-37136
10.11-MDEV-37138
10.11-MDEV-37195-fix
10.11-MDEV-37901-Wrong-result-for-QUICK_GROUP_MIN_MAX_SELECT_WITH-TIES
10.11-MDEV-37901-variant2
10.11-MDEV-5816
10.11-MDEV-5816-1
10.11-MDEV-5816-2
10.11-MDEV-MDEV-36962
10.11-mdev-25039
10.11-mdev-31053-uuid-inet-size-not-allowed
10.11-mdev-35168-null-in-exists-clause
10.11-mdev-35739-linestring-intersection
10.11-mdev-35816-asan-print
10.11-mdev-35955-update-wrong-result
10.11-mdev-36389-indexed-text-column-wrong-result
10.11-mdev-37913
10.11-mdev9101
10.11-merge
10.11-merge-30430
10.11-monty
10.11-psergey-sel-before-fix1
10.11-psergey-sel-v1
10.11-ycp-demo
10.2
10.2-22179
10.2-MDEV-17603
10.2-MDEV-18838
10.2-MDEV-19129
10.2-MDEV-21039
10.2-MDEV-21910
10.2-MDEV-22110-dont-log-unmodified-pages
10.2-MDEV-23580
10.2-MDEV-24026
10.2-MDEV-24100
10.2-MDEV-24853
10.2-MDEV-24962-add
10.2-MDEV-24962-addendum
10.2-MDEV-24962-v5
10.2-MDEV-25114
10.2-MDEV-25768
10.2-MDEV-27355-rpl-ubsan
10.2-MDEV-28294-pre-exec
10.2-compatibility-build22257-opt-fixes
10.2-compatibility-debug
10.2-force_drop
10.2-spider-extra
10.2-sysprg-MDEV-21910
10.2-varun
10.2-vicentiu
10.2-wf
10.3
10.3-MDEV-11369
10.3-MDEV-20219
10.3-MDEV-21770
10.3-MDEV-22929-log_corrupted_pages
10.3-MDEV-23711-redo-log-overwrite
10.3-MDEV-24962
10.3-MDEV-28968-v2-galera
10.3-MENT-878
10.3-alter
10.3-fix-test-suite
10.3-varun
10.3-vicentiu
10.3-vicentiu-json-review
10.4
10.4-MDEV-14321
10.4-MDEV-14959
10.4-MDEV-17805
10.4-MDEV-20094
10.4-MDEV-22646
10.4-MDEV-22929-log_corrupted_pages
10.4-MDEV-23580
10.4-MDEV-23580-addendum
10.4-MDEV-23586-test-case
10.4-MDEV-23711-redo-log-overwrite
10.4-MDEV-24962
10.4-MDEV-29988-merge
10.4-MDEV-30073
10.4-MDEV-31005
10.4-SAMU-292
10.4-mdev-15562
10.4-mdev-21633
10.4-mdev22555
10.4-mdev30218-print-negative-gain
10.4-nikita-merge
10.4-opt_trace
10.4-sysprg-galera_3nodes
10.4-varun
10.4-vicentiu-feedback
10.4-vicentiu-histograms
10.4.20-midenok-samu-131
10.5
10.5-MDEV-11107
10.5-MDEV-13362
10.5-MDEV-15053
10.5-MDEV-15053-fixes
10.5-MDEV-17812
10.5-MDEV-18976-redolog-crc
10.5-MDEV-19165
10.5-MDEV-19229
10.5-MDEV-20153
10.5-MDEV-21452-old
10.5-MDEV-21951
10.5-MDEV-22023
10.5-MDEV-22554
10.5-MDEV-22922
10.5-MDEV-22929-log_corrupted_pages
10.5-MDEV-23580
10.5-MDEV-23711-redo-log-overwrite
10.5-MDEV-23766
10.5-MDEV-24962
10.5-MDEV-33927
10.5-MDEV-34266
10.5-MDEV-34372
10.5-MDEV-34433
10.5-MDEV-34938-wlad
10.5-MDEV-35299
10.5-MDEV-35694
10.5-MDEV-36017
10.5-circular-buffer
10.5-mdev-11588
10.5-mdev-18511
10.5-mdev-22104-psi-batch-assertion
10.5-mdev-23278
10.5-mdev-33616-safemalloc
10.5-mdev-34814
10.5-mdev-35583
10.5-mdev-35648
10.5-mdev-35847-wait-flag
10.5-mdev11563
10.5-mdev21784-reg1-vfuncs
10.5-mdev21829
10.5-mdev21829-unique-interface
10.5-mdev21955
10.5-mdev22011
10.5-mdev22119
10.5-mdev22303
10.5-mdev22509
10.5-mdev6915
10.5-mdev7317
10.5-mdev8306
10.5-mdev8306-2
10.5-mdev9750
10.5-merge-30430
10.5-nikita-MDEV-15990
10.5-olter-v3
10.5-olter-v4
10.5-order_by_limit
10.5-pclmul
10.5-s3-minio
10.5-varun
10.5-varun2
10.5-windows-afunix
10.5-wlad-tp-fibers
10.5.9-recoveryfix
10.56-MDEV-30986
10.6
10.6-4991
10.6-MDEV-16437
10.6-MDEV-16708-1
10.6-MDEV-19574
10.6-MDEV-21130-M4-notes
10.6-MDEV-22929-log_corrupted_pages
10.6-MDEV-23580
10.6-MDEV-23711-redo-log-overwrite
10.6-MDEV-24035
10.6-MDEV-24071
10.6-MDEV-24962
10.6-MDEV-25607-mergefix
10.6-MDEV-25899
10.6-MDEV-28607-rr-backup
10.6-MDEV-28621-no-elimination
10.6-MDEV-28968-galera
10.6-MDEV-30363
10.6-MDEV-30536-galera
10.6-MDEV-31949-gtid_prepare_fail_paths
10.6-MDEV-31949-ver0_andrei
10.6-MDEV-31949-xlle
10.6-MDEV-32175
10.6-MDEV-32242
10.6-MDEV-33796-deadlock_in_subqueries_join
10.6-MDEV-33966
10.6-MDEV-34057
10.6-MDEV-34431
10.6-MDEV-34489
10.6-MDEV-34608
10.6-MDEV-34670
10.6-MDEV-34822-galera
10.6-MDEV-34877
10.6-MDEV-35049
10.6-MDEV-35171
10.6-MDEV-35813
10.6-MDEV-36180
10.6-MDEV-36281
10.6-MDEV-36290
10.6-MDEV-36290-bnestere-additions
10.6-MDEV-37771
10.6-MDEV-38140
10.6-clang-cl
10.6-elenst
10.6-limit
10.6-mdev-10825
10.6-mdev-20250-hf
10.6-mdev-33816
10.6-mdev-35587
10.6-mdev-35765-st_overlaps-wrong-result
10.6-mdev21130-refactor
10.6-mdev21829
10.6-mdev22360
10.6-mdev7317
10.6-mdev8306
10.6-merge
10.6-order_by_limit
10.6-selectivity
10.6-semisync-test
10.6-timestamp
10.6-varun
10.6-vatu
10.6-vlesin-cta
10.6-wlad-purge
10.6.5-MDEV-36472-revert-MDEV-26356
10.7
10.7-mdev-29514
10.7-selectivity
10.7-selectivity-old
10.7-vicentiu-selectivity
10.7-wlad-async-log-io
10.8
10.8-selectivity
10.9
10.9-MDEV-16232
10.9-MDEV-5816
10.9-merge-30430
10.9-wlad
11.0
11.0-MDEV-26603
11.0-MDEV-27293
11.0-MDEV-30889
11.0-MDEV-34156
11.1
11.2
11.2-mdev-35046
11.2-nikita-optimizations
11.3
11.3-MDEV-21322-bnestere
11.3-MDEV-33465-mergefix
11.4
11.4-MDEV-21510-optimizer_trace_should_show_the_index_name
11.4-MDEV-31740
11.4-MDEV-33465-mergefix
11.4-MDEV-34431
11.4-MDEV-35398
11.4-MDEV-35905
11.4-MDEV-36096-partial_join_cost_assertion_failure
11.4-MDEV-36301
11.4-MDEV-36304
11.4-MDEV-36463-rename-expression_cache-to-subquery_cache
11.4-MDEV-36761-all-nulls
11.4-MDEV-36761-all-nulls-v2
11.4-MDEV-36861
11.4-MDEV-37244-spincontrol
11.4-MDEV-37412
11.4-MDEV-37723
11.4-MDEV-37843
11.4-MDEV-37907-new-mode
11.4-MDEV-38390
11.4-MDEV-new-mode-v2
11.4-bar
11.4-compatibility-new
11.4-macos-test-exclusion-mechanism
11.4-mdev-32777
11.4-mdev-33652
11.4-mdev-36389-indexed-text-column-wrong-result
11.4-mdev-37771-pseudo-slave
11.4-midenok-mysqltest
11.4-wlad
11.4-wlad-rebase
11.4-wlad-winarm64-ci
11.5
11.5-MDEV-33924
11.5-bar-MDEV-33281
11.6
11.6-MDEV-21322
11.6-MDEV-34179
11.6-MDEV-34551
11.7
11.7-MDEV-33756
11.7-mdev-35126-gis-wrong-result
11.7-mdev-35126-hf
11.8
11.8-MDEV-19574
11.8-MDEV-28730
11.8-MDEV-34703-followup
11.8-MDEV-35155
11.8-MDEV-37784
11.8-MDEV-37874
11.8-MDEV-37875
11.8-mdev-35510-asan-bootstrap-crash
11.8-mdev-35739-linestring-intersection
11.8-mdev-35848
11.8-mdev-36389-indexed-text-column-wrong-result
11.8-mdev-37029-vcol-row-in
11.8-monty-MDEV-25292
11.8-sn
11.8-sn-av
11.8-sn-av2
11.8-wsrep-schema
12.0
12.0-MDEV-22250
12.0-mdev-36125-index-merge-hint-cleaner
12.0-nikita-global-tmp
12.1
12.1-MDEV-30645
12.1-MDEV-30645-1
12.1-MDEV-35617
12.1-MDEV-36483-dump-ddls-of-tables-views
12.1-MDEV-36511-dump-basic-statistics
12.1-MDEV-36511-dump-basic-statistics-review-input
12.1-MDEV-36511-review-input
12.1-MDEV-37207-dump-ddls-of-tables-for-multi-delete-doesnot-work
12.1-MDEV-37207-multi-delete-v2
12.2
12.2-MDEV-36523-load-basic-stats-back
12.2-MDEV-36523-load-basic-stats-back-review-input
12.2-MDEV-36523-load-basic-stats-back-review-input-2
12.2-MDEV-37789-mdev-35046
12.2-MDEV-37936-v2
12.2-MDEV-38258
12.2-MDEV-38280
12.2-mdev-36813-full-outer-join
12.2-mdev-37260-milestones-one-two-review-input
12.2-mdev-37260-qb-implict-names
12.3-MDEV-36761-new-mode
12.3-MDEV-37354
12.3-MDEV-37932-full-outer-join-syntax
12.3-MDEV-37933-outer-to-left-right-or-inner
12.3-MDEV-37995-name-resolution
12.3-MDEV-38045-impl-qb-name
12.3-MDEV-38045-qb-tidb
12.3-MDEV-38136-table-elimination
12.3-MDEV-38177-allowed-join-orders
12.3-mdev-38120-create-sql_json_lib-file
5.5
5.5-galera
DebuggingStuff
FUNDING_yml
MDEV-24176/10.3_old
MDEV-24298
MDEV-24676_cpp
MDEV-25674.ulong
MDEV-28302
MDEV-28926-query-optimizer-json
MDEV-29770/rm_table_variation
MDEV-31740
MDEV-32067
MDEV-32294-Work_In_Progress
MDEV-32551-bnestere
MDEV-34431
MDEV-35519
MDEV-35665
MDEV-35879
MDEV-36089-rowid-flt-v2
MDEV-36234-wlad
MDEV-36301
MDEV-36733-minimal
MDEV-36812
MDEV-36885
MDEV-37115
MDEV-37146
MDEV-37146.bak
MDEV-37316
MDEV-37530
MDEV-37530.bak
MDEV-37566
MDEV-37949
MDEV-38029
MDEV-4698
MDEV-742-xa_repl
a_simple_question
abychko-10.5-MDEV-26265
atomic
bb-10.10-MDEV-16329
bb-10.10-MDEV-16440
bb-10.10-MDEV-16440-test
bb-10.10-MDEV-23287
bb-10.10-MDEV-27902
bb-10.10-MDEV-28522
bb-10.10-MDEV-28542
bb-10.10-MDEV-28564
bb-10.10-MDEV-28632
bb-10.10-MDEV-28632-review
bb-10.10-MDEV-28656-galera
bb-10.10-MDEV-28771
bb-10.10-MDEV-28817
bb-10.10-MDEV-28869
bb-10.10-MDEV-28881
bb-10.10-MDEV-28883
bb-10.10-MDEV-28930
bb-10.10-MDEV-29021
bb-10.10-MDEV-29181
bb-10.10-MDEV-29947
bb-10.10-MDEV-29989
bb-10.10-MDEV-31173-galera
bb-10.10-MDEV-31757
bb-10.10-MDEV-32453
bb-10.10-MDEV-32726
bb-10.10-all-builders
bb-10.10-andrei
bb-10.10-anel-rpl_fix_assertion
bb-10.10-bar-uca
bb-10.10-buildpass
bb-10.10-columnstore
bb-10.10-danielblack-uca-dump-in-deb
bb-10.10-ddl-nikita
bb-10.10-elenst
bb-10.10-igor
bb-10.10-jan-test
bb-10.10-jan-test2
bb-10.10-marko
bb-10.10-mdev-27575
bb-10.10-mdev-27912
bb-10.10-mdev-28739
bb-10.10-mdev-28883
bb-10.10-mdev-29447
bb-10.10-mdev-29447-31338
bb-10.10-mdev-29502
bb-10.10-mdev-31117
bb-10.10-mdev-31117-merge
bb-10.10-mdev-31400
bb-10.10-mdev-31421
bb-10.10-mdev-31524
bb-10.10-mdev-31787
bb-10.10-mdev-31936
bb-10.10-mdev-31996
bb-10.10-mdev-32046
bb-10.10-mdev-32157
bb-10.10-mdev-32515-bootstrap
bb-10.10-mdev-32559
bb-10.10-mdev-32559-failure-demo
bb-10.10-mdev-32753
bb-10.10-mdev-7487
bb-10.10-mdev28929-v4
bb-10.10-midenok
bb-10.10-midenok-MDEV-20865
bb-10.10-midenok-MDEV-27180
bb-10.10-monty
bb-10.10-nikita
bb-10.10-release-fixssl
bb-10.10-release-rucha
bb-10.10-release-spider-fix
bb-10.10-release-ssl
bb-10.10-serg
bb-10.10-spetrunia
bb-10.10-spetrunia2
bb-10.10-spetrunia3
bb-10.10-ycp
bb-10.10-ycp-mdev-32485
bb-10.10-ycp-spider
bb-10.11-MDEV-16232
bb-10.11-MDEV-20586
bb-10.11-MDEV-24670-memory-pressure
bb-10.11-MDEV-26715
bb-10.11-MDEV-27871
bb-10.11-MDEV-27871-MDEV-31933
bb-10.11-MDEV-28522
bb-10.11-MDEV-28526
bb-10.11-MDEV-28602-wrong-result-with-outer-join-merged-derived-table-and-view
bb-10.11-MDEV-28883
bb-10.11-MDEV-28883-MDEV-29390-tests
bb-10.11-MDEV-29104
bb-10.11-MDEV-29360
bb-10.11-MDEV-29445-ahi-35049
bb-10.11-MDEV-29624
bb-10.11-MDEV-29638
bb-10.11-MDEV-29638-variant2
bb-10.11-MDEV-29638-variant3
bb-10.11-MDEV-29971
bb-10.11-MDEV-30073-8.2
bb-10.11-MDEV-30073-MDEV-32294
bb-10.11-MDEV-30136
bb-10.11-MDEV-30260-mergefix
bb-10.11-MDEV-30406
bb-10.11-MDEV-30411-time-side-by-size
bb-10.11-MDEV-30629
bb-10.11-MDEV-30822-galera
bb-10.11-MDEV-31887-Wrong-result-with-split-optimization
bb-10.11-MDEV-32898-pkgtest
bb-10.11-MDEV-33189
bb-10.11-MDEV-33480
bb-10.11-MDEV-33551-mergefix
bb-10.11-MDEV-33672-mergefix
bb-10.11-MDEV-33799-mergefix
bb-10.11-MDEV-33921-mergefix
bb-10.11-MDEV-33967-handersocket-binlog-pkgtest
bb-10.11-MDEV-34081
bb-10.11-MDEV-34191-systemd-disable-pkgtest
bb-10.11-MDEV-34348-merge-fix
bb-10.11-MDEV-34899
bb-10.11-MDEV-35049
bb-10.11-MDEV-35049-rebase
bb-10.11-MDEV-35072
bb-10.11-MDEV-35673
bb-10.11-MDEV-36319
bb-10.11-MDEV-36592
bb-10.11-MDEV-36765
bb-10.11-MDEV-37157
bb-10.11-MDEV-37541
bb-10.11-MDEV-37680-danblack-pkgtest
bb-10.11-MDEV-37710
bb-10.11-MDEV-38159-pkgtest
bb-10.11-MDEV-38212
bb-10.11-MDEV-5816
bb-10.11-MDEV-7487
bb-10.11-MDEV-7487-MDEV-29390-tests
bb-10.11-MDEV-7487-rebased
bb-10.11-MDEV-7487-rebased-against-11.0
bb-10.11-MDEV-7487-rebased-against-11.0-MDEV-29390-test
bb-10.11-MDEV-7487-rebased-against-11.0-MDEV-29390-test-2
bb-10.11-all-builders
bb-10.11-andrei
bb-10.11-appveyor-fix
bb-10.11-bar
bb-10.11-bar-MDEV-28767
bb-10.11-bar-MDEV-33392
bb-10.11-bar-MDEV-35427
bb-10.11-bar-MDEV-35468
bb-10.11-bar-MDEV-35538
bb-10.11-bar-MDEV-MDEV-35427
bb-10.11-bar-ts-with-tz
bb-10.11-bumpversion
bb-10.11-danblack-MDEV-35904-pkgtest
bb-10.11-danielblack-MDEV-24377-pr2009
bb-10.11-danielblack-MDEV-30205-usr-share-mariadb
bb-10.11-elenst
bb-10.11-fix-rocksdb
bb-10.11-fix-sql-command-flags
bb-10.11-georg
bb-10.11-hashicorp-fixes
bb-10.11-igor
bb-10.11-julius
bb-10.11-julius-galera
bb-10.11-knielsen
bb-10.11-libfmt
bb-10.11-lock-wait-galera
bb-10.11-mdev-22168-hf
bb-10.11-mdev-22979
bb-10.11-mdev-26137
bb-10.11-mdev-26178
bb-10.11-mdev-26247
bb-10.11-mdev-27260
bb-10.11-mdev-27419
bb-10.11-mdev-27419-demo
bb-10.11-mdev-27438-debug
bb-10.11-mdev-27575
bb-10.11-mdev-27912
bb-10.11-mdev-28739
bb-10.11-mdev-29447-31338
bb-10.11-mdev-29502
bb-10.11-mdev-29535
bb-10.11-mdev-29800-hf
bb-10.11-mdev-31117
bb-10.11-mdev-31400
bb-10.11-mdev-31421
bb-10.11-mdev-31516
bb-10.11-mdev-31524
bb-10.11-mdev-31721
bb-10.11-mdev-31787
bb-10.11-mdev-31788
bb-10.11-mdev-31850
bb-10.11-mdev-31996
bb-10.11-mdev-32157
bb-10.11-mdev-32238
bb-10.11-mdev-32524
bb-10.11-mdev-32559
bb-10.11-mdev-32804
bb-10.11-mdev-32986
bb-10.11-mdev-33539
bb-10.11-mdev-34064-ycp-demo
bb-10.11-mdev-34421
bb-10.11-mdev-35249-revert
bb-10.11-mdev-35330
bb-10.11-mdev-35562
bb-10.11-mdev-35622
bb-10.11-mdev-35807
bb-10.11-mdev-35856
bb-10.11-mdev-36230
bb-10.11-mdev-36325
bb-10.11-mdev-37252
bb-10.11-mdev-37568
bb-10.11-mdev-37682
bb-10.11-mdev-37972
bb-10.11-mdev16253-OLD-update-rocksdb-6.29fb
bb-10.11-mdev16253-update-rocksdb-6.29fb
bb-10.11-mdev31577
bb-10.11-mdev31577-v2
bb-10.11-merge
bb-10.11-midenok
bb-10.11-midenok-MDEV-20865
bb-10.11-midenok-MDEV-25292
bb-10.11-midenok-MDEV-25292-fixes
bb-10.11-midenok-MDEV-27180
bb-10.11-midenok-MDEV-37325
bb-10.11-midenok-MDEV-4991
bb-10.11-midenok2
bb-10.11-midenok3
bb-10.11-monty
bb-10.11-monty-merge
bb-10.11-monty2
bb-10.11-monty3
bb-10.11-new-innodb-defaults
bb-10.11-new-innodb-julius
bb-10.11-next-serg
bb-10.11-nikita
bb-10.11-no-capabilities-pkgtest
bb-10.11-oalter
bb-10.11-partexp-hf
bb-10.11-release
bb-10.11-release-spider-fixup
bb-10.11-rucha
bb-10.11-selectivity
bb-10.11-selectivity-rebase-nov
bb-10.11-selectivity-v1
bb-10.11-serg
bb-10.11-spetrunia
bb-10.11-spetrunia-tmp
bb-10.11-thiru
bb-10.11-tmp
bb-10.11-vicentiu-cleanups
bb-10.11-vicentiu-osx
bb-10.11-wlad
bb-10.11-wlad-MDEV-26714
bb-10.11-wlad-MDEV-29251
bb-10.11-wlad-aws-sdk
bb-10.11-ycp
bb-10.11-ycp-spider
bb-10.11.11-mdev16253-rocksdb-6.29fb
bb-10.11.7-todo-4858
bb-10.12-MDEV-28891
bb-10.12-MDEV-29269
bb-10.1_MDEV-14014
bb-10.2-14472
bb-10.2-25709
bb-10.2-27snc1
bb-10.2-KILL-as-TOI-galera
bb-10.2-MDEV-13569
bb-10.2-MDEV-14183-aria_pack
bb-10.2-MDEV-14938
bb-10.2-MDEV-16128
bb-10.2-MDEV-16664
bb-10.2-MDEV-17062
bb-10.2-MDEV-17323
bb-10.2-MDEV-17943
bb-10.2-MDEV-181777
bb-10.2-MDEV-18215-unknown-backup-options
bb-10.2-MDEV-18464
bb-10.2-MDEV-18546-nikita
bb-10.2-MDEV-18565
bb-10.2-MDEV-18838
bb-10.2-MDEV-18874
bb-10.2-MDEV-19129
bb-10.2-MDEV-19344
bb-10.2-MDEV-19741
bb-10.2-MDEV-19746
bb-10.2-MDEV-19950
bb-10.2-MDEV-20194-CHECK-row-size
bb-10.2-MDEV-20516
bb-10.2-MDEV-20787
bb-10.2-MDEV-20928
bb-10.2-MDEV-21039
bb-10.2-MDEV-21050-isnan-isinf-isfinite-ported
bb-10.2-MDEV-21335
bb-10.2-MDEV-21601
bb-10.2-MDEV-21618
bb-10.2-MDEV-21681-page-LSN-doesnt-match-cb
bb-10.2-MDEV-21758
bb-10.2-MDEV-21770
bb-10.2-MDEV-21910
bb-10.2-MDEV-21951
bb-10.2-MDEV-22021
bb-10.2-MDEV-22110-dont-log-unmodified-pages
bb-10.2-MDEV-22398-innodb_xa_rollback-fails
bb-10.2-MDEV-22543
bb-10.2-MDEV-22554-ib_error_flag
bb-10.2-MDEV-22726-aria-non-trans-log
bb-10.2-MDEV-22810-open_files_limit
bb-10.2-MDEV-22929-log_corrupted_pages
bb-10.2-MDEV-23101
bb-10.2-MDEV-23483
bb-10.2-MDEV-23484
bb-10.2-MDEV-23500
bb-10.2-MDEV-23536
bb-10.2-MDEV-23564
bb-10.2-MDEV-23600
bb-10.2-MDEV-23711-redo-log-overwrite
bb-10.2-MDEV-23746
bb-10.2-MDEV-23851
bb-10.2-MDEV-23857
bb-10.2-MDEV-23888
bb-10.2-MDEV-23925
bb-10.2-MDEV-23926
bb-10.2-MDEV-24169
bb-10.2-MDEV-24240
bb-10.2-MDEV-24443
bb-10.2-MDEV-24704
bb-10.2-MDEV-24719-last-skipped-lsn-check
bb-10.2-MDEV-24837
bb-10.2-MDEV-24853
bb-10.2-MDEV-24903
bb-10.2-MDEV-24978
bb-10.2-MDEV-25114
bb-10.2-MDEV-25114-galera-v2
bb-10.2-MDEV-25114-planE-galera
bb-10.2-MDEV-25302
bb-10.2-MDEV-25328
bb-10.2-MDEV-25328-plus-spaces
bb-10.2-MDEV-25328-plus-tests
bb-10.2-MDEV-25328-v2
bb-10.2-MDEV-25328-v3
bb-10.2-MDEV-25328-v4
bb-10.2-MDEV-25472
bb-10.2-MDEV-25607
bb-10.2-MDEV-25609
bb-10.2-MDEV-25768
bb-10.2-MDEV-25818
bb-10.2-MDEV-25994
bb-10.2-MDEV-26015
bb-10.2-MDEV-26064-galera
bb-10.2-MDEV-26127
bb-10.2-MDEV-26145
bb-10.2-MDEV-26377-final
bb-10.2-MDEV-26668-schema-mismatch
bb-10.2-MDEV-27025-MDEV-20605
bb-10.2-MDEV-27109
bb-10.2-MDEV-27148-mysqltest-reject
bb-10.2-MDEV-27181
bb-10.2-MDEV-27289-server-embedded-mtr
bb-10.2-MDEV-27462
bb-10.2-MDEV-27524-final
bb-10.2-MDEV-27575
bb-10.2-MDEV-27602
bb-10.2-MDEV-27602-mtr
bb-10.2-MDEV-27740-final
bb-10.2-MDEV-277400
bb-10.2-MDEV-27850
bb-10.2-MDEV-28294
bb-10.2-MDEV-28530
bb-10.2-MDEV26113
bb-10.2-Stepan-fixes
bb-10.2-alice
bb-10.2-anel-MDEV-1448-ctrlc
bb-10.2-comment-hf
bb-10.2-compatibility
bb-10.2-compatibility-build22257-opt-fixes
bb-10.2-compatibility-deadlock
bb-10.2-cpack_rpm-exclude-mysql-test-from-debuginfo
bb-10.2-daniel-getopt-sets-readable-output
bb-10.2-danielblack-MDEV-15393-skip-mysql.gtid_slave_pos-with-master-data
bb-10.2-danielblack-MDEV-16263-mysql_client_test-non-mtr-run
bb-10.2-danielblack-MDEV-21286-remove-bison-warnings
bb-10.2-danielblack-MDEV-23326-timezone-initialization-slow-on-aria
bb-10.2-danielblack-MDEV-24268-mtr-mysql_install_db
bb-10.2-danielblack-MDEV-26363
bb-10.2-danielblack-MDEV-28597-aria-double-free
bb-10.2-elenst
bb-10.2-ext2
bb-10.2-galera
bb-10.2-galera-jan
bb-10.2-group-min-max
bb-10.2-hf
bb-10.2-igor
bb-10.2-jan
bb-10.2-kevgs
bb-10.2-mariabackup-pwd
bb-10.2-mariabackup-remove-nolock
bb-10.2-mariarocks
bb-10.2-mariarocks-merge-pre
bb-10.2-mdev-13626
bb-10.2-mdev-26111
bb-10.2-mdev-26127
bb-10.2-mdev11934
bb-10.2-mdev13153
bb-10.2-mdev13330
bb-10.2-mdev13355
bb-10.2-mdev15245
bb-10.2-mdev16428
bb-10.2-mdev19608
bb-10.2-mdev20371
bb-10.2-mdev22779
bb-10.2-mdev25447
bb-10.2-mdev26047
bb-10.2-mdev26047-v2
bb-10.2-mdev9750
bb-10.2-midenok
bb-10.2-midenok-MDEV-20874
bb-10.2-midenok-MDEV-25794
bb-10.2-midenok-innodb
bb-10.2-midenok-tmp
bb-10.2-monty
bb-10.2-nikita
bb-10.2-nikita-MDEV-26205
bb-10.2-nikita-MDEV-26508
bb-10.2-psergey
bb-10.2-ramesh
bb-10.2-release-fix-mdev23811
bb-10.2-robert
bb-10.2-sachin
bb-10.2-semisync
bb-10.2-semisync_ali
bb-10.2-serg
bb-10.2-spider-extra-jacob
bb-10.2-ssl
bb-10.2-sujatha
bb-10.2-svoj
bb-10.2-sysprg
bb-10.2-varun
bb-10.2-vicentiu
bb-10.2-vicentiu-mdev-17964
bb-10.2-vicentiu3
bb-10.2.32-22529-22456
bb-10.2.36-MDEV-24449-MDEV-24709
bb-10.2.4-spider-extra-jacob
bb-10.2.7
bb-10.2gr
bb-10.3-10.3.23-MDEV-21109-wrong-page-no
bb-10.3-10.3.23-MDEV-22929
bb-10.3-16272
bb-10.3-17390
bb-10.3-20574
bb-10.3-21265
bb-10.3-KILL-as-TOI-galera
bb-10.3-MDEV-14500
bb-10.3-MDEV-14642
bb-10.3-MDEV-14959
bb-10.3-MDEV-14959.version
bb-10.3-MDEV-15058
bb-10.3-MDEV-15058-2
bb-10.3-MDEV-15447
bb-10.3-MDEV-16128
bb-10.3-MDEV-16246
bb-10.3-MDEV-16951
bb-10.3-MDEV-17516
bb-10.3-MDEV-18546-nikita
bb-10.3-MDEV-19415
bb-10.3-MDEV-19845
bb-10.3-MDEV-20100
bb-10.3-MDEV-20485
bb-10.3-MDEV-21027
bb-10.3-MDEV-21109-wrong-page-no
bb-10.3-MDEV-21117
bb-10.3-MDEV-21601
bb-10.3-MDEV-21770
bb-10.3-MDEV-21770-v2
bb-10.3-MDEV-21910
bb-10.3-MDEV-22543
bb-10.3-MDEV-23101
bb-10.3-MDEV-23483
bb-10.3-MDEV-23536
bb-10.3-MDEV-23851
bb-10.3-MDEV-24283
bb-10.3-MDEV-24387
bb-10.3-MDEV-25114
bb-10.3-MDEV-25609
bb-10.3-MDEV-26064-galera
bb-10.3-MDEV-26171-galera
bb-10.3-MDEV-26247
bb-10.3-MDEV-26633
bb-10.3-MDEV-26831-fallout
bb-10.3-MDEV-26915-galera
bb-10.3-MDEV-27524-tests
bb-10.3-MDEV-27575
bb-10.3-MDEV-28599
bb-10.3-MDEV-28656-galera
bb-10.3-MDEV-28669-galera
bb-10.3-MDEV-28739
bb-10.3-MDEV-28758
bb-10.3-MDEV-28758-galera
bb-10.3-MDEV-28798
bb-10.3-MDEV-28968-galera
bb-10.3-MDEV-29294
bb-10.3-MDEV-29433-lock_delete_updated
bb-10.3-MDEV-29644
bb-10.3-MDEV-30052-variant2
bb-10.3-MDEV-30157-galera
bb-10.3-MDEV-30608
bb-10.3-MDEV-31668
bb-10.3-TODO-3498-custom-galera
bb-10.3-abychko
bb-10.3-andrei
bb-10.3-anel-PR796
bb-10.3-bar-MDEV-9777
bb-10.3-cpp11
bb-10.3-danielblack-MDEV-16194-pkgtest-remove-offset
bb-10.3-danielblack-MDEV-18702
bb-10.3-danielblack-MDEV-24268-mtr-mysql_install_db
bb-10.3-danielblack-MDEV-27008-aarch-atomics
bb-10.3-danielblack-MDEV-29015-my_seek-avoid-wsl8443
bb-10.3-danielblack-alloca_h_service-pkgtest
bb-10.3-danielblack-rocksdb-featureinfo
bb-10.3-elenst
bb-10.3-findgssapi
bb-10.3-galera
bb-10.3-georg
bb-10.3-hf
bb-10.3-hf-2
bb-10.3-igor
bb-10.3-jani
bb-10.3-kevgs
bb-10.3-mariarocks
bb-10.3-mdev-24523
bb-10.3-mdev-26247
bb-10.3-mdev-26364
bb-10.3-mdev-26544_3
bb-10.3-mdev-27912
bb-10.3-mdev-29447
bb-10.3-mdev-29447-wip
bb-10.3-mdev-30464
bb-10.3-mdev12179
bb-10.3-mdev15101
bb-10.3-mdev17518
bb-10.3-mdev20109
bb-10.3-mdev21603
bb-10.3-mdev22866
bb-10.3-mdev26249
bb-10.3-mdev26337
bb-10.3-mdev26337-v1
bb-10.3-midenok
bb-10.3-midenok-MDEV-18706
bb-10.3-midenok-MDEV-21138
bb-10.3-midenok-MDEV-28931
bb-10.3-midenok2
bb-10.3-monty
bb-10.3-nikita
bb-10.3-nikita-mdev-24511
bb-10.3-nikita-old
bb-10.3-ramesh
bb-10.3-robert
bb-10.3-sachin
bb-10.3-sachin-rpl
bb-10.3-sachin-tmp
bb-10.3-serg
bb-10.3-spetrunia
bb-10.3-spider
bb-10.3-sujatha
bb-10.3-svoj
bb-10.3-sysprg
bb-10.3-sysprg-vcheck
bb-10.3-varun
bb-10.3-vicentiu
bb-10.3-vicentiu-dtoa
bb-10.3-vicentiu-json-review
bb-10.3-vicentiu-tmp-table
bb-10.3-vicentiu-travis
bb-10.3-vicentiu-travis2
bb-10.3.10-mdev21243
bb-10.3.11-xtrabackup_copy_logfile_failed-MDEV-18611
bb-10.3.16-MDEV-21109-wrong-page-no-assert
bb-10.3.16-MDEV-21109-wrong-page-no-log
bb-10.3.16-xtrabackup_copy_logfile_failed-MDEV-18611-dev
bb-10.3.17-MDEV-21109-wrong-page-no
bb-10.3.21-MDEV-21109-wrong-page-no-log
bb-10.4-10.4.14-MDEV-23711-redo-log-overwrite
bb-10.4-19049
bb-10.4-20131
bb-10.4-20574
bb-10.4-23089
bb-10.4-29882-galera
bb-10.4-31361-v3
bb-10.4-7409
bb-10.4-KILL-as-TOI-galera
bb-10.4-MDEV-13915
bb-10.4-MDEV-14101
bb-10.4-MDEV-15703-1
bb-10.4-MDEV-16249
bb-10.4-MDEV-16462
bb-10.4-MDEV-17520
bb-10.4-MDEV-17520-2
bb-10.4-MDEV-17571
bb-10.4-MDEV-17591
bb-10.4-MDEV-17943
bb-10.4-MDEV-18215-post-push-fix
bb-10.4-MDEV-18215-unknown-backup-options
bb-10.4-MDEV-18215-unknown-backup-options-2
bb-10.4-MDEV-18477
bb-10.4-MDEV-18565
bb-10.4-MDEV-18726
bb-10.4-MDEV-18973
bb-10.4-MDEV-18990
bb-10.4-MDEV-18994
bb-10.4-MDEV-19002
bb-10.4-MDEV-19003
bb-10.4-MDEV-19129
bb-10.4-MDEV-19190-nayuta
bb-10.4-MDEV-19210-environment-file-pkgtest
bb-10.4-MDEV-19520
bb-10.4-MDEV-19781
bb-10.4-MDEV-19803
bb-10.4-MDEV-19950
bb-10.4-MDEV-20100
bb-10.4-MDEV-20185
bb-10.4-MDEV-20230-ftwrl-wait-timeout
bb-10.4-MDEV-20494
bb-10.4-MDEV-20502
bb-10.4-MDEV-20793
bb-10.4-MDEV-20848
bb-10.4-MDEV-21007
bb-10.4-MDEV-21153
bb-10.4-MDEV-21335
bb-10.4-MDEV-21483
bb-10.4-MDEV-21675
bb-10.4-MDEV-21905-v2-galera
bb-10.4-MDEV-21910-v2
bb-10.4-MDEV-22021
bb-10.4-MDEV-22055
bb-10.4-MDEV-22063-galera
bb-10.4-MDEV-22203
bb-10.4-MDEV-22494
bb-10.4-MDEV-22596
bb-10.4-MDEV-22632
bb-10.4-MDEV-22666
bb-10.4-MDEV-22979
bb-10.4-MDEV-22983--option-help
bb-10.4-MDEV-23081
bb-10.4-MDEV-23101
bb-10.4-MDEV-23384
bb-10.4-MDEV-23483
bb-10.4-MDEV-23536
bb-10.4-MDEV-23557
bb-10.4-MDEV-23766
bb-10.4-MDEV-23851
bb-10.4-MDEV-23878
bb-10.4-MDEV-24119
bb-10.4-MDEV-24165
bb-10.4-MDEV-24255
bb-10.4-MDEV-24485
bb-10.4-MDEV-24596
bb-10.4-MDEV-24688
bb-10.4-MDEV-24912-postfix-galera
bb-10.4-MDEV-24964
bb-10.4-MDEV-24978
bb-10.4-MDEV-25047
bb-10.4-MDEV-25089-galera
bb-10.4-MDEV-25114
bb-10.4-MDEV-25869
bb-10.4-MDEV-26171-post-merge
bb-10.4-MDEV-26294-instant-alter-charset
bb-10.4-MDEV-26562-galera
bb-10.4-MDEV-27038-ro-mounts-pkgtest
bb-10.4-MDEV-27233
bb-10.4-MDEV-27233-2
bb-10.4-MDEV-27233-hf
bb-10.4-MDEV-27238
bb-10.4-MDEV-27260
bb-10.4-MDEV-27624
bb-10.4-MDEV-28294
bb-10.4-MDEV-28294-merge
bb-10.4-MDEV-28314
bb-10.4-MDEV-28377
bb-10.4-MDEV-28598
bb-10.4-MDEV-28621
bb-10.4-MDEV-28621-no-remove-unit
bb-10.4-MDEV-28621-reference-counter
bb-10.4-MDEV-28622
bb-10.4-MDEV-28641-galera
bb-10.4-MDEV-28656-galera
bb-10.4-MDEV-28798
bb-10.4-MDEV-28971-galera
bb-10.4-MDEV-29092
bb-10.4-MDEV-29179
bb-10.4-MDEV-29246-galera
bb-10.4-MDEV-29283
bb-10.4-MDEV-29289
bb-10.4-MDEV-29293-galera
bb-10.4-MDEV-29369
bb-10.4-MDEV-29456
bb-10.4-MDEV-29602
bb-10.4-MDEV-29640
bb-10.4-MDEV-29775-galera
bb-10.4-MDEV-29814-galera
bb-10.4-MDEV-29917-galera
bb-10.4-MDEV-29989
bb-10.4-MDEV-30334
bb-10.4-MDEV-30388-galera
bb-10.4-MDEV-30414-galera
bb-10.4-MDEV-30421-andrei
bb-10.4-MDEV-30430
bb-10.4-MDEV-30456-galera
bb-10.4-MDEV-30620
bb-10.4-MDEV-30732-galera
bb-10.4-MDEV-30771
bb-10.4-MDEV-30804-galera
bb-10.4-MDEV-30838-galera
bb-10.4-MDEV-30904-harmut-pkgtest
bb-10.4-MDEV-30955-galera
bb-10.4-MDEV-31004
bb-10.4-MDEV-31005
bb-10.4-MDEV-31062-galera
bb-10.4-MDEV-31062-v2-galera
bb-10.4-MDEV-31130
bb-10.4-MDEV-31173-galera
bb-10.4-MDEV-31185-pins
bb-10.4-MDEV-31327
bb-10.4-MDEV-31403
bb-10.4-MDEV-31439-rpm-conflicts-with-mysql-pkgtest
bb-10.4-MDEV-31477
bb-10.4-MDEV-31905-galera
bb-10.4-MDEV-31933
bb-10.4-MDEV-32017
bb-10.4-MDEV-32024-galera
bb-10.4-MDEV-32034
bb-10.4-MDEV-32130
bb-10.4-MDEV-32168-bnestere
bb-10.4-MDEV-32301
bb-10.4-MDEV-32308
bb-10.4-MDEV-32320
bb-10.4-MDEV-32351-pkgtest
bb-10.4-MDEV-32395
bb-10.4-MDEV-32517
bb-10.4-MDEV-32523
bb-10.4-MDEV-32549-galera
bb-10.4-MDEV-32628
bb-10.4-MDEV-32633-galera
bb-10.4-MDEV-32634-galera
bb-10.4-MDEV-32634-v2-galera
bb-10.4-MDEV-32635-galera
bb-10.4-MDEV-32673
bb-10.4-MDEV-32938-galera
bb-10.4-MDEV-33081
bb-10.4-MDEV-33138-galera
bb-10.4-MDEV-6268
bb-10.4-MDEV-7850
bb-10.4-MDEV-7850-bnestere
bb-10.4-MDEV14101
bb-10.4-MW-336
bb-10.4-all-builders
bb-10.4-andrei
bb-10.4-anel-mysql-secureinstall
bb-10.4-bar-MDEV-27666
bb-10.4-bar-MDEV-27771
bb-10.4-bar-MDEV-28498
bb-10.4-check-toku-ci-failure
bb-10.4-danielblack-atomic-rhel-aarch-fix
bb-10.4-danielblack-pr2435-libressl
bb-10.4-elenst
bb-10.4-elenst-no-mdev371
bb-10.4-galera
bb-10.4-galera-bug
bb-10.4-galera-tests
bb-10.4-georg
bb-10.4-hf
bb-10.4-igor
bb-10.4-igor-MDEV-32466
bb-10.4-igor-rebase-MDEV-32466
bb-10.4-igor2
bb-10.4-jan
bb-10.4-jan-fix
bb-10.4-jan-galera
bb-10.4-julius
bb-10.4-julius-galera
bb-10.4-kevgs
bb-10.4-knielsen
bb-10.4-lenas
bb-10.4-linuxjedi-MDEV-19210
bb-10.4-mdev-22534-demo-exists2in-loop
bb-10.4-mdev-24610
bb-10.4-mdev-26345
bb-10.4-mdev-27666-hf
bb-10.4-mdev-27902
bb-10.4-mdev-27902-gold
bb-10.4-mdev-28506
bb-10.4-mdev-28506-v2
bb-10.4-mdev-28509
bb-10.4-mdev-28856
bb-10.4-mdev-28992
bb-10.4-mdev-29363
bb-10.4-mdev-29363-cheap
bb-10.4-mdev-29363-no-prop-subquery
bb-10.4-mdev-29447
bb-10.4-mdev-29718-gold
bb-10.4-mdev-29962
bb-10.4-mdev-30014
bb-10.4-mdev-30073
bb-10.4-mdev-30073-3
bb-10.4-mdev-30073-3_MDEV-32466
bb-10.4-mdev-30073-4
bb-10.4-mdev-30073-5
bb-10.4-mdev-30370
bb-10.4-mdev-30727
bb-10.4-mdev-30727-demo
bb-10.4-mdev-31101
bb-10.4-mdev-31269
bb-10.4-mdev-31269-3906-fixed-by-mdev-30073
bb-10.4-mdev-31361
bb-10.4-mdev-31766-hf
bb-10.4-mdev-32401
bb-10.4-mdev-32424
bb-10.4-mdev-32849-check-ci
bb-10.4-mdev-32986-gold
bb-10.4-mdev-33008-gold
bb-10.4-mdev-33191-gold
bb-10.4-mdev-33434
bb-10.4-mdev-33441
bb-10.4-mdev-33679
bb-10.4-mdev-33706
bb-10.4-mdev-33728
bb-10.4-mdev-33892-hf
bb-10.4-mdev18608
bb-10.4-mdev19134
bb-10.4-mdev20109
bb-10.4-mdev20371
bb-10.4-mdev20501
bb-10.4-mdev20501-v2
bb-10.4-mdev21794
bb-10.4-mdev22377
bb-10.4-mdev22401
bb-10.4-mdev22993
bb-10.4-mdev26301-with-trace
bb-10.4-mdev27666-hf
bb-10.4-mdev28649-hf
bb-10.4-mdev302018-v2
bb-10.4-mdev30218-part2
bb-10.4-mdev30964
bb-10.4-mdev31121
bb-10.4-mdev31240
bb-10.4-mdev32301
bb-10.4-mdev32351-tests
bb-10.4-mdev9750
bb-10.4-mdev9750-v2
bb-10.4-midenok
bb-10.4-midenok-MDEV-25644
bb-10.4-midenok-MDEV-30421
bb-10.4-midenok-MDEV-30528
bb-10.4-midenok-MDEV-31042
bb-10.4-midenok-tmp
bb-10.4-midenok2
bb-10.4-monty
bb-10.4-multiple-user-binlog
bb-10.4-nayuta
bb-10.4-nikita
bb-10.4-osmirnov
bb-10.4-otto
bb-10.4-psergey
bb-10.4-ramesh
bb-10.4-release-mdev30218
bb-10.4-robert
bb-10.4-rucha
bb-10.4-sachin
bb-10.4-sachin2
bb-10.4-serg
bb-10.4-spetrunia
bb-10.4-spetrunia-tmp
bb-10.4-spider-ks
bb-10.4-sqlserv-bp-hf
bb-10.4-sujatha
bb-10.4-svoj
bb-10.4-sysprg
bb-10.4-sysprg-MDEV-20625
bb-10.4-sysprg-MDEV-20626
bb-10.4-tests-galera
bb-10.4-thiru
bb-10.4-vicentiu
bb-10.4-vicentiu-histograms
bb-10.4-vp-ks
bb-10.4-wlad
bb-10.4-wsrep
bb-10.4-wsrep-update
bb-10.4-ycp
bb-10.4-ycp-mdev-29963
bb-10.4-ycp-mdev-30014
bb-10.4-ycp-spider
bb-10.4-ycp-spider-fix
bb-10.4-ycp-spider-mdev-31117
bb-10.4-ycp-spider-mdev-31524
bb-10.4-ycp-spider-mdev-31524-fail
bb-10.4.20-MDEV-30567
bb-10.5-10.5.22-MDEV-24035-assertion
bb-10.5-10.5.6-MDEV-24197-debug-build
bb-10.5-19708
bb-10.5-23089
bb-10.5-KILL-as-TOI-galera
bb-10.5-MDEV-10962-deadlock-deletes
bb-10.5-MDEV-13362
bb-10.5-MDEV-13915-mergefix
bb-10.5-MDEV-14357
bb-10.5-MDEV-14479-table-locks
bb-10.5-MDEV-14479-table-locks-lock_rec_has_expl
bb-10.5-MDEV-15053
bb-10.5-MDEV-15053-2
bb-10.5-MDEV-15053-3
bb-10.5-MDEV-16039-nikita
bb-10.5-MDEV-16232
bb-10.5-MDEV-16641-test-unmask-mysql_client_test_tests
bb-10.5-MDEV-16978-without-overlaps
bb-10.5-MDEV-16983-period-fk
bb-10.5-MDEV-17395-replace
bb-10.5-MDEV-17943
bb-10.5-MDEV-18188
bb-10.5-MDEV-18215-unknown-backup-options
bb-10.5-MDEV-18582
bb-10.5-MDEV-18863
bb-10.5-MDEV-18976
bb-10.5-MDEV-18976-redolog-crc
bb-10.5-MDEV-19487
bb-10.5-MDEV-19935
bb-10.5-MDEV-20051
bb-10.5-MDEV-20100
bb-10.5-MDEV-20281
bb-10.5-MDEV-20297
bb-10.5-MDEV-20487
bb-10.5-MDEV-21175
bb-10.5-MDEV-21351
bb-10.5-MDEV-21452
bb-10.5-MDEV-21469-2022
bb-10.5-MDEV-21469-2023
bb-10.5-MDEV-21598
bb-10.5-MDEV-21916-try2
bb-10.5-MDEV-21988
bb-10.5-MDEV-22063-galera
bb-10.5-MDEV-22141
bb-10.5-MDEV-22232-galera
bb-10.5-MDEV-22387
bb-10.5-MDEV-22543
bb-10.5-MDEV-22726-aria-non-trans-log
bb-10.5-MDEV-22729
bb-10.5-MDEV-22922
bb-10.5-MDEV-22929-log_corrupted_pages
bb-10.5-MDEV-22979
bb-10.5-MDEV-23101
bb-10.5-MDEV-23299-danielblack-pr-1643
bb-10.5-MDEV-23399
bb-10.5-MDEV-23483
bb-10.5-MDEV-23651
bb-10.5-MDEV-23855
bb-10.5-MDEV-23955
bb-10.5-MDEV-24010
bb-10.5-MDEV-24142
bb-10.5-MDEV-24480
bb-10.5-MDEV-24514
bb-10.5-MDEV-24705-LSN-check
bb-10.5-MDEV-24819
bb-10.5-MDEV-24845-galera
bb-10.5-MDEV-24882-galera
bb-10.5-MDEV-24935
bb-10.5-MDEV-25031
bb-10.5-MDEV-25089-galera
bb-10.5-MDEV-25089-v2-galera
bb-10.5-MDEV-25113
bb-10.5-MDEV-25114
bb-10.5-MDEV-25148
bb-10.5-MDEV-25163
bb-10.5-MDEV-25594
bb-10.5-MDEV-25731-galera
bb-10.5-MDEV-25783
bb-10.5-MDEV-26206-post-push
bb-10.5-MDEV-26266-galera
bb-10.5-MDEV-26450
bb-10.5-MDEV-26516-galera
bb-10.5-MDEV-26826
bb-10.5-MDEV-26852
bb-10.5-MDEV-26929
bb-10.5-MDEV-27366
bb-10.5-MDEV-27366-2
bb-10.5-MDEV-27649-galera
bb-10.5-MDEV-27806-galera
bb-10.5-MDEV-27861-galera
bb-10.5-MDEV-27861-v2-galera
bb-10.5-MDEV-27861-v3-galera
bb-10.5-MDEV-27862-galera
bb-10.5-MDEV-28621-elimination-disabled
bb-10.5-MDEV-28621-no-remove-unit
bb-10.5-MDEV-28709-sup_X_lock-debug
bb-10.5-MDEV-28846
bb-10.5-MDEV-28953-galera
bb-10.5-MDEV-29027
bb-10.5-MDEV-29050-prepare-export-err
bb-10.5-MDEV-29293-galera
bb-10.5-MDEV-29344
bb-10.5-MDEV-29693-v2
bb-10.5-MDEV-29775-galera
bb-10.5-MDEV-29775-v2-galera
bb-10.5-MDEV-29880-galera
bb-10.5-MDEV-29967
bb-10.5-MDEV-29981-log-headers
bb-10.5-MDEV-30073-MDEV-32294
bb-10.5-MDEV-30415
bb-10.5-MDEV-30456-galera
bb-10.5-MDEV-30520-selinux-app-pkgtest
bb-10.5-MDEV-30605
bb-10.5-MDEV-30619-merge
bb-10.5-MDEV-30646
bb-10.5-MDEV-30658-lock_row_lock_current_waits
bb-10.5-MDEV-30686-v2-galera
bb-10.5-MDEV-30700-postfix
bb-10.5-MDEV-30710
bb-10.5-MDEV-30815
bb-10.5-MDEV-30822-galera
bb-10.5-MDEV-30822-v2-galera
bb-10.5-MDEV-31062-galera
bb-10.5-MDEV-31062-v2-galera
bb-10.5-MDEV-31177
bb-10.5-MDEV-31477
bb-10.5-MDEV-31892
bb-10.5-MDEV-32083-cve
bb-10.5-MDEV-32287
bb-10.5-MDEV-32294-WIP
bb-10.5-MDEV-32302
bb-10.5-MDEV-32401
bb-10.5-MDEV-32635-galera
bb-10.5-MDEV-32782-galera
bb-10.5-MDEV-32866
bb-10.5-MDEV-32996-galera
bb-10.5-MDEV-33035-galera
bb-10.5-MDEV-33036-galera
bb-10.5-MDEV-33138-galera
bb-10.5-MDEV-33216-galera
bb-10.5-MDEV-33509-galera
bb-10.5-MDEV-33658
bb-10.5-MDEV-33677-galera
bb-10.5-MDEV-33755
bb-10.5-MDEV-33897-galera
bb-10.5-MDEV-33928-galera
bb-10.5-MDEV-33952-galera
bb-10.5-MDEV-33967-handersocket-binlog-pkgtest
bb-10.5-MDEV-33988-delete-table-alias-pkgtest
bb-10.5-MDEV-33997-galera
bb-10.5-MDEV-34214-galera
bb-10.5-MDEV-34348
bb-10.5-MDEV-34508-ubsan-errors
bb-10.5-MDEV-34580
bb-10.5-MDEV-34594-galera
bb-10.5-MDEV-34594-v2-galera
bb-10.5-MDEV-34842-galera_3nodes-ipv6
bb-10.5-MDEV-34883
bb-10.5-MDEV-34926
bb-10.5-MDEV-34976-galera
bb-10.5-MDEV-34998-tests-galera
bb-10.5-MDEV-35018-galera
bb-10.5-MDEV-35018-v2-galera
bb-10.5-MDEV-35018-v3-galera
bb-10.5-MDEV-35090
bb-10.5-MDEV-35299
bb-10.5-MDEV-35343
bb-10.5-MDEV-35355-galera
bb-10.5-MDEV-35471-galera
bb-10.5-MDEV-35565
bb-10.5-MDEV-35673
bb-10.5-MDEV-35938
bb-10.5-MDEV-35969-galera
bb-10.5-MDEV-36116-galera
bb-10.5-MDEV-36117-galera
bb-10.5-MDEV-36280
bb-10.5-MDEV-36380
bb-10.5-MDEV-36628-galera
bb-10.5-MDEV_21469
bb-10.5-MENT-344-backup_to_s3
bb-10.5-TODO-3821
bb-10.5-abychko
bb-10.5-all-builders
bb-10.5-andrei
bb-10.5-anel-MDEV-24602-check_constraints
bb-10.5-anel-anonymous-user-windows-check
bb-10.5-anel-anonymous-user-windows-check-without-skip-resolve
bb-10.5-anel-rpl-fix-assertion
bb-10.5-aria
bb-10.5-bar
bb-10.5-bar-MDEV-10865
bb-10.5-bar-MDEV-20610
bb-10.5-bar-MDEV-25593
bb-10.5-bar-MDEV-30111
bb-10.5-bar-MDEV-33342
bb-10.5-bar-MDEV-34037
bb-10.5-bar-MDEV-34580
bb-10.5-bar-MDEV-34959
bb-10.5-bumpversion
bb-10.5-clustrixdb
bb-10.5-columnstore
bb-10.5-cs
bb-10.5-danielblack-MDEV-23607
bb-10.5-danielblack-MDEV-23892-pthread-not-aix-specific
bb-10.5-danielblack-MDEV-26891-delay-insert-virt-crash-pr1943
bb-10.5-danielblack-MDEV-28153-deb-explict-deps-salsa-postfix
bb-10.5-danielblack-MDEV-30222-mysqltest-popen-err-display
bb-10.5-danielblack-my_free_undef
bb-10.5-drrtuy
bb-10.5-elenst
bb-10.5-elenst-mdev22249
bb-10.5-galera
bb-10.5-galera-gtid
bb-10.5-hf
bb-10.5-igor
bb-10.5-jan
bb-10.5-julius
bb-10.5-julius-galera
bb-10.5-kevgs
bb-10.5-knielsen
bb-10.5-lateral-fixes
bb-10.5-limit-rows-examined
bb-10.5-mdbf-535-test
bb-10.5-mdev-24610
bb-10.5-mdev-25008
bb-10.5-mdev-25008-monty-patch
bb-10.5-mdev-25008-outer-lookup-keys
bb-10.5-mdev-25008-unit-distinct
bb-10.5-mdev-26247
bb-10.5-mdev-26345-alt
bb-10.5-mdev-26541
bb-10.5-mdev-27575
bb-10.5-mdev-27650
bb-10.5-mdev-27902
bb-10.5-mdev-27912
bb-10.5-mdev-28683
bb-10.5-mdev-28739
bb-10.5-mdev-29002-gold
bb-10.5-mdev-29360-v1
bb-10.5-mdev-29360-v2
bb-10.5-mdev-29363-cheap
bb-10.5-mdev-29447
bb-10.5-mdev-29447-31338
bb-10.5-mdev-29605
bb-10.5-mdev-29644
bb-10.5-mdev-29870
bb-10.5-mdev-29962
bb-10.5-mdev-30014
bb-10.5-mdev-30067
bb-10.5-mdev-30073-6
bb-10.5-mdev-30073-7
bb-10.5-mdev-30073-8
bb-10.5-mdev-30073-8.1
bb-10.5-mdev-30073-8.2
bb-10.5-mdev-30170-gold
bb-10.5-mdev-30370-22979-29904-27912
bb-10.5-mdev-30408
bb-10.5-mdev-30435-30981
bb-10.5-mdev-30576
bb-10.5-mdev-30649
bb-10.5-mdev-31101
bb-10.5-mdev-31117
bb-10.5-mdev-31117-merge
bb-10.5-mdev-31269
bb-10.5-mdev-31400
bb-10.5-mdev-31421
bb-10.5-mdev-31524
bb-10.5-mdev-31673
bb-10.5-mdev-31743
bb-10.5-mdev-31787
bb-10.5-mdev-31996
bb-10.5-mdev-32157
bb-10.5-mdev-32492
bb-10.5-mdev-32492-delete-trx-ha-if-mismatch-share
bb-10.5-mdev-32524
bb-10.5-mdev-33174-gold
bb-10.5-mdev-33220
bb-10.5-mdev-33679
bb-10.5-mdev-33679-print-item-equal
bb-10.5-mdev-33777
bb-10.5-mdev-34036
bb-10.5-mdev-34359
bb-10.5-mdev-34404
bb-10.5-mdev-34421
bb-10.5-mdev-34541
bb-10.5-mdev-34589-restore-dastatus-rollback
bb-10.5-mdev-34589-trans-rollback-pass-error
bb-10.5-mdev-34639
bb-10.5-mdev-34659
bb-10.5-mdev-34708
bb-10.5-mdev-34872
bb-10.5-mdev-34925
bb-10.5-mdev-35064
bb-10.5-mdev-35153-debug
bb-10.5-mdev-35249-revert
bb-10.5-mdev-35326
bb-10.5-mdev-35326-handle-select
bb-10.5-mdev-35452-remove-sgb
bb-10.5-mdev-35622
bb-10.5-mdev-35781
bb-10.5-mdev-35807
bb-10.5-mdev-35874
bb-10.5-mdev-36118
bb-10.5-mdev-36121
bb-10.5-mdev-36245-hf
bb-10.5-mdev-36307
bb-10.5-mdev-36324
bb-10.5-mdev-36335
bb-10.5-mdev-36442
bb-10.5-mdev-36452
bb-10.5-mdev-36454
bb-10.5-mdev-36476
bb-10.5-mdev-36477
bb-10.5-mdev-36478
bb-10.5-mdev-36633
bb-10.5-mdev15101
bb-10.5-mdev20854
bb-10.5-mdev22014
bb-10.5-mdev22331
bb-10.5-mdev23634
bb-10.5-mdev23662
bb-10.5-mdev24953
bb-10.5-mdev25069
bb-10.5-mdev25251
bb-10.5-mdev27382
bb-10.5-mdev7317
bb-10.5-mdev9750
bb-10.5-mdev_742
bb-10.5-ment-1591-debug-demo
bb-10.5-merge-jan
bb-10.5-merge-static-libs-danblack
bb-10.5-midenok
bb-10.5-midenok2
bb-10.5-monty
bb-10.5-my-error
bb-10.5-nikita
bb-10.5-nikita-MDEV-30046
bb-10.5-nikita-expr-arena-old
bb-10.5-nikita-msan
bb-10.5-oalter
bb-10.5-oalter-rebase
bb-10.5-pre_mdev-742
bb-10.5-ps-ks
bb-10.5-ramesh
bb-10.5-rasmus
bb-10.5-release-galera
bb-10.5-release-julius
bb-10.5-release-mdev30218
bb-10.5-release-mtr
bb-10.5-release-spider-fix
bb-10.5-remove-dont
bb-10.5-rex
bb-10.5-robert
bb-10.5-robert-build
bb-10.5-sachin
bb-10.5-serg
bb-10.5-shutdown
bb-10.5-spetrunia
bb-10.5-spider-fixup
bb-10.5-sqlser-hf
bb-10.5-sst-galera
bb-10.5-sujatha
bb-10.5-svoj
bb-10.5-svoj-MDEV-17084
bb-10.5-svoj-MDEV-17084-redo
bb-10.5-svoj-MDEV-19061
bb-10.5-svoj-MDEV-19439
bb-10.5-svoj-MDEV-20630
bb-10.5-svoj-MDEV-22593
bb-10.5-sysprg-MDEV-22554
bb-10.5-thiru
bb-10.5-tmp
bb-10.5-trigger
bb-10.5-upto
bb-10.5-varun
bb-10.5-vicentiu
bb-10.5-vicentiu-buildbot
bb-10.5-vicentiu-buildbot2
bb-10.5-vicentiu-intel-warnings
bb-10.5-vicentiu2
bb-10.5-voting
bb-10.5-wlad
bb-10.5-wlad-15053
bb-10.5-wlad-MDEV-21612
bb-10.5-wlad-constexpr
bb-10.5-wlad-schannel-openssl
bb-10.5-wlad-tpwin
bb-10.5-xa-prepare
bb-10.5-xpand
bb-10.5-ycp
bb-10.5-ycp-mdev-26345
bb-10.5-ycp-mdev-26345-1
bb-10.5-ycp-mdev-28413
bb-10.5-ycp-mdev-29502
bb-10.5-ycp-mdev-34849
bb-10.5-ycp-mdev-35874
bb-10.5-ycp-spider
bb-10.5.19-undo_truncate
bb-10.5.21-undo_truncate
bb-10.6-MDEV-10962-deadlock-deletes
bb-10.6-MDEV-15120_2
bb-10.6-MDEV-16437
bb-10.6-MDEV-16708-2
bb-10.6-MDEV-16708-3
bb-10.6-MDEV-16976
bb-10.6-MDEV-16983-period-fk
bb-10.6-MDEV-17843-lock_rec_queue_validate
bb-10.6-MDEV-18976
bb-10.6-MDEV-19177
bb-10.6-MDEV-20100
bb-10.6-MDEV-20154
bb-10.6-MDEV-20453
bb-10.6-MDEV-20552-remove-innobackupex
bb-10.6-MDEV-21192-galera
bb-10.6-MDEV-21423
bb-10.6-MDEV-21452
bb-10.6-MDEV-21469-rebase
bb-10.6-MDEV-21530
bb-10.6-MDEV-22063-galera
bb-10.6-MDEV-22232-galera
bb-10.6-MDEV-22265
bb-10.6-MDEV-22718
bb-10.6-MDEV-23238
bb-10.6-MDEV-23536
bb-10.6-MDEV-24062-galera
bb-10.6-MDEV-24142-2
bb-10.6-MDEV-24258
bb-10.6-MDEV-24269-galera
bb-10.6-MDEV-24341
bb-10.6-MDEV-24424
bb-10.6-MDEV-24509
bb-10.6-MDEV-24786
bb-10.6-MDEV-24818
bb-10.6-MDEV-24845-galera
bb-10.6-MDEV-24853
bb-10.6-MDEV-24882-galera
bb-10.6-MDEV-24946
bb-10.6-MDEV-25029
bb-10.6-MDEV-25089-galera
bb-10.6-MDEV-25099
bb-10.6-MDEV-25114
bb-10.6-MDEV-25488
bb-10.6-MDEV-25491
bb-10.6-MDEV-25506_FTS
bb-10.6-MDEV-25543
bb-10.6-MDEV-25611
bb-10.6-MDEV-25633
bb-10.6-MDEV-25683
bb-10.6-MDEV-25698-galera
bb-10.6-MDEV-25731-galera
bb-10.6-MDEV-25822
bb-10.6-MDEV-25906
bb-10.6-MDEV-25948-MDEV-25611
bb-10.6-MDEV-25973
bb-10.6-MDEV-26015
bb-10.6-MDEV-26049
bb-10.6-MDEV-26115
bb-10.6-MDEV-26142
bb-10.6-MDEV-26145
bb-10.6-MDEV-26149
bb-10.6-MDEV-26171-post-merge
bb-10.6-MDEV-26206-impl-gap-1
bb-10.6-MDEV-26209
bb-10.6-MDEV-26450
bb-10.6-MDEV-26782
bb-10.6-MDEV-27317-galera
bb-10.6-MDEV-27557-clust-mtr-savepoint
bb-10.6-MDEV-27736
bb-10.6-MDEV-27861-v2-galera
bb-10.6-MDEV-27862-galera
bb-10.6-MDEV-27871
bb-10.6-MDEV-27871-MDEV-31933
bb-10.6-MDEV-27983
bb-10.6-MDEV-28315
bb-10.6-MDEV-28422
bb-10.6-MDEV-28423-v2
bb-10.6-MDEV-28583
bb-10.6-MDEV-28621-delayed-elimination
bb-10.6-MDEV-28621-eliminate-in-optimization
bb-10.6-MDEV-28621-no-elimination
bb-10.6-MDEV-28621-v3-eliminate-carefully
bb-10.6-MDEV-28709-post-push-fix
bb-10.6-MDEV-28709-sup_X_lock-skip_gap_lock_inheritance_n_recs
bb-10.6-MDEV-28800
bb-10.6-MDEV-28953-galera
bb-10.6-MDEV-28968-galera
bb-10.6-MDEV-29050-prepare-export-err
bb-10.6-MDEV-29181
bb-10.6-MDEV-29293-galera
bb-10.6-MDEV-29336
bb-10.6-MDEV-29433-lock_delete_updated
bb-10.6-MDEV-29440
bb-10.6-MDEV-29593
bb-10.6-MDEV-29775-galera
bb-10.6-MDEV-29775-v2-galera
bb-10.6-MDEV-29849
bb-10.6-MDEV-29880-galera
bb-10.6-MDEV-30000
bb-10.6-MDEV-30086
bb-10.6-MDEV-30100-MDEV-25340
bb-10.6-MDEV-30133
bb-10.6-MDEV-30182
bb-10.6-MDEV-30260-mergefix
bb-10.6-MDEV-30289
bb-10.6-MDEV-30456-galera
bb-10.6-MDEV-30536-galera
bb-10.6-MDEV-30658-lock_row_lock_current_waits
bb-10.6-MDEV-30775-try_to_close
bb-10.6-MDEV-30802
bb-10.6-MDEV-30822-galera
bb-10.6-MDEV-30936
bb-10.6-MDEV-30996
bb-10.6-MDEV-30996_fts
bb-10.6-MDEV-31080
bb-10.6-MDEV-31380
bb-10.6-MDEV-31382
bb-10.6-MDEV-31449
bb-10.6-MDEV-31496
bb-10.6-MDEV-31826
bb-10.6-MDEV-31877
bb-10.6-MDEV-31888-galera
bb-10.6-MDEV-31905-galera
bb-10.6-MDEV-31949
bb-10.6-MDEV-31949-21469
bb-10.6-MDEV-31949_ver0
bb-10.6-MDEV-31949_ver0_opt
bb-10.6-MDEV-31983
bb-10.6-MDEV-31983-v2
bb-10.6-MDEV-31983-v3
bb-10.6-MDEV-32067
bb-10.6-MDEV-32080
bb-10.6-MDEV-32096-pkgtest
bb-10.6-MDEV-32253
bb-10.6-MDEV-32265
bb-10.6-MDEV-32297
bb-10.6-MDEV-32523
bb-10.6-MDEV-32549-galera
bb-10.6-MDEV-32554
bb-10.6-MDEV-32628-mergefix
bb-10.6-MDEV-32633-galera
bb-10.6-MDEV-32635-galera
bb-10.6-MDEV-32682
bb-10.6-MDEV-32738-galera
bb-10.6-MDEV-32788
bb-10.6-MDEV-32830-qa
bb-10.6-MDEV-32898-pkgtest
bb-10.6-MDEV-33036-galera
bb-10.6-MDEV-33136-galera
bb-10.6-MDEV-33138-galera
bb-10.6-MDEV-33189
bb-10.6-MDEV-33216-galera
bb-10.6-MDEV-33314
bb-10.6-MDEV-33509-galera
bb-10.6-MDEV-33802-unique-cursor-restore
bb-10.6-MDEV-33828-galera
bb-10.6-MDEV-33850-galera
bb-10.6-MDEV-33896-galera
bb-10.6-MDEV-33897-galera
bb-10.6-MDEV-33952-galera
bb-10.6-MDEV-33997-galera
bb-10.6-MDEV-34090
bb-10.6-MDEV-34122-fixup
bb-10.6-MDEV-34190-tmp
bb-10.6-MDEV-34218-galera
bb-10.6-MDEV-34348-merge-fix
bb-10.6-MDEV-34481
bb-10.6-MDEV-34647-galera
bb-10.6-MDEV-34822-galera
bb-10.6-MDEV-34924-galera
bb-10.6-MDEV-34958
bb-10.6-MDEV-35018-v3-galera
bb-10.6-MDEV-35207
bb-10.6-MDEV-35288
bb-10.6-MDEV-35506
bb-10.6-MDEV-35511
bb-10.6-MDEV-35570
bb-10.6-MDEV-35748-galera
bb-10.6-MDEV-35828
bb-10.6-MDEV-35944
bb-10.6-MDEV-36107
bb-10.6-MDEV-36117-galera
bb-10.6-MDEV-36234-pkgtest
bb-10.6-MDEV-36290-monty
bb-10.6-MDEV-36512-galera
bb-10.6-MDEV-36620-galera
bb-10.6-MDEV-36622-galera
bb-10.6-MDEV-36875
bb-10.6-MDEV-37527
bb-10.6-MDEV-37911
bb-10.6-MDEV-37950
bb-10.6-MDEV-38236
bb-10.6-MDEV-515
bb-10.6-MDEV-6536-addendum
bb-10.6-add-columnstore-mtr
bb-10.6-add-columnstore-mtr-pkgtest
bb-10.6-alice
bb-10.6-all-builders
bb-10.6-andrei
bb-10.6-andrei-MDEV-24660
bb-10.6-anel-rpl_fix_assertion
bb-10.6-avoid-abortive-socket-close
bb-10.6-bar
bb-10.6-bar-MDEV-28001
bb-10.6-bar-MDEV-30111
bb-10.6-bar-MDEV-33472
bb-10.6-bar-MDEV-33648
bb-10.6-bar-MDEV-34189
bb-10.6-bar-assign
bb-10.6-bumpversion
bb-10.6-cache-metadata
bb-10.6-choose_next_log
bb-10.6-cs
bb-10.6-danielblack-MDEV-14096-deprecate-year-parentheses
bb-10.6-danielblack-MDEV-25152
bb-10.6-danielblack-MDEV-25282-Auto-shutdown-on-idle-when-socket-activated
bb-10.6-danielblack-MDEV-25424-my_multi_malloc-large-use-my_large_malloc
bb-10.6-danielblack-MDEV-27955-postfix-func_json_notembedded
bb-10.6-danielblack-MDEV-28011-deb-autobake
bb-10.6-danielblack-MDEV-28153-deb-autobake
bb-10.6-danielblack-MDEV-28534-clang-12-innodb
bb-10.6-danielblack-MDEV-28782-tzinfo-works-in-bootstrap
bb-10.6-danielblack-MDEV-29141-rseg_ext_p2
bb-10.6-danielblack-MDEV-29678-uninit
bb-10.6-drrtuy
bb-10.6-elenst
bb-10.6-fake-select-number
bb-10.6-galera
bb-10.6-galera-jan
bb-10.6-georg
bb-10.6-hf
bb-10.6-hf-2
bb-10.6-ibuf
bb-10.6-igor
bb-10.6-iouring_required-memlock
bb-10.6-julius
bb-10.6-julius-galera
bb-10.6-knielsen
bb-10.6-mac
bb-10.6-marko
bb-10.6-master-timestamp
bb-10.6-mdev-26127
bb-10.6-mdev-26178
bb-10.6-mdev-26247
bb-10.6-mdev-26541
bb-10.6-mdev-27087-rucha
bb-10.6-mdev-27103-demo-ddl
bb-10.6-mdev-27438
bb-10.6-mdev-27912
bb-10.6-mdev-28739
bb-10.6-mdev-29027
bb-10.6-mdev-29447
bb-10.6-mdev-29447-31338
bb-10.6-mdev-29502
bb-10.6-mdev-29644
bb-10.6-mdev-29870
bb-10.6-mdev-30264
bb-10.6-mdev-30435-30981
bb-10.6-mdev-30436
bb-10.6-mdev-31117
bb-10.6-mdev-31400
bb-10.6-mdev-31421
bb-10.6-mdev-31516
bb-10.6-mdev-31524
bb-10.6-mdev-31524-post-merge-fix
bb-10.6-mdev-31577-test
bb-10.6-mdev-31721
bb-10.6-mdev-31787
bb-10.6-mdev-31788
bb-10.6-mdev-32157
bb-10.6-mdev-32524
bb-10.6-mdev-32907
bb-10.6-mdev-33191
bb-10.6-mdev-33242-gold
bb-10.6-mdev-33434
bb-10.6-mdev-33441
bb-10.6-mdev-34588
bb-10.6-mdev-34636
bb-10.6-mdev-34682
bb-10.6-mdev-34813
bb-10.6-mdev-35153-debug
bb-10.6-mdev-35249-revert
bb-10.6-mdev-35422
bb-10.6-mdev-35591-hf
bb-10.6-mdev-35713-hf
bb-10.6-mdev-35959
bb-10.6-mdev-36058-hf
bb-10.6-mdev-36221
bb-10.6-mdev-36678
bb-10.6-mdev-37166-hf
bb-10.6-mdev-37193
bb-10.6-mdev-37682
bb-10.6-mdev-37972
bb-10.6-mdev-7093
bb-10.6-mdev21829
bb-10.6-mdev24325
bb-10.6-mdev24740
bb-10.6-mdev25075
bb-10.6-mdev25154
bb-10.6-mdev25362
bb-10.6-mdev25631
bb-10.6-mdev28749
bb-10.6-mdev30081-variant2
bb-10.6-mdev31067
bb-10.6-mdev31067-variant2
bb-10.6-mdev31067-variant3
bb-10.6-mdev32113
bb-10.6-mdev32113-variant1
bb-10.6-mdev32203
bb-10.6-mdev33752
bb-10.6-mdev33752-v2
bb-10.6-mdev34125-which-platforms
bb-10.6-mdev34720
bb-10.6-mdev34720-v2
bb-10.6-mdev34720-v3
bb-10.6-mdev36948-infer1
bb-10.6-mdev7317
bb-10.6-ment2045
bb-10.6-merge
bb-10.6-merge-galera
bb-10.6-merge-jan
bb-10.6-merge-julius
bb-10.6-midenok
bb-10.6-midenok-MDEV-10962
bb-10.6-midenok-MDEV-12483
bb-10.6-midenok-MDEV-12483-partitioning
bb-10.6-midenok-MDEV-16417-atomic
bb-10.6-midenok-MDEV-16686
bb-10.6-midenok-MDEV-18706
bb-10.6-midenok-MDEV-21053
bb-10.6-midenok-MDEV-21652
bb-10.6-midenok-MDEV-23639
bb-10.6-midenok-review
bb-10.6-midenok-review2
bb-10.6-midenok-tmp
bb-10.6-monty
bb-10.6-monty-xa
bb-10.6-monty2
bb-10.6-no-capabilities-pkgtest
bb-10.6-online-alter
bb-10.6-ramesh
bb-10.6-refactor-limit
bb-10.6-refactor-limit-review
bb-10.6-release
bb-10.6-release-julius
bb-10.6-release-mdev30218
bb-10.6-release-wlad
bb-10.6-remove-m_text_literal
bb-10.6-robert
bb-10.6-rucha
bb-10.6-sachin
bb-10.6-serg
bb-10.6-spetrunia
bb-10.6-spetrunia-tmp1
bb-10.6-spetrunia-tmp2
bb-10.6-spetrunia-tmp3
bb-10.6-sqlser-hf
bb-10.6-sst-galera
bb-10.6-sujatha
bb-10.6-sysschema
bb-10.6-thiru
bb-10.6-tmp
bb-10.6-todo-4509
bb-10.6-todo4799
bb-10.6-varun
bb-10.6-vicentiu-MDEV-17796-check
bb-10.6-vicentiu-uniques
bb-10.6-vicentiu-wip
bb-10.6-wlad-MDEV-22010
bb-10.6-wlad-MDEV-23959
bb-10.6-wlad-lto
bb-10.6-ycp
bb-10.6-ycp-fixup
bb-10.6-ycp-push
bb-10.6-ycp-spider
bb-10.6.11-pkgtest-MDEV-31185-pins
bb-10.6.12-DBS
bb-10.6.12-MDEV-30165
bb-10.6.18-TODO-4984
bb-10.6.8-MDEV-27701
bb-10.6.9-hash-join-improvements
bb-10.6_MDEV-18959
bb-10.6_MDEV-21117
bb-10.7-MDEV-18543-instant-import-bugs
bb-10.7-MDEV-22165
bb-10.7-MDEV-22441-scoped-variable
bb-10.7-MDEV-23766
bb-10.7-MDEV-24623
bb-10.7-MDEV-26238
bb-10.7-MDEV-26391-galera
bb-10.7-MDEV-26843
bb-10.7-MDEV-27575
bb-10.7-MDEV-27892
bb-10.7-MDEV-4742
bb-10.7-MDEV-4958-uuid
bb-10.7-TODO-3121
bb-10.7-danielblack-MDEV-26157-openmp-statistics-fork
bb-10.7-danielblack-mdev-12933-fixup
bb-10.7-elenst
bb-10.7-galera
bb-10.7-hf-mdev-19275
bb-10.7-hs
bb-10.7-igor
bb-10.7-kevgs
bb-10.7-mdev-26285
bb-10.7-mdev-26288
bb-10.7-mdev-27159
bb-10.7-mdev-27159-hf
bb-10.7-mdev-27159-insert-hf
bb-10.7-mdev-27831-hf
bb-10.7-mdev-7487
bb-10.7-mdev21130
bb-10.7-mdev23143
bb-10.7-mdev26519
bb-10.7-mdev27188
bb-10.7-mdev29677
bb-10.7-midenok
bb-10.7-midenok-MDEV-22166
bb-10.7-midenok-MDEV-22166-tmp
bb-10.7-midenok-MDEV-27180
bb-10.7-monty
bb-10.7-nayuta
bb-10.7-repl_tests
bb-10.7-robert
bb-10.7-selectivity
bb-10.7-serg
bb-10.7-sujatha
bb-10.7-upgrade-version
bb-10.7-vicentiu
bb-10.7-vicentiu-MDEV-26242
bb-10.8-C++-14
bb-10.8-C++-14-TODO-3121
bb-10.8-MCOL-4944
bb-10.8-MDEV-13915-mergefix
bb-10.8-MDEV-14425-flush_order_mutex
bb-10.8-MDEV-14481-async-recv
bb-10.8-MDEV-18477
bb-10.8-MDEV-19129
bb-10.8-MDEV-19308
bb-10.8-MDEV-22441-scoped-variable
bb-10.8-MDEV-25342-autosize-innodb-buffer-pool-chunk-size
bb-10.8-MDEV-25719
bb-10.8-MDEV-26238-my-print-defaults
bb-10.8-MDEV-26938
bb-10.8-MDEV-26971
bb-10.8-MDEV-27009-uca-1400
bb-10.8-MDEV-27036
bb-10.8-MDEV-27158-humanize-numbers-innodb
bb-10.8-MDEV-27204
bb-10.8-MDEV-27206
bb-10.8-MDEV-27208-crc32c
bb-10.8-MDEV-27233
bb-10.8-MDEV-27266-MDEV-27265-uca-performance
bb-10.8-MDEV-27849
bb-10.8-MDEV-29043
bb-10.8-MDEV-29934
bb-10.8-MDEV-5816
bb-10.8-MENT-662-tmp
bb-10.8-TODO-3121
bb-10.8-andrei
bb-10.8-bumpversion
bb-10.8-danielblack-MDEV-25282-Auto-shutdown-on-idle-when-socket-activated
bb-10.8-elenst
bb-10.8-georg
bb-10.8-igor
bb-10.8-mcs_lock
bb-10.8-mdev-27106
bb-10.8-mdev-27912
bb-10.8-mdev-29447
bb-10.8-mdev-30370-compare-tests
bb-10.8-mdev-5271
bb-10.8-mdev26996-no-sel-arg-ascending
bb-10.8-mdev27021
bb-10.8-midenok
bb-10.8-monty
bb-10.8-online-alter
bb-10.8-openssl3.0
bb-10.8-robert
bb-10.8-serg
bb-10.8-spetrunia
bb-10.8-vicentiu-mariadbd.pc
bb-10.8-wlad-MDEV-33387
bb-10.9-MDEV-13915-mergefix
bb-10.9-MDEV-17554-auto-create-partition
bb-10.9-MDEV-19281
bb-10.9-MDEV-19281-v2
bb-10.9-MDEV-19281-v3
bb-10.9-MDEV-19281-v4
bb-10.9-MDEV-19281-v5
bb-10.9-MDEV-21423-MDEV-26603
bb-10.9-MDEV-24560
bb-10.9-MDEV-26278
bb-10.9-MDEV-26562-galera
bb-10.9-MDEV-26603-async-redo-write
bb-10.9-MDEV-26971-JSON-status
bb-10.9-MDEV-26971-JSON-status-v2
bb-10.9-MDEV-27021-MDEV-10000-MDEV-27776
bb-10.9-MDEV-27021-MDEV-10000-show-analyze
bb-10.9-MDEV-27246-galera-allowlist
bb-10.9-MDEV-27657
bb-10.9-MDEV-27659
bb-10.9-MDEV-27699
bb-10.9-MDEV-27844
bb-10.9-MDEV-28015-galera
bb-10.9-MDEV-28275
bb-10.9-MDEV-28313-21423-26603
bb-10.9-MDEV-28423-galera
bb-10.9-MDEV-28423-v2
bb-10.9-MDEV-28583
bb-10.9-MDEV-28656-galera
bb-10.9-MDEV-29381
bb-10.9-MDEV-30100
bb-10.9-MDEV-30619-merge
bb-10.9-MDEV-31432
bb-10.9-MDEV-31432-v2
bb-10.9-MDEV-32008
bb-10.9-MDEV-5816-1
bb-10.9-all-builders
bb-10.9-anel-repl-slave_report-v2
bb-10.9-anel-rpl_fix_assert
bb-10.9-danielblack-MDEV-27791-test-postfix
bb-10.9-danielblack-MDEV-27791-test-postfix_2
bb-10.9-danielblack-deb-limited-columnstore-platforms
bb-10.9-danielblack-deb-pkg-fix-pr2112
bb-10.9-deb-autobake-no-lsb_release
bb-10.9-elenst
bb-10.9-georg
bb-10.9-mcs
bb-10.9-mdbf-535-test
bb-10.9-mdev-22979-27095-27233
bb-10.9-mdev-22979-27095-27233-query-ready
bb-10.9-mdev-22979-31400
bb-10.9-mdev-22979-31400-force-ci
bb-10.9-mdev-22979-mysql-func-udf
bb-10.9-mdev-27159
bb-10.9-mdev-27912
bb-10.9-mdev-29447
bb-10.9-mdev-29447-31338
bb-10.9-mdev-29644
bb-10.9-mdev-29644-post-merge-fix
bb-10.9-mdev-31400
bb-10.9-mdev-31401-demo-udf-initialized
bb-10.9-mdev-31421
bb-10.9-mdev-31524
bb-10.9-mdev29382
bb-10.9-midenok
bb-10.9-midenok-MDEV-28931
bb-10.9-midenok-tmp
bb-10.9-post-MDEV-26971
bb-10.9-spetrunia
bb-10.9-sysprg-hashicorp-stats
bb-10.9-vicentiu-reverse-privileges
bb-10.9-ycp-spider
bb-11-5-monty
bb-11-midenok
bb-11.0
bb-11.0-MDEV-16329-online-alter
bb-11.0-MDEV-27871
bb-11.0-MDEV-27871-MDEV-31933
bb-11.0-MDEV-29985
bb-11.0-MDEV-30032
bb-11.0-MDEV-30059
bb-11.0-MDEV-30205-pkgtest-usr-share-mariadb
bb-11.0-MDEV-30318
bb-11.0-MDEV-30318-v2
bb-11.0-MDEV-30944
bb-11.0-MDEV-31022
bb-11.0-MDEV-31022-variant2
bb-11.0-MDEV-31022-variant3
bb-11.0-MDEV-31022-variant4
bb-11.0-MDEV-31793
bb-11.0-MDEV-31793-fix-loosescan-derived
bb-11.0-MDEV-32335
bb-11.0-MDEV-32628-mergefix
bb-11.0-MDEV-33648
bb-11.0-MDEV-5816
bb-11.0-MDEV-8320
bb-11.0-all-builders
bb-11.0-analyze-fixes
bb-11.0-bar-MDEV-15750
bb-11.0-before-feb
bb-11.0-bumpversion
bb-11.0-danielblack-MDEV-30203-pkgtest-symlink-packages
bb-11.0-danielblack-MDEV-30203-pkgtest-symlink-packages-salsa
bb-11.0-danielblack-preview-MDEV-30203-MDEV-30574-MDEV-30571-fix-pkgtest
bb-11.0-danielblack-preview-MDEV-30203-fix
bb-11.0-danielblack-preview-MDEV-30203-fix-pkgtest
bb-11.0-danielblack-preview-MDEV-30203-pkgtest
bb-11.0-danielblack-rpm-fix
bb-11.0-galera-split-wsrep-provider-options
bb-11.0-igor
bb-11.0-jan23-rebase
bb-11.0-jan23-rebase-try2
bb-11.0-jan23-rebase-try3
bb-11.0-mdbf-535-do-not-merge
bb-11.0-mdev-22979
bb-11.0-mdev-22979-bootstrap-test-demo
bb-11.0-mdev-22979-create-handler-no-wait
bb-11.0-mdev-22979-init-query-in-spider-db-init
bb-11.0-mdev-22979-init-spider-last
bb-11.0-mdev-22979-init-spider-last-poc
bb-11.0-mdev-22979-old
bb-11.0-mdev-25292-ycp-spider-maint
bb-11.0-mdev-26137
bb-11.0-mdev-26137-unsquashed
bb-11.0-mdev-26137-wip-alter-import
bb-11.0-mdev-26137-wip-cfg-clone
bb-11.0-mdev-26137-wip-minimal-create-table
bb-11.0-mdev-26247
bb-11.0-mdev-26345
bb-11.0-mdev-27902
bb-11.0-mdev-27912
bb-11.0-mdev-28152
bb-11.0-mdev-28152-alter-value-type
bb-11.0-mdev-28152-longlong-hybrid-class-fields
bb-11.0-mdev-28152-round-2
bb-11.0-mdev-28152-squashed
bb-11.0-mdev-28526
bb-11.0-mdev-28739
bb-11.0-mdev-28992
bb-11.0-mdev-29002
bb-11.0-mdev-29269
bb-11.0-mdev-29363
bb-11.0-mdev-29363-adjust-extraction-flag
bb-11.0-mdev-29363-no-propagate-with-subquery
bb-11.0-mdev-29363-with-subquery-processor
bb-11.0-mdev-29447-31338
bb-11.0-mdev-29502
bb-11.0-mdev-29502-revert-20502
bb-11.0-mdev-29663
bb-11.0-mdev-29676
bb-11.0-mdev-29676-on-mdev-25292
bb-11.0-mdev-29718
bb-11.0-mdev-29962
bb-11.0-mdev-29962-funlck-demo
bb-11.0-mdev-30014
bb-11.0-mdev-30170
bb-11.0-mdev-30265
bb-11.0-mdev-31117
bb-11.0-mdev-31400
bb-11.0-mdev-31421
bb-11.0-mdev-31524
bb-11.0-mdev-31524-failure-why
bb-11.0-mdev-31586
bb-11.0-mdev-31787
bb-11.0-mdev-31996
bb-11.0-mdev-32238
bb-11.0-mdev-32524
bb-11.0-mdev-32524-wrong
bb-11.0-mdev-32609
bb-11.0-mdev-32804
bb-11.0-mdev-32901
bb-11.0-mdev-32901-v2
bb-11.0-mdev-33742
bb-11.0-mdev30310-updated
bb-11.0-mdev30596
bb-11.0-mdev30693
bb-11.0-mdev30956
bb-11.0-mdev31223
bb-11.0-merge-spider-fixup
bb-11.0-midenok
bb-11.0-midenok-MDEV-20865
bb-11.0-midenok-MDEV-25292
bb-11.0-midenok-MDEV-27180
bb-11.0-midenok-MDEV-30421
bb-11.0-midenok-mydumper
bb-11.0-monty
bb-11.0-oalter
bb-11.0-release-mdev30143
bb-11.0-serg
bb-11.0-spetrunia-tmp
bb-11.0-sysschema-optimizer_switch
bb-11.0-tmp
bb-11.0-ycp
bb-11.0-ycp-mdev-26151
bb-11.0-ycp-mdev-26151-exp
bb-11.0-ycp-mdev-26151-hypothesis
bb-11.0-ycp-mdev-26247
bb-11.0-ycp-mdev-26247-disable-gbh
bb-11.0-ycp-mdev-26247-first-table-holder-spider
bb-11.0-ycp-mdev-26247-optimized-away-const-table
bb-11.0-ycp-mdev-26247-remove-spdgbh-const-table-handling
bb-11.0-ycp-mdev-26247-spider-fields-wrong-spider
bb-11.0-ycp-mdev-26247-unsquashed
bb-11.0-ycp-mdev-28998
bb-11.0-ycp-mdev-29502
bb-11.0-ycp-mdev-29963
bb-11.0-ycp-mdev-30014
bb-11.0-ycp-mdev-31586
bb-11.0-ycp-mdev-31996
bb-11.0-ycp-spider
bb-11.0-ycp-spider-mdev-29502
bb-11.0-ycp-spider-mdev-31117
bb-11.0-ycp-spider-mdev-31524
bb-11.1-MDEV-16329-online-alter
bb-11.1-MDEV-26137
bb-11.1-MDEV-27871-MDEV-31933
bb-11.1-MDEV-29911
bb-11.1-MDEV-31005
bb-11.1-MDEV-31599
bb-11.1-MDEV-33533
bb-11.1-MDEV-33533-v2
bb-11.1-MDEV-34649
bb-11.1-all-builders
bb-11.1-bar
bb-11.1-bumpversion
bb-11.1-columnstore
bb-11.1-danielblack-MDEV-25282-Auto-shutdown-on-idle-when-socket-activated-pkgtest
bb-11.1-handle-instant-metadata
bb-11.1-igor
bb-11.1-mdev-22534
bb-11.1-mdev-22534-cleanup
bb-11.1-mdev-22534-cleanup2
bb-11.1-mdev-22534-poc
bb-11.1-mdev-22534-unsquashed-2
bb-11.1-mdev-22979-31400
bb-11.1-mdev-25008
bb-11.1-mdev-25080
bb-11.1-mdev-26137
bb-11.1-mdev-26137-round-9
bb-11.1-mdev-26137-squashed
bb-11.1-mdev-26137-unsquashed
bb-11.1-mdev-26178
bb-11.1-mdev-27201
bb-11.1-mdev-27419
bb-11.1-mdev-27912
bb-11.1-mdev-28363
bb-11.1-mdev-28522
bb-11.1-mdev-29447-31338
bb-11.1-mdev-29502
bb-11.1-mdev-29630
bb-11.1-mdev-29676
bb-11.1-mdev-30435-30981
bb-11.1-mdev-30920
bb-11.1-mdev-31117
bb-11.1-mdev-31400
bb-11.1-mdev-31421
bb-11.1-mdev-31586
bb-11.1-mdev-31788
bb-11.1-mdev-31902
bb-11.1-mdev-32157
bb-11.1-mdev-32238
bb-11.1-mdev-34002
bb-11.1-mdev-34757
bb-11.1-midenok
bb-11.1-monty
bb-11.1-release-fix-debian-columnstore-pkgtest
bb-11.1-remove-save-prep-leaf-tables
bb-11.1-serg
bb-11.1-ycp
bb-11.1-ycp-mdev-22534
bb-11.1-ycp-spider
bb-11.1-ycp-spider-maint
bb-11.2-MDEV-27871
bb-11.2-MDEV-30100
bb-11.2-MDEV-30145
bb-11.2-MDEV-30822-galera
bb-11.2-MDEV-30822-v2-galera
bb-11.2-MDEV-31005
bb-11.2-MDEV-31411
bb-11.2-MDEV-31431
bb-11.2-MDEV-31799
bb-11.2-MDEV-32123
bb-11.2-MDEV-32628-mergefix
bb-11.2-MDEV-33525
bb-11.2-MDEV-33921-mergefix
bb-11.2-MDEV-35072
bb-11.2-MDEV-5816
bb-11.2-bar
bb-11.2-bar-MDEV-33182
bb-11.2-bumpversion
bb-11.2-columnstore
bb-11.2-getcpu-counter
bb-11.2-growt
bb-11.2-innodb-preview
bb-11.2-mdev-22168-hf
bb-11.2-mdev-22534
bb-11.2-mdev-22534-demo-exists2in-loop
bb-11.2-mdev-22534-item-ref-propagate
bb-11.2-mdev-22534-item-ref-propagate-review-fixes
bb-11.2-mdev-22534-item-ref-propagate-unsquashed
bb-11.2-mdev-22534-unpatched-equal-fields
bb-11.2-mdev-22534-unsquashed
bb-11.2-mdev-26137-fix-import-recovery
bb-11.2-mdev-28856
bb-11.2-mdev-28856-static-fallback
bb-11.2-mdev-29502
bb-11.2-mdev-31117
bb-11.2-mdev-31400
bb-11.2-mdev-31524
bb-11.2-mdev-31586
bb-11.2-mdev-31788
bb-11.2-mdev-31788-merge-practice-run
bb-11.2-mdev-32046
bb-11.2-mdev-32157
bb-11.2-mdev-34659
bb-11.2-mdev-35073
bb-11.2-merge
bb-11.2-midenok-MDEV-25495
bb-11.2-midenok-MDEV-27180
bb-11.2-midenok-MDEV-4991
bb-11.2-oalter
bb-11.2-oalter-MDEV-31185
bb-11.2-opentables
bb-11.2-serg
bb-11.2-spetrunia-merge
bb-11.2-thiru
bb-11.2-vicentiu
bb-11.2-ycp
bb-11.2-ycp-mdev-15935
bb-11.2-ycp-mdev-28856
bb-11.2-ycp-mdev-28856-sysvar-option-same
bb-11.3-MDEV-25870
bb-11.3-MDEV-27247-restrict-domains
bb-11.3-MDEV-29167
bb-11.3-MDEV-30953-mariadb-server-galera-pkgtest
bb-11.3-MDEV-31496-sargable-casefold
bb-11.3-MDEV-31496-sargable-casefold-v2
bb-11.3-MDEV-31684
bb-11.3-MDEV-32184
bb-11.3-all-builders
bb-11.3-bar-MDEV-12252
bb-11.3-bar-MDEV-20034
bb-11.3-bar-MDEV-31431
bb-11.3-bar-MDEV-32148
bb-11.3-bumpversion
bb-11.3-elenst
bb-11.3-georg
bb-11.3-mdev-15935
bb-11.3-mdev-22534
bb-11.3-mdev-22534-item-ref-no-direct
bb-11.3-mdev-22534-ps-fix2
bb-11.3-mdev-27576
bb-11.3-mdev-28856
bb-11.3-mdev-28856-and-fixes
bb-11.3-mdev-28856-delete-all-rows
bb-11.3-mdev-31996
bb-11.3-mdev-32234
bb-11.3-mdev-32254
bb-11.3-mdev-32486
bb-11.3-mdev-32568
bb-11.3-mdev-32640
bb-11.3-mdev-32640-commented-global
bb-11.3-mdev19177-hf
bb-11.3-merge
bb-11.3-mini-MDEV-31431
bb-11.3-monty
bb-11.3-release-ycp-fix
bb-11.3-serg
bb-11.3-timestamp
bb-11.3-vicentiu
bb-11.3-ycp-mdev-15935
bb-11.3-ycp-mdev-28856
bb-11.4-MCOL-6069
bb-11.4-MDEV-18478
bb-11.4-MDEV-18478-v2
bb-11.4-MDEV-18478-v3
bb-11.4-MDEV-18478-v4
bb-11.4-MDEV-18478-v4-MDEV-12404
bb-11.4-MDEV-27871-MDEV-31933
bb-11.4-MDEV-29981-merge
bb-11.4-MDEV-30073-8.3
bb-11.4-MDEV-30260-mergefix
bb-11.4-MDEV-30366-bulk-results
bb-11.4-MDEV-30366-bulk-results-2
bb-11.4-MDEV-30469
bb-11.4-MDEV-30469-goose
bb-11.4-MDEV-30877-v3
bb-11.4-MDEV-31404
bb-11.4-MDEV-31855-ssl
bb-11.4-MDEV-31933
bb-11.4-MDEV-32216-parallel-mysqldump
bb-11.4-MDEV-32575
bb-11.4-MDEV-32694
bb-11.4-MDEV-32841
bb-11.4-MDEV-33436
bb-11.4-MDEV-33500-v2-mergefix
bb-11.4-MDEV-33640
bb-11.4-MDEV-34122-mergefix
bb-11.4-MDEV-34200
bb-11.4-MDEV-34322
bb-11.4-MDEV-34348-merge-fix
bb-11.4-MDEV-34408-effcplusplus_warning_test
bb-11.4-MDEV-34649
bb-11.4-MDEV-34779
bb-11.4-MDEV-34877
bb-11.4-MDEV-35342
bb-11.4-MDEV-35694-merge
bb-11.4-MDEV-35958
bb-11.4-MDEV-35969-galera
bb-11.4-MDEV-36321-review-input
bb-11.4-MDEV-36389-review-input
bb-11.4-MDEV-36462
bb-11.4-MDEV-36663-mergefix
bb-11.4-MDEV-36809
bb-11.4-MDEV-36843-galera
bb-11.4-MDEV-36861
bb-11.4-MDEV-37143
bb-11.4-MDEV-37680-danblack-pkgtest
bb-11.4-MDEV-37723-try2
bb-11.4-MDEV-37864
bb-11.4-MDEV-7850
bb-11.4-MDEV-7850-galera-testfix
bb-11.4-add-columnstore-mtr-pkgtest
bb-11.4-all-builders
bb-11.4-andrei
bb-11.4-anel-MDEV-31404
bb-11.4-anel-check-bb
bb-11.4-bar
bb-11.4-bar-MDEV-12252
bb-11.4-bar-MDEV-20034
bb-11.4-bar-MDEV-20912
bb-11.4-bar-MDEV-25829
bb-11.4-bar-MDEV-31340
bb-11.4-bar-MDEV-31531
bb-11.4-bar-MDEV-32380
bb-11.4-bar-MDEV-33386
bb-11.4-bar-MDEV-33428
bb-11.4-bar-MDEV-33729
bb-11.4-bar-MDEV-34085
bb-11.4-bar-MDEV-35688
bb-11.4-bar-MDEV-36047
bb-11.4-bar-MDEV-36053
bb-11.4-bar-MDEV-36213
bb-11.4-bar-MDEV-36216
bb-11.4-bar-MDEV-36361
bb-11.4-bar-MDEV-36390
bb-11.4-bar-MDEV-36565
bb-11.4-bar-m35677
bb-11.4-bumpversion
bb-11.4-compatibility
bb-11.4-danblack-MCOL-5825-selinux-test-pkgtest
bb-11.4-elenst
bb-11.4-georg
bb-11.4-julius-galera
bb-11.4-knielsen
bb-11.4-mdev-15696
bb-11.4-mdev-27186
bb-11.4-mdev-27260
bb-11.4-mdev-27576-preview
bb-11.4-mdev-27998
bb-11.4-mdev-28105
bb-11.4-mdev-28152
bb-11.4-mdev-28861
bb-11.4-mdev-28861-old
bb-11.4-mdev-28861-warning-demo
bb-11.4-mdev-31788
bb-11.4-mdev-32627
bb-11.4-mdev-32627-empty-check-ci
bb-11.4-mdev-32627-empty-check-ci-2
bb-11.4-mdev-32640
bb-11.4-mdev-32856-preview
bb-11.4-mdev-32999
bb-11.4-mdev-33190-hf
bb-11.4-mdev-33608
bb-11.4-mdev-34272
bb-11.4-mdev-34272-options
bb-11.4-mdev-34272-socket-length
bb-11.4-mdev-35783-debug
bb-11.4-mdev-35840
bb-11.4-mdev-36323
bb-11.4-mdev-37193
bb-11.4-mdev-37484
bb-11.4-mdev-37484-spider-federatedx
bb-11.4-mdev-37810
bb-11.4-mdev-38164
bb-11.4-mdev12404-asserts
bb-11.4-merge
bb-11.4-midenok
bb-11.4-midenok-MDEV-16417
bb-11.4-midenok-MDEV-20865
bb-11.4-midenok-MDEV-30973
bb-11.4-monty
bb-11.4-nikita
bb-11.4-nikita-merge
bb-11.4-no-capabilities-pkgtest
bb-11.4-parallel-mysqldump
bb-11.4-pr2726-MDEV-19210-environment-file-pkgtest
bb-11.4-release
bb-11.4-release-julius
bb-11.4-serg
bb-11.4-sts-crd
bb-11.4-testMDEV-32441
bb-11.4-thiru
bb-11.4-timestamp
bb-11.4-timestamp-windows
bb-11.4-timofey1
bb-11.4-todo-5687
bb-11.4-vec
bb-11.4-vec-intel
bb-11.4-vec-vicentiu
bb-11.4-vec-vicentiu-hugo
bb-11.4-wlad
bb-11.4-wlad-MDEV-33474
bb-11.4-ycp-fix
bb-11.4-ycp-fixup
bb-11.4.3-mdev-34925
bb-11.4.6-histogram-getter
bb-11.5-MDEV-18478
bb-11.5-MDEV-31005
bb-11.5-MDEV-32854
bb-11.5-MDEV-33144-slow-query-log-always-write-time
bb-11.5-MDEV-33188-multithreaded-dump
bb-11.5-MDEV-33625
bb-11.5-MDEV-33677-galera
bb-11.5-MDEV-33988-delete-table-alias-pkgtest
bb-11.5-all-builders
bb-11.5-andrei
bb-11.5-bar
bb-11.5-bar-MDEV-11339
bb-11.5-bar-MDEV-12668
bb-11.5-bar-MDEV-19123
bb-11.5-bar-MDEV-20610
bb-11.5-bar-MDEV-25829
bb-11.5-bar-MDEV-30716
bb-11.5-bar-MDEV-31340
bb-11.5-bar-MDEV-31531
bb-11.5-bar-MDEV-33281
bb-11.5-bar-MDEV-33281-v2
bb-11.5-bar-MDEV-33621
bb-11.5-bar-MDEV-33696
bb-11.5-bar-MDEV-33827
bb-11.5-bar-MDEV-34025
bb-11.5-bar-preview
bb-11.5-bumpversion
bb-11.5-elenst
bb-11.5-hints
bb-11.5-hints-bar-parser-v2
bb-11.5-hints-bar-parser-v3
bb-11.5-mdev-22168
bb-11.5-mdev-28152
bb-11.5-mdev-30929-sleep
bb-11.5-mdev-30929-wait-and-die
bb-11.5-mdev-30929-wait-and-retry
bb-11.5-mdev-31609
bb-11.5-mdev-31789
bb-11.5-mdev-31789-gold
bb-11.5-mdev-33734
bb-11.5-mdev-33739
bb-11.5-mdev-33836
bb-11.5-mdev-34404
bb-11.5-mdev-34518
bb-11.5-mdev-34745-init-val
bb-11.5-mdev12404-extras
bb-11.5-midenok
bb-11.5-monty
bb-11.5-monty2
bb-11.5-opentables
bb-11.5-opentables-2
bb-11.5-opentables-further
bb-11.5-opentables-mysyshash
bb-11.5-opentables-testlab
bb-11.5-serg
bb-11.5-timestamp
bb-11.5-ycp-mtr-ubsan-overflow
bb-11.6-2-hf
bb-11.6-MDEV-12320
bb-11.6-MDEV-19191-fk_partitioning
bb-11.6-MDEV-27293-sysver
bb-11.6-MDEV-31809-galera
bb-11.6-MDEV-32618-auth-plugin
bb-11.6-MDEV-33697
bb-11.6-MDEV-33748
bb-11.6-MDEV-33748-2
bb-11.6-MDEV-33856-bnestere
bb-11.6-MDEV-33856-seconds_behind_master
bb-11.6-MDEV-34551
bb-11.6-MDEV-34649
bb-11.6-MDEV-34704
bb-11.6-all-builders
bb-11.6-bar
bb-11.6-bar-34817
bb-11.6-bar-MDEV-12252
bb-11.6-bar-MDEV-15751
bb-11.6-bar-MDEV-19123
bb-11.6-bar-MDEV-27277
bb-11.6-bar-MDEV-34829
bb-11.6-bar-MDEV-34922
bb-11.6-bar-MDEV-35041
bb-11.6-bumpversion
bb-11.6-fix-is-test
bb-11.6-hf
bb-11.6-hints-max-exec-time-v2
bb-11.6-hints-max-exec-time-v3
bb-11.6-hints-max-exec-time-v3-review
bb-11.6-hints-v2
bb-11.6-hints-v2-input
bb-11.6-hints-v2-input2
bb-11.6-mdev-15696
bb-11.6-mdev-22168-hf
bb-11.6-mdev-22168-test-hf
bb-11.6-mdev-25008
bb-11.6-mdev-28009
bb-11.6-mdev-32492-27902-29962
bb-11.6-mdev-34518
bb-11.6-mdev-34757
bb-11.6-mdev-35041
bb-11.6-mdev20250-hf
bb-11.6-midenok
bb-11.6-midenok-MDEV-16417
bb-11.6-monty
bb-11.6-parsec
bb-11.6-pkgtest
bb-11.6-release-spider-ptr-fix
bb-11.6-remove-save-prep-leaf-tables
bb-11.6-serg
bb-11.6-vicentiu
bb-11.6-vicentiu-wip
bb-11.6-wlad
bb-11.7-MDEV-15751-timestamp
bb-11.7-MDEV-19191-fk_partitioning
bb-11.7-MDEV-20153
bb-11.7-MDEV-27293-sysver
bb-11.7-MDEV-30908-session-user
bb-11.7-MDEV-31005-fix
bb-11.7-MDEV-31466
bb-11.7-MDEV-33144-slow-query-log-always-write-time
bb-11.7-MDEV-33710-uuid
bb-11.7-MDEV-33756
bb-11.7-MDEV-34930
bb-11.7-MDEV-35793
bb-11.7-MDEV-35939
bb-11.7-MDEV-36057
bb-11.7-MDEV-6017-variant3
bb-11.7-all-builders
bb-11.7-bar-MDEV-12252-sp-row
bb-11.7-bar-MDEV-34317-ora-record
bb-11.7-bar-MDEV-34817
bb-11.7-bar-MDEV-35229
bb-11.7-bar-MDEV-35250
bb-11.7-bnestere
bb-11.7-bumpversion
bb-11.7-check-table
bb-11.7-cset-narrowing-on
bb-11.7-knielsen
bb-11.7-mdev-15696
bb-11.7-mdev-15696-before-squash
bb-11.7-mdev-24813-debug
bb-11.7-mdev-25008
bb-11.7-mdev-28009
bb-11.7-mdev-30576
bb-11.7-mdev-34120-gis-functions
bb-11.7-mdev-34872
bb-11.7-mdev-34915
bb-11.7-mdev-34915-old-format
bb-11.7-mdev-35318
bb-11.7-mdev-35318-just-reprepare
bb-11.7-mdev-35318-own-reprepare-system
bb-11.7-mdev-35557
bb-11.7-mdev-35662
bb-11.7-mdev-36080
bb-11.7-merge
bb-11.7-parsec
bb-11.7-serg
bb-11.7-spetrunia-tmp
bb-11.7-wlad
bb-11.7-xaxa
bb-11.7-xaxaxa
bb-11.7.release
bb-11.8-MDEV-10164
bb-11.8-MDEV-14091
bb-11.8-MDEV-30877
bb-11.8-MDEV-30877-v2
bb-11.8-MDEV-30877-v3
bb-11.8-MDEV-31933
bb-11.8-MDEV-33603-nossl-socket
bb-11.8-MDEV-33677-galera
bb-11.8-MDEV-34551
bb-11.8-MDEV-34699-vector-arm
bb-11.8-MDEV-34724
bb-11.8-MDEV-34822-galera
bb-11.8-MDEV-34979
bb-11.8-MDEV-35155
bb-11.8-MDEV-35450-vec_distance
bb-11.8-MDEV-35694-merge
bb-11.8-MDEV-36079
bb-11.8-MDEV-36390
bb-11.8-MDEV-36398
bb-11.8-MDEV-36474
bb-11.8-MDEV-36527-galera
bb-11.8-MDEV-37463
bb-11.8-MDEV-37732
bb-11.8-MDEV-6017-variant3
bb-11.8-MDEV-7850-opt
bb-11.8-MDEV-9101_err
bb-11.8-MDEV-9158-file-key-manager
bb-11.8-MDEV30877
bb-11.8-add-columnstore-mtr-pkgtest
bb-11.8-all-builders
bb-11.8-av-MDEV-19123-fixup
bb-11.8-bar-MDEV-10862-opt-params
bb-11.8-bar-MDEV-22217-utf8mb4
bb-11.8-bar-MDEV-31736-format_bytes
bb-11.8-bar-MDEV-34189
bb-11.8-bar-MDEV-34317
bb-11.8-bar-MDEV-36322
bb-11.8-bar-MDEV-37849
bb-11.8-bar-MDEV-MDEV-26115
bb-11.8-bumpversion
bb-11.8-check-table
bb-11.8-dbart
bb-11.8-identity
bb-11.8-innodb-ahi-cursor
bb-11.8-knielsen
bb-11.8-mdev-22491
bb-11.8-mdev-30469
bb-11.8-mdev-34680-custom-hf
bb-11.8-mdev-34680-hf
bb-11.8-mdev-34911
bb-11.8-mdev-34911-plus-cleanup
bb-11.8-mdev-34911-review
bb-11.8-mdev-35323
bb-11.8-mdev-35662
bb-11.8-mdev-35866-rnd-next-twice
bb-11.8-mdev-36080
bb-11.8-mdev-36087
bb-11.8-mdev-36758
bb-11.8-mdev-36791
bb-11.8-mdev-37723
bb-11.8-mdev-37810
bb-11.8-midenok
bb-11.8-midenok-merge
bb-11.8-midenok-merge2
bb-11.8-monty
bb-11.8-monty-fix-get-examined-rows
bb-11.8-monty-mdl_name
bb-11.8-monty2
bb-11.8-monty3
bb-11.8-nikita-global-tmp
bb-11.8-no-parameterless-new
bb-11.8-release
bb-11.8-serg
bb-11.8-sn
bb-11.8-sn-av
bb-11.8-sn-av2
bb-11.8-wlad
bb-11.9-mdev-22168-hf
bb-12.0-MDEV-10164
bb-12.0-MDEV-20022
bb-12.0-MDEV-20065-galera
bb-12.0-MDEV-20299-authorization
bb-12.0-MDEV-20299-sudo
bb-12.0-MDEV-29981-merge
bb-12.0-MDEV-33834-audit
bb-12.0-MDEV-34822-fk-ist
bb-12.0-MDEV-35856-index-hints-v2-ycp-cleanup
bb-12.0-MDEV-36077-galera
bb-12.0-MDEV-36484-rename
bb-12.0-MDEV-36675-is-error
bb-12.0-MDEV-37035-timeout
bb-12.0-bar-MDEV-20022
bb-12.0-bar-MDEV-20022-v1
bb-12.0-bar-MDEV-20034
bb-12.0-bar-MDEV-34319
bb-12.0-bar-MDEV-36503
bb-12.0-bar-MDEV-36705
bb-12.0-bar-MDEV-36716
bb-12.0-bumpversion
bb-12.0-mdev-21376-hf
bb-12.0-mdev-22491-35866-no-36032
bb-12.0-mdev-22491-36032-35866
bb-12.0-mdev-32732
bb-12.0-mdev-32732-demo-remove-null-range
bb-12.0-mdev-34120-gis-functions
bb-12.0-mdev-34680-hf
bb-12.0-mdev-34680x2-hf
bb-12.0-mdev-34712
bb-12.0-mdev-35866
bb-12.0-mdev-36032
bb-12.0-mdev-36032-check-on-writing
bb-12.0-mdev-37099-hf
bb-12.0-mdev-37131-hf
bb-12.0-nikita-autoinc-lite
bb-12.0-nikita-global-tmp
bb-12.0-release
bb-12.0-serg
bb-12.0-unstable-join-order
bb-12.1-MDEV-20065-galera
bb-12.1-MDEV-20065-v2-galera
bb-12.1-MDEV-31949_part_III
bb-12.1-MDEV-32830_xa
bb-12.1-MDEV-35617
bb-12.1-MDEV-35617-drop-user
bb-12.1-MDEV-36077-galera
bb-12.1-MDEV-36077-v2-galera
bb-12.1-MDEV-36205-subdist
bb-12.1-MDEV-36483-review-input
bb-12.1-MDEV-9804-sha2
bb-12.1-andrei
bb-12.1-bar-MDEV-20022
bb-12.1-bar-MDEV-33830
bb-12.1-bar-MDEV-33830-oldway
bb-12.1-bar-MDEV-36053
bb-12.1-bar-MDEV-36053-v2
bb-12.1-bar-MDEV-37319
bb-12.1-bar-MDEV-37408
bb-12.1-bar-MDEV-37430
bb-12.1-bar-MDEV-37863
bb-12.1-bumpver
bb-12.1-bumpversion
bb-12.1-columnstore-23.10
bb-12.1-elenst
bb-12.1-elenst-MDEV-19749-MDL
bb-12.1-elenst-MDEV-36205-subdist
bb-12.1-mdev-28792
bb-12.1-mdev-36132
bb-12.1-mdev-36132-base
bb-12.1-mdev-36132-covering
bb-12.1-mdev-36132-group-by
bb-12.1-mdev-36132-keyread-with-vcol
bb-12.1-mdev-36132-replace-all-fields-item
bb-12.1-mdev-36132-subst
bb-12.1-mdev-36132-subst-covering
bb-12.1-mdev-36132-try-fix-covering
bb-12.1-mdev-36132-wip
bb-12.1-mdev-36132-wip-fixes
bb-12.1-mdev-37178
bb-12.1-mdev-37252
bb-12.1-mdev-37422
bb-12.1-mdev-37422-dedup-1
bb-12.1-mdev-37422-reinit-rollup
bb-12.1-mdev-37422-v2
bb-12.1-mdev-37422-v3
bb-12.1-mdev-37435
bb-12.1-mdev-38040-demo
bb-12.1-monty
bb-12.1-monty-MDEV-20023
bb-12.1-release
bb-12.1-serg
bb-12.1-spetrunia
bb-12.1-ycp-fixup
bb-12.2-MDEV-37082
bb-12.2-MDEV-38240
bb-12.2-MDEV-38272
bb-12.2-MDEV-38295
bb-12.2-audit-version
bb-12.2-bar-MDEV-10152
bb-12.2-bar-MDEV-10152-old
bb-12.2-bar-MDEV-10152-old00
bb-12.2-bar-MDEV-10152-old01
bb-12.2-bar-MDEV-20022
bb-12.2-bar-MDEV-38109
bb-12.2-bar-MDEV-38161
bb-12.2-bar-MDEV-38162
bb-12.2-bar-MDEV-38249
bb-12.2-bumpversion
bb-12.2-frm-staging
bb-12.2-mdev-36055
bb-12.2-mdev-36055-basic
bb-12.2-mdev-36055-check-mdev-36331
bb-12.2-mdev-36055-graph
bb-12.2-mdev-36055-limit-heuristic-pruning
bb-12.2-mdev-36055-prune-level-0
bb-12.2-mdev-37261-hf
bb-12.2-mdev-38040
bb-12.2-mdev38164
bb-12.2-nikita-global-tmp
bb-12.2-release
bb-12.2-serg
bb-12.3-MDEV-10267-ngram
bb-12.3-MDEV-19683-to_date
bb-12.3-MDEV-34391-path
bb-12.3-MDEV-34723
bb-12.3-MDEV-37072
bb-12.3-MDEV-38212
bb-12.3-andrei
bb-12.3-bar-MDEV-33830
bb-12.3-bar-MDEV-37261
bb-12.3-knielsen
bb-12.3-mdev-37261-hf
bb-12.3-mdev-37261-hf-v0
bb-12.3-serg
bb-12.3_MDEV-28212
bb-12.3_MDEV-38212
bb-14005-hf
bb-19248-libmariadb
bb-19248-libmariadb.bak.1
bb-MDEV-17856
bb-MDEV-21092-21095-29997-optimizer-trace-updates
bb-MDEV-24-monty
bb-MDEV-36234-wlad
bb-MDEV-7487-rebased-against-11.0.1
bb-MDEV-7487-rebased-against-11.0.1-MDEV-29390-test
bb-MDEV-9804-wolfssl-fixes
bb-MDEV14101
bb-ahi-monty
bb-hf-10.4-mdev7974
bb-hf-sup25102
bb-json_depth-rucha
bb-linuxjedi-mdev-33479
bb-main-MDEV-13817
bb-main-MDEV-13817-2
bb-main-MDEV-13817-2-ycp-review
bb-main-MDEV-13817-review-input
bb-main-MDEV-31741
bb-main-MDEV-33387
bb-main-MDEV-36830
bb-main-MDEV-37339
bb-main-MDEV-37339-2
bb-main-ahi
bb-main-all-builders
bb-main-mdev-27260
bb-main-mdev-27260-any-item-processor
bb-main-mdev-27260-unsquashed
bb-main-mdev-32907
bb-main-mdev-37110
bb-main-mdev-37111
bb-main-mdev-37114
bb-main-mdev-37193
bb-main-mdev-37193-demo
bb-main-mdev-37193-unsquashed
bb-main-mdev-37330
bb-main-mdev-37330-assert
bb-main-mdev-37330-reverse-index
bb-main-mdev-37435
bb-main-mdev-9826-option-2
bb-main-mdev-9826-v2
bb-main-mdev-9826-v3
bb-main-mdev-9826-v4
bb-main-mdev-9826-wip
bb-main-midenok-MDEV-16417
bb-main-midenok-MDEV-16417-rebase
bb-main-midenok-MDEV-16417-refactorings
bb-main-midenok-MDEV-19191
bb-main-midenok-MDEV-25292
bb-main-midenok-MDEV-37008
bb-main-monty
bb-main-release
bb-main-thiru
bb-main-vicentiu-test-bb
bb-main-vicentiu-uniques
bb-main-vicentiu-uniques-rebase
bb-main-wlad-denies
bb-main-ycp
bb-maria-s3
bb-mcs-10.9
bb-mdev-10.5-mdev-32180
bb-mdev-14472
bb-mdev-31766-hf
bb-mdev-36132-demo
bb-mdev21211-hf
bb-nikita-MDEV-16440
bb-opt-hints-1
bb-opt-hints-1-cleanup
bb-pr-689
bb-pr-774
bb-sup37463
bb-wip-11.4-mdev-12404
bb-wlad-main
bb_mdev14101
chk-11.0-merge
clone_changes_thiru
clone_history
codership-10.4-MDEV-21697
codership-10.4-MDEV-22227
codership-sst-ssl-fixes-10.2
columnstore_cache
detached
fk_in_progress
fk_list_span
for_vanislavskiy
for_vanislavskiy_speedup
hf-10.11.11-mdev16253-rocksdb-6.29fb
hf-10.5-10.5.22-MDEV-25163
hf-10.6-10.6.10-auth-pam
hf-10.6-10.6.11-pkgtest-MDEV-31185-pins
hf-10.6-10.6.12-MDEV-30165
hf-s25102
howard0su-10.2
https/jira.mariadb.org/browse/MDEV-11588
ib_fix_plugin_init
jan-MDEV-29171-galera
kakurin_sampling
knielsen-binlog-in-engine-xa
knielsen-mdev36934-10.11
knielsen-mdev36934-10.6
knielsen_alt_domain_wait
knielsen_binlog_in_engine
knielsen_binlog_in_engine_11.8
knielsen_binlog_in_engine_12.3
knielsen_binlog_in_engine_semisync
knielsen_catalog_rpl
knielsen_detect_non_trans_optimistic
knielsen_fixes_12.0
knielsen_mdev22351
knielsen_mdev24948
knielsen_mdev31949_review
knielsen_mdev32020
knielsen_mdev32673
knielsen_mdev35643
knielsen_mdev35643_11.4
knielsen_mdev36137_10.11
knielsen_mdev36137_10.4
knielsen_mdev37606_dll_crash_safe_slave
knielsen_rpl_fixes_10.6
knielsen_rpl_fixes_11.8
knielsen_rpl_print_deadlocks
knielsen_rpl_print_deadlocks-10.5
knielsen_start_alter
knielsen_xa_sched_minimal_fix
leblanc-10.5-cs
main
main-MDEV-19574
main-MDEV-28730
main-MDEV-31741
main-MDEV-32570
main-MDEV-32570-preview
main-MDEV-34705-bnestere-mtr-additions
main-MDEV-35248
main-MDEV-36290
main-MDEV-36733
main-MDEV-37487-mysqlbinlog_slave_consistency
main-MDEV-38117
main-spetrunia-tmp
main-vicentiu
main-wlad-denies
maria-s3
mdev-13625
mdev-13626
mdev-17856.tmp
mdev-18983
mdev-18983.px5.bak
mdev-19248
mdev-23077
mdev-24813
mdev-35474
mdev-35599
mdev-35599.dup_bounds_error
mdev-35879.test
mdev-35948-replicate
mdev-36245-hf
mdev-36839
mdev-37102
mdev-37116
merge-10.11-MDEV-33668
midenok-tmp
nc-10.11-merge-spider
nikita-11.4-MDEV-33049
nikita-autoinc
nikita-autoinc-lite
nikita/MDEV-25774
nikita/periods-fk-rebase
nm/period-fk-fallback
nm/period-fk-linear
nm/replace
nm/versioning-combinatoin
nm/without-overlaps-rebased
nn-10.10-merge
nn-10.11-merge
nn-10.5-merge
nn-10.6-merge
nn-11.0-merge
nn-11.1-merge
nn-11.2-merge
nn-11.3-merge
ok-10.2-connect-no-new-files-in-stable-releases
orig-12.0-mdev-36167-gis-assertion-reset-field
origin/bb-10.3-MDEV-21117
pkcg
preview-12.0-preview
preview-12.1-preview
preview-12.2-preview
preview-12.3-preview
prot-st-10.2-vicentiu
px5-rpl-filter
px5-rpl-filter.sysvar-member.bak
px5-rpl-filter.tmp
px5.mdev-35758
px5.mysqld_error_find_printf_error
px5.pull_request_template
px5.sss_inc_vars
px5.yes_san
qa-11.7-MDEV-32014
qa-11.7-MDEV-34857
queue-v1
raw-10.6-MDEV-16983-period-fk
review-11.4-MDEV-33049
review__knielsen_xa_sched_minimal_fix
rpl_start-stop_inc
scope_exit
selectivity-10.7-rbz
st-10.11-MDEV-31953
st-10.11-MDEV-34422
st-10.11-julius
st-10.11-knielsen
st-10.11-merge
st-10.11-merge-draft
st-10.11-merge-wip
st-10.11-wlad
st-10.2-danielblack-MDEV-27279-mariadb-upgrade-check-if-needed
st-10.4-anel-MDEV-22486-mysql_secure_installation
st-10.4-julius
st-10.4-merge-julius
st-10.5-MDEV-10962-deadlock-deletes
st-10.5-julius
st-10.5-vicentiu
st-10.6-MDEV-10962-deadlock-deletes
st-10.6-MDEV-29575-is_crash
st-10.6-julius
st-10.6-julius-galera
st-10.6-julius-v2
st-10.6-merge-julius
st-10.6-vicentiu
st-11.1-merge-fix
st-11.2-thiru
st-11.4-MDEV-34388
st-11.4-julius
st-11.4-merge-julius
st-11.4-merge-spider-fixup
st-11.4-wlad
st-11.6-vlad-test
st-11.6-wlad
st-12.0-merge-julius
st-12.1-MDEV-33966
sup-37643-hf
svoj-szworkshop
svoj-workshop
szworkshop
tmp_sachin
tst-10.8-elenst
vice-1
vicentiu-deny-command
vicentiu-docker
vicentiu-filter-2
vicentiu-tmp
wip-11.4-mdev-12404
xx.x-mdev-12513-INTERVAL-data-type
base_4_16217
beta-3.23.23
clone-4.0.25-build
clone-4.0.26-build
clone-4.0.27-build
clone-4.0.28-build
clone-4.0.29-build
clone-4.0.30-build
clone-4.1.12-build
clone-4.1.13-build
clone-4.1.14-build
clone-4.1.15-build
clone-4.1.16-build
clone-4.1.17-build
clone-4.1.18-build
clone-4.1.19-build
clone-4.1.21-build
clone-4.1.22-build
clone-4.1.23-build
clone-4.1.24-build
clone-4.1.25-build
clone-5.0.10-build
clone-5.0.11-build
clone-5.0.12-build
clone-5.0.13-build
clone-5.0.14-build
clone-5.0.15-build
clone-5.0.16-build
clone-5.0.17-build
clone-5.0.18-build
clone-5.0.19-build
clone-5.0.20-build
clone-5.0.21-build
clone-5.0.23-build
clone-5.0.24-build
clone-5.0.25-build
clone-5.0.26-build
clone-5.0.3-build
clone-5.0.30-build
clone-5.0.32-build
clone-5.0.34-build
clone-5.0.36-build
clone-5.0.37-build
clone-5.0.38-build
clone-5.0.4-build
clone-5.0.40-build
clone-5.0.41-build
clone-5.0.42-build
clone-5.0.44-build
clone-5.0.45-build
clone-5.0.46-build
clone-5.0.48-build
clone-5.0.5-build
clone-5.0.50-build
clone-5.0.51-build
clone-5.0.52-build
clone-5.0.54-build
clone-5.0.56-build
clone-5.0.58-build
clone-5.0.6-build
clone-5.0.60-build
clone-5.0.60sp1-build
clone-5.0.62-build
clone-5.0.64-build
clone-5.0.66-build
clone-5.0.66sp1-build
clone-5.0.67-build
clone-5.0.68-build
clone-5.0.7-build
clone-5.0.70-build
clone-5.0.72-build
clone-5.0.72sp1-build
clone-5.0.74-build
clone-5.0.74sp1-build
clone-5.0.75-build
clone-5.0.76-build
clone-5.0.78-build
clone-5.0.79-build
clone-5.0.8-build
clone-5.0.80-build
clone-5.0.81-build
clone-5.0.82-build
clone-5.0.83-build
clone-5.0.84-build
clone-5.0.85-build
clone-5.0.86-build
clone-5.0.87-build
clone-5.0.88-build
clone-5.0.89-build
clone-5.0.9-build
clone-5.0.90-build
clone-5.0.91-build
clone-5.0.92-build
clone-5.0.93-build
clone-5.0.94-build
clone-5.0.95-build
clone-5.0.96-build
clone-5.1.0-build
clone-5.1.1-build
clone-5.1.10-build
clone-5.1.11-build
clone-5.1.12-build
clone-5.1.13-build
clone-5.1.14-build
clone-5.1.15-build
clone-5.1.16-build
clone-5.1.17-build
clone-5.1.18-build
clone-5.1.19-build
clone-5.1.20-build
clone-5.1.21-build
clone-5.1.22-build
clone-5.1.23-build
clone-5.1.23a-maria-alpha-build
clone-5.1.24-build
clone-5.1.25-build
clone-5.1.26-build
clone-5.1.27-build
clone-5.1.28-build
clone-5.1.29-build
clone-5.1.3-build
clone-5.1.30-build
clone-5.1.31-build
clone-5.1.31-pv-0.2.0-build
clone-5.1.32-build
clone-5.1.33-build
clone-5.1.34-build
clone-5.1.35-build
clone-5.1.36-build
clone-5.1.37-build
clone-5.1.38-build
clone-5.1.39-build
clone-5.1.4-build
clone-5.1.40-build
clone-5.1.41-build
clone-5.1.42-build
clone-5.1.43-build
clone-5.1.44-build
clone-5.1.45-build
clone-5.1.46-build
clone-5.1.47-build
clone-5.1.48-build
clone-5.1.49-build
clone-5.1.5-build
clone-5.1.50-build
clone-5.1.51-build
clone-5.1.52-build
clone-5.1.53-build
clone-5.1.54-build
clone-5.1.55-build
clone-5.1.56-build
clone-5.1.57-build
clone-5.1.58-build
clone-5.1.59-build
clone-5.1.6-build
clone-5.1.60-build
clone-5.1.61-build
clone-5.1.62-build
clone-5.1.63-build
clone-5.1.65-build
clone-5.1.66-build
clone-5.1.67-build
clone-5.1.68-build
clone-5.1.69-build
clone-5.1.7-build
clone-5.1.70-build
clone-5.1.71-build
clone-5.1.72-build
clone-5.1.73-build
clone-5.1.8-build
clone-5.4.0-build
clone-5.4.1-build
clone-5.4.2-build
clone-5.4.3-build
clone-5.5.0-build
clone-5.5.1-build
clone-5.5.10-build
clone-5.5.11-build
clone-5.5.12-build
clone-5.5.13-build
clone-5.5.14-build
clone-5.5.15-build
clone-5.5.17-build
clone-5.5.18-build
clone-5.5.19-build
clone-5.5.2-m2-build
clone-5.5.20-build
clone-5.5.21-build
clone-5.5.22-build
clone-5.5.23-build
clone-5.5.24-build
clone-5.5.25-build
clone-5.5.27-build
clone-5.5.28-build
clone-5.5.29-build
clone-5.5.3-build
clone-5.5.30-build
clone-5.5.31-build
clone-5.5.32-build
clone-5.5.33-build
clone-5.5.34-build
clone-5.5.35-build
clone-5.5.36-build
clone-5.5.5-m3-build
clone-5.5.6-m3-build
clone-5.5.7-rc-build
clone-5.5.8-build
clone-5.5.9-build
import-bdb-4.3.28
import-bdb-4.4.16
import-readline-5.0
import-zlib-1.2.3
mariadb-10.0.0
mariadb-10.0.1
mariadb-10.0.10
mariadb-10.0.11
mariadb-10.0.12
mariadb-10.0.13
mariadb-10.0.14
mariadb-10.0.15
mariadb-10.0.16
mariadb-10.0.17
mariadb-10.0.18
mariadb-10.0.19
mariadb-10.0.2
mariadb-10.0.20
mariadb-10.0.21
mariadb-10.0.22
mariadb-10.0.23
mariadb-10.0.24
mariadb-10.0.25
mariadb-10.0.26
mariadb-10.0.27
mariadb-10.0.28
mariadb-10.0.29
mariadb-10.0.3
mariadb-10.0.30
mariadb-10.0.31
mariadb-10.0.32
mariadb-10.0.33
mariadb-10.0.34
mariadb-10.0.35
mariadb-10.0.36
mariadb-10.0.37
mariadb-10.0.38
mariadb-10.0.4
mariadb-10.0.5
mariadb-10.0.6
mariadb-10.0.7
mariadb-10.0.8
mariadb-10.0.9
mariadb-10.1.0
mariadb-10.1.1
mariadb-10.1.10
mariadb-10.1.11
mariadb-10.1.12
mariadb-10.1.13
mariadb-10.1.14
mariadb-10.1.15
mariadb-10.1.16
mariadb-10.1.17
mariadb-10.1.18
mariadb-10.1.19
mariadb-10.1.2
mariadb-10.1.20
mariadb-10.1.21
mariadb-10.1.22
mariadb-10.1.23
mariadb-10.1.24
mariadb-10.1.25
mariadb-10.1.26
mariadb-10.1.27
mariadb-10.1.28
mariadb-10.1.29
mariadb-10.1.3
mariadb-10.1.30
mariadb-10.1.31
mariadb-10.1.32
mariadb-10.1.33
mariadb-10.1.34
mariadb-10.1.35
mariadb-10.1.36
mariadb-10.1.37
mariadb-10.1.38
mariadb-10.1.39
mariadb-10.1.4
mariadb-10.1.40
mariadb-10.1.41
mariadb-10.1.42
mariadb-10.1.43
mariadb-10.1.44
mariadb-10.1.45
mariadb-10.1.46
mariadb-10.1.47
mariadb-10.1.48
mariadb-10.1.5
mariadb-10.1.6
mariadb-10.1.7
mariadb-10.1.8
mariadb-10.1.9
mariadb-10.10.1
mariadb-10.10.2
mariadb-10.10.2-release
mariadb-10.10.3
mariadb-10.10.4
mariadb-10.10.5
mariadb-10.10.6
mariadb-10.10.7
mariadb-10.11.1
mariadb-10.11.10
mariadb-10.11.11
mariadb-10.11.12
mariadb-10.11.13
mariadb-10.11.14
mariadb-10.11.15
mariadb-10.11.2
mariadb-10.11.3
mariadb-10.11.4
mariadb-10.11.5
mariadb-10.11.6
mariadb-10.11.7
mariadb-10.11.8
mariadb-10.11.9
mariadb-10.2.0
mariadb-10.2.1
mariadb-10.2.10
mariadb-10.2.11
mariadb-10.2.12
mariadb-10.2.13
mariadb-10.2.14
mariadb-10.2.15
mariadb-10.2.16
mariadb-10.2.17
mariadb-10.2.18
mariadb-10.2.19
mariadb-10.2.2
mariadb-10.2.20
mariadb-10.2.21
mariadb-10.2.22
mariadb-10.2.23
mariadb-10.2.24
mariadb-10.2.25
mariadb-10.2.26
mariadb-10.2.27
mariadb-10.2.28
mariadb-10.2.29
mariadb-10.2.3
mariadb-10.2.30
mariadb-10.2.31
mariadb-10.2.32
mariadb-10.2.33
mariadb-10.2.34
mariadb-10.2.35
mariadb-10.2.36
mariadb-10.2.37
mariadb-10.2.38
mariadb-10.2.39
mariadb-10.2.4
mariadb-10.2.40
mariadb-10.2.41
mariadb-10.2.42
mariadb-10.2.43
mariadb-10.2.44
mariadb-10.2.5
mariadb-10.2.6
mariadb-10.2.7
mariadb-10.2.8
mariadb-10.2.9
mariadb-10.3.0
mariadb-10.3.1
mariadb-10.3.10
mariadb-10.3.11
mariadb-10.3.12
mariadb-10.3.13
mariadb-10.3.14
mariadb-10.3.15
mariadb-10.3.16
mariadb-10.3.17
mariadb-10.3.18
mariadb-10.3.19
mariadb-10.3.2
mariadb-10.3.20
mariadb-10.3.21
mariadb-10.3.22
mariadb-10.3.23
mariadb-10.3.24
mariadb-10.3.25
mariadb-10.3.26
mariadb-10.3.27
mariadb-10.3.28
mariadb-10.3.29
mariadb-10.3.3
mariadb-10.3.30
mariadb-10.3.31
mariadb-10.3.32
mariadb-10.3.33
mariadb-10.3.34
mariadb-10.3.35
mariadb-10.3.36
mariadb-10.3.37
mariadb-10.3.38
mariadb-10.3.39
mariadb-10.3.4
mariadb-10.3.5
mariadb-10.3.6
mariadb-10.3.7
mariadb-10.3.8
mariadb-10.3.9
mariadb-10.4.0
mariadb-10.4.1
mariadb-10.4.10
mariadb-10.4.11
mariadb-10.4.12
mariadb-10.4.13
mariadb-10.4.14
mariadb-10.4.15
mariadb-10.4.16
mariadb-10.4.17
mariadb-10.4.18
mariadb-10.4.19
mariadb-10.4.2
mariadb-10.4.20
mariadb-10.4.21
mariadb-10.4.22
mariadb-10.4.23
mariadb-10.4.24
mariadb-10.4.25
mariadb-10.4.26
mariadb-10.4.27
mariadb-10.4.28
mariadb-10.4.29
mariadb-10.4.3
mariadb-10.4.30
mariadb-10.4.31
mariadb-10.4.32
mariadb-10.4.33
mariadb-10.4.34
mariadb-10.4.4
mariadb-10.4.5
mariadb-10.4.6
mariadb-10.4.7
mariadb-10.4.8
mariadb-10.4.9
mariadb-10.5.0
mariadb-10.5.1
mariadb-10.5.10
mariadb-10.5.11
mariadb-10.5.12
mariadb-10.5.13
mariadb-10.5.14
mariadb-10.5.15
mariadb-10.5.16
mariadb-10.5.17
mariadb-10.5.18
mariadb-10.5.19
mariadb-10.5.2
mariadb-10.5.20
mariadb-10.5.21
mariadb-10.5.22
mariadb-10.5.23
mariadb-10.5.24
mariadb-10.5.25
mariadb-10.5.26
mariadb-10.5.27
mariadb-10.5.28
mariadb-10.5.29
mariadb-10.5.3
mariadb-10.5.4
mariadb-10.5.5
mariadb-10.5.6
mariadb-10.5.7
mariadb-10.5.8
mariadb-10.5.9
mariadb-10.6.0
mariadb-10.6.1
mariadb-10.6.10
mariadb-10.6.11
mariadb-10.6.12
mariadb-10.6.13
mariadb-10.6.14
mariadb-10.6.15
mariadb-10.6.16
mariadb-10.6.17
mariadb-10.6.18
mariadb-10.6.19
mariadb-10.6.2
mariadb-10.6.20
mariadb-10.6.21
mariadb-10.6.22
mariadb-10.6.23
mariadb-10.6.24
mariadb-10.6.3
mariadb-10.6.4
mariadb-10.6.5
mariadb-10.6.6
mariadb-10.6.7
mariadb-10.6.8
mariadb-10.6.9
mariadb-10.7.1
mariadb-10.7.2
mariadb-10.7.3
mariadb-10.7.4
mariadb-10.7.5
mariadb-10.7.6
mariadb-10.7.7
mariadb-10.7.8
mariadb-10.8.1
mariadb-10.8.2
mariadb-10.8.3
mariadb-10.8.4
mariadb-10.8.5
mariadb-10.8.6
mariadb-10.8.7
mariadb-10.8.8
mariadb-10.9.1
mariadb-10.9.2
mariadb-10.9.3
mariadb-10.9.4
mariadb-10.9.5
mariadb-10.9.6
mariadb-10.9.7
mariadb-10.9.8
mariadb-11.0.1
mariadb-11.0.2
mariadb-11.0.3
mariadb-11.0.4
mariadb-11.0.5
mariadb-11.0.6
mariadb-11.1.1
mariadb-11.1.1-23.02.3-2
mariadb-11.1.2
mariadb-11.1.3
mariadb-11.1.4
mariadb-11.1.5
mariadb-11.1.6
mariadb-11.2.1
mariadb-11.2.2
mariadb-11.2.3
mariadb-11.2.4
mariadb-11.2.5
mariadb-11.2.6
mariadb-11.3.0
mariadb-11.3.1
mariadb-11.3.2
mariadb-11.4.0
mariadb-11.4.1
mariadb-11.4.2
mariadb-11.4.3
mariadb-11.4.4
mariadb-11.4.5
mariadb-11.4.6
mariadb-11.4.7
mariadb-11.4.8
mariadb-11.4.9
mariadb-11.5.0
mariadb-11.5.1
mariadb-11.5.2
mariadb-11.6.0
mariadb-11.6.1
mariadb-11.6.2
mariadb-11.7.0
mariadb-11.7.1
mariadb-11.7.2
mariadb-11.8.0
mariadb-11.8.1
mariadb-11.8.2
mariadb-11.8.3
mariadb-11.8.4
mariadb-11.8.5
mariadb-12.0.1
mariadb-12.0.2
mariadb-12.1.1
mariadb-12.1.2
mariadb-12.2.1
mariadb-5.1.38-beta
mariadb-5.1.39-beta
mariadb-5.1.41
mariadb-5.1.41-rc
mariadb-5.1.42
mariadb-5.1.42-rc
mariadb-5.1.44
mariadb-5.1.44a
mariadb-5.1.44b
mariadb-5.1.47
mariadb-5.1.49
mariadb-5.1.50
mariadb-5.1.51
mariadb-5.1.53
mariadb-5.1.55
mariadb-5.1.61
mariadb-5.1.62
mariadb-5.1.66
mariadb-5.1.67
mariadb-5.2.0-beta
mariadb-5.2.1-beta
mariadb-5.2.10
mariadb-5.2.11
mariadb-5.2.12
mariadb-5.2.13
mariadb-5.2.14
mariadb-5.2.2-gamma
mariadb-5.2.3
mariadb-5.2.4
mariadb-5.2.5
mariadb-5.2.6
mariadb-5.2.7
mariadb-5.2.8
mariadb-5.2.9
mariadb-5.3.0-beta
mariadb-5.3.1
mariadb-5.3.10
mariadb-5.3.11
mariadb-5.3.12
mariadb-5.3.2-beta
mariadb-5.3.3-rc
mariadb-5.3.4
mariadb-5.3.5-ga
mariadb-5.3.6
mariadb-5.3.7
mariadb-5.3.8
mariadb-5.3.9
mariadb-5.5.20-alpha
mariadb-5.5.21-beta
mariadb-5.5.22-rc
mariadb-5.5.23
mariadb-5.5.24
mariadb-5.5.25
mariadb-5.5.27
mariadb-5.5.28
mariadb-5.5.28a
mariadb-5.5.29
mariadb-5.5.30
mariadb-5.5.31
mariadb-5.5.32
mariadb-5.5.33
mariadb-5.5.33a
mariadb-5.5.34
mariadb-5.5.35
mariadb-5.5.36
mariadb-5.5.37
mariadb-5.5.38
mariadb-5.5.39
mariadb-5.5.40
mariadb-5.5.41
mariadb-5.5.42
mariadb-5.5.43
mariadb-5.5.44
mariadb-5.5.45
mariadb-5.5.46
mariadb-5.5.47
mariadb-5.5.48
mariadb-5.5.49
mariadb-5.5.50
mariadb-5.5.51
mariadb-5.5.52
mariadb-5.5.53
mariadb-5.5.54
mariadb-5.5.55
mariadb-5.5.56
mariadb-5.5.57
mariadb-5.5.58
mariadb-5.5.59
mariadb-5.5.60
mariadb-5.5.61
mariadb-5.5.62
mariadb-5.5.63
mariadb-5.5.64
mariadb-5.5.65
mariadb-5.5.66
mariadb-5.5.67
mariadb-5.5.68
mariadb-galera-10.0.10
mariadb-galera-10.0.11
mariadb-galera-10.0.12
mariadb-galera-10.0.13
mariadb-galera-10.0.14
mariadb-galera-10.0.15
mariadb-galera-10.0.16
mariadb-galera-10.0.17
mariadb-galera-10.0.19
mariadb-galera-10.0.20
mariadb-galera-10.0.21
mariadb-galera-10.0.22
mariadb-galera-10.0.23
mariadb-galera-10.0.24
mariadb-galera-10.0.25
mariadb-galera-10.0.26
mariadb-galera-10.0.27
mariadb-galera-10.0.28
mariadb-galera-10.0.29
mariadb-galera-10.0.30
mariadb-galera-10.0.31
mariadb-galera-10.0.32
mariadb-galera-10.0.33
mariadb-galera-10.0.34
mariadb-galera-10.0.35
mariadb-galera-10.0.36
mariadb-galera-10.0.37
mariadb-galera-10.0.38
mariadb-galera-10.0.7
mariadb-galera-10.0.7a
mariadb-galera-5.5.25
mariadb-galera-5.5.28a
mariadb-galera-5.5.29
mariadb-galera-5.5.32
mariadb-galera-5.5.32a
mariadb-galera-5.5.34
mariadb-galera-5.5.35
mariadb-galera-5.5.36
mariadb-galera-5.5.36a
mariadb-galera-5.5.37
mariadb-galera-5.5.38
mariadb-galera-5.5.39
mariadb-galera-5.5.40
mariadb-galera-5.5.41
mariadb-galera-5.5.42
mariadb-galera-5.5.43
mariadb-galera-5.5.44
mariadb-galera-5.5.45
mariadb-galera-5.5.46
mariadb-galera-5.5.47
mariadb-galera-5.5.48
mariadb-galera-5.5.49
mariadb-galera-5.5.50
mariadb-galera-5.5.51
mariadb-galera-5.5.52
mariadb-galera-5.5.53
mariadb-galera-5.5.54
mariadb-galera-5.5.55
mariadb-galera-5.5.56
mariadb-galera-5.5.57
mariadb-galera-5.5.58
mariadb-galera-5.5.59
mariadb-galera-5.5.60
mariadb-galera-5.5.61
mariadb-galera-5.5.62
mariadb-galera-5.5.63
mariadb-merge-mysql-5.1.34plus
mariadb-merge-mysql-5.1.38minus
mariadb-merge-mysql-5.1.39
mariadb-merge-mysql-5.1.41
mariadb-merge-mysql-5.1.42
mariadb-merge-mysql-5.1.44
mariadb-merge-mysql-5.1.46
mysql-3.23.22-beta
mysql-3.23.24-beta
mysql-3.23.27-beta
mysql-3.23.28-gamma
mysql-3.23.29a-gamma
mysql-3.23.30-gamma
mysql-3.23.31
mysql-3.23.32
mysql-3.23.33
mysql-3.23.34
mysql-3.23.35
mysql-3.23.36
mysql-3.23.37
mysql-3.23.38
mysql-3.23.39
mysql-3.23.41
mysql-3.23.42
mysql-3.23.44
mysql-3.23.45
mysql-3.23.46
mysql-3.23.47
mysql-3.23.48
mysql-3.23.50
mysql-3.23.51
mysql-3.23.52
mysql-3.23.53
mysql-3.23.54
mysql-3.23.55
mysql-3.23.56
mysql-3.23.57
mysql-3.23.58
mysql-4.0.1
mysql-4.0.10
mysql-4.0.11
mysql-4.0.12
mysql-4.0.13
mysql-4.0.14
mysql-4.0.15
mysql-4.0.16
mysql-4.0.17
mysql-4.0.18
mysql-4.0.19
mysql-4.0.2
mysql-4.0.20
mysql-4.0.21
mysql-4.0.22
mysql-4.0.23
mysql-4.0.24
mysql-4.0.25
mysql-4.0.26
mysql-4.0.27
mysql-4.0.28
mysql-4.0.3
mysql-4.0.30
mysql-4.0.4
mysql-4.0.5
mysql-4.0.6
mysql-4.0.7
mysql-4.0.8
mysql-4.0.9
mysql-4.1.0
mysql-4.1.1
mysql-4.1.10
mysql-4.1.10a
mysql-4.1.10b
mysql-4.1.11
mysql-4.1.12
mysql-4.1.13
mysql-4.1.13a
mysql-4.1.14
mysql-4.1.15
mysql-4.1.16
mysql-4.1.18
mysql-4.1.19
mysql-4.1.2
mysql-4.1.20
mysql-4.1.21
mysql-4.1.22
mysql-4.1.23
mysql-4.1.24
mysql-4.1.3
mysql-4.1.4
mysql-4.1.5
mysql-4.1.6
mysql-4.1.7
mysql-4.1.8
mysql-4.1.9
mysql-5.0.0
mysql-5.0.1
mysql-5.0.10
mysql-5.0.10a
mysql-5.0.11
mysql-5.0.12
mysql-5.0.13
mysql-5.0.14
mysql-5.0.15
mysql-5.0.16
mysql-5.0.16a
mysql-5.0.17
mysql-5.0.17b
mysql-5.0.18
mysql-5.0.19
mysql-5.0.19a
mysql-5.0.2
mysql-5.0.2-alpha
mysql-5.0.20
mysql-5.0.20a
mysql-5.0.21
mysql-5.0.22
mysql-5.0.23
mysql-5.0.24
mysql-5.0.24a
mysql-5.0.25
mysql-5.0.26
mysql-5.0.27
mysql-5.0.28
mysql-5.0.3
mysql-5.0.30
mysql-5.0.32
mysql-5.0.33
mysql-5.0.34
mysql-5.0.36
mysql-5.0.37
mysql-5.0.38
mysql-5.0.4
mysql-5.0.40
mysql-5.0.41
mysql-5.0.42
mysql-5.0.44
mysql-5.0.45
mysql-5.0.46
mysql-5.0.48
mysql-5.0.5
mysql-5.0.50
mysql-5.0.51
mysql-5.0.51a
mysql-5.0.52
mysql-5.0.54
mysql-5.0.54a
mysql-5.0.56
mysql-5.0.58
mysql-5.0.6
mysql-5.0.60
mysql-5.0.60sp1
mysql-5.0.62
mysql-5.0.64
mysql-5.0.66
mysql-5.0.66a
mysql-5.0.66sp1
mysql-5.0.67
mysql-5.0.68
mysql-5.0.7
mysql-5.0.70
mysql-5.0.72
mysql-5.0.72sp1
mysql-5.0.74
mysql-5.0.74sp1
mysql-5.0.75
mysql-5.0.76
mysql-5.0.77
mysql-5.0.78
mysql-5.0.79
mysql-5.0.8
mysql-5.0.80
mysql-5.0.81
mysql-5.0.82
mysql-5.0.82sp1
mysql-5.0.83
mysql-5.0.84
mysql-5.0.84sp1
mysql-5.0.85
mysql-5.0.86
mysql-5.0.87
mysql-5.0.87sp1
mysql-5.0.88
mysql-5.0.9
mysql-5.0.90
mysql-5.0.91
mysql-5.0.92
mysql-5.0.93
mysql-5.0.94
mysql-5.0.95
mysql-5.0.96
mysql-5.1.11
mysql-5.1.12
mysql-5.1.13
mysql-5.1.14
mysql-5.1.15
mysql-5.1.16
mysql-5.1.17
mysql-5.1.18
mysql-5.1.18-ndb-6.2.1
mysql-5.1.19
mysql-5.1.20
mysql-5.1.20-beta
mysql-5.1.21
mysql-5.1.22
mysql-5.1.23
mysql-5.1.23a-maria-alpha
mysql-5.1.24
mysql-5.1.25
mysql-5.1.26
mysql-5.1.28
mysql-5.1.29
mysql-5.1.3
mysql-5.1.30
mysql-5.1.31
mysql-5.1.31sp1
mysql-5.1.32
mysql-5.1.33
mysql-5.1.34
mysql-5.1.34sp1
mysql-5.1.35
mysql-5.1.36
mysql-5.1.37
mysql-5.1.37sp1
mysql-5.1.38
mysql-5.1.39
mysql-5.1.4
mysql-5.1.40
mysql-5.1.40sp1
mysql-5.1.41
mysql-5.1.42
mysql-5.1.43
mysql-5.1.43sp1
mysql-5.1.44
mysql-5.1.45
mysql-5.1.46
mysql-5.1.46sp1
mysql-5.1.47
mysql-5.1.48
mysql-5.1.49
mysql-5.1.49sp1
mysql-5.1.5
mysql-5.1.5-for-windows
mysql-5.1.50
mysql-5.1.51
mysql-5.1.52
mysql-5.1.52sp1
mysql-5.1.53
mysql-5.1.54
mysql-5.1.55
mysql-5.1.56
mysql-5.1.57
mysql-5.1.58
mysql-5.1.59
mysql-5.1.6
mysql-5.1.60
mysql-5.1.61
mysql-5.1.62
mysql-5.1.63
mysql-5.1.65
mysql-5.1.66
mysql-5.1.67
mysql-5.1.68
mysql-5.1.69
mysql-5.1.69-retag
mysql-5.1.7
mysql-5.1.70
mysql-5.1.71
mysql-5.1.72
mysql-5.1.73
mysql-5.1.9
mysql-5.4.1
mysql-5.4.2
mysql-5.4.3
mysql-5.5.0
mysql-5.5.1-m2
mysql-5.5.10
mysql-5.5.11
mysql-5.5.12
mysql-5.5.13
mysql-5.5.14
mysql-5.5.15
mysql-5.5.16
mysql-5.5.17
mysql-5.5.18
mysql-5.5.19
mysql-5.5.2-m2
mysql-5.5.20
mysql-5.5.21
mysql-5.5.22
mysql-5.5.23
mysql-5.5.24
mysql-5.5.25
mysql-5.5.27
mysql-5.5.28
mysql-5.5.29
mysql-5.5.3-m3
mysql-5.5.30
mysql-5.5.31
mysql-5.5.32
mysql-5.5.33
mysql-5.5.34
mysql-5.5.35
mysql-5.5.36
mysql-5.5.37
mysql-5.5.38
mysql-5.5.39
mysql-5.5.40
mysql-5.5.41
mysql-5.5.42
mysql-5.5.43
mysql-5.5.44
mysql-5.5.45
mysql-5.5.46
mysql-5.5.47
mysql-5.5.48
mysql-5.5.49
mysql-5.5.5-m3
mysql-5.5.50
mysql-5.5.51
mysql-5.5.52
mysql-5.5.53
mysql-5.5.54
mysql-5.5.55
mysql-5.5.56
mysql-5.5.57
mysql-5.5.58
mysql-5.5.59
mysql-5.5.6-rc
mysql-5.5.60
mysql-5.5.61
mysql-5.5.62
mysql-5.5.7
mysql-5.5.8
mysql-5.5.9
mysql_4.0
percona-xtradb-1.0.2-1
serg-5.1.64
tokudb-7.1.0
tokudb-7.1.5
tokudb-7.1.5-rc.1
tokudb-7.1.5-rc.2
tokudb-7.1.5-rc.3
tokudb-7.1.5-rc.4
tokudb-ps-1
tokudb-ps-2
tokumx-1.0.0-rc.0
tokumx-1.0.0-rc.2
tokumx-1.0.0-rc.4
tokumx-1.0.0-rc.5
tokumx-1.0.0-rc.6
tokumx-1.0.2
tokumx-1.0.4
tokumx-1.0.4-rc.0
tokumx-1.0.4-rc.1
tokumx-1.0.4-rc.2
tokumx-1.1.0
tokumx-1.1.1
tokumx-1.1.1-rc.0
tokumx-1.2.0-rc.2
tokumx-1.3.0-rc.0
tokumx-1.3.0-rc.1
tokumx-1.4.0+hotfix.0
${ noResults }
97 Commits (90fbd8b22b4b84cdc027fed26012efd87c2b6737)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
de1765fb64 |
Speedups:
- Optimize away calls to hp_rec_hashnr() by cashing hash - Try to get more rows / block (to minimize overhead of HP_PTRS) in HEAP tables. storage/heap/_check.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Print cleanups storage/heap/heapdef.h: Added place to hold calculated hash value for row storage/heap/hp_create.c: Try to get more rows / block (to minimize overhead of HP_PTRS) storage/heap/hp_delete.c: Optimize away calls to hp_rec_hashnr() by cashing hash. storage/heap/hp_hash.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Remove some not needed DBUG_PRINT storage/heap/hp_test2.c: Increased max table size as now heap tables takes a bit more space (a few %) storage/heap/hp_write.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Remove duplicated code More DBUG_PRINT storage/maria/ma_create.c: More DBUG_PRINT |
14 years ago |
|
|
fa36a7426b |
Fixed lp:879939 "assertion in ha_maria::enable_indexes with derived_with_keys=on"
Honor unique/not unique when creating keys for internal tempory tables. Added new variables to be used to limit how keys are created for internal temporary tables. include/maria.h: Added maria_max_key_length() and maria_max_key_segments() include/myisam.h: Added myisam_max_key_length() and myisam_max_key_segments() mysql-test/r/mysql.result: Drop all used tables mysql-test/r/subselect4.result: Added test case for lp:879939 mysql-test/t/mysql.test: Drop all used tables mysql-test/t/subselect4.test: Added test case for lp:879939 sql/mysql_priv.h: Added internal_tmp_table_max_key_length and internal_tmp_table_max_key_segments to be used to limit how keys for derived tables are created. sql/mysqld.cc: Added internal_tmp_table_max_key_length and internal_tmp_table_max_key_segments to be used to limit how keys for derived tables are created. sql/share/errmsg.txt: Added new error message for internal errors sql/sql_select.cc: Give error if we try to create a wrong key (this error should never happen) Honor unique/not unique when creating keys for internal tempory tables. storage/maria/ha_maria.cc: Added change_table_ptr() to ensure that external_ref points always to the correct table. (Not having this caused an assert in the included test) storage/maria/ha_maria.h: Added change_table_ptr() to ensure that external_ref points always to the correct table. storage/maria/ma_check.c: Fixed bug in Duplicate key error printing (now row position is printed correctly) storage/maria/ma_create.c: maria_max_key_length() -> _ma_max_key_length() storage/maria/ma_info.c: Added extern function maria_max_key_length() to calculate the max key length based on current block size. storage/maria/ma_open.c: maria_max_key_length() -> _ma_max_key_length() storage/maria/maria_def.h: maria_max_key_length() -> _ma_max_key_length() storage/myisam/ha_myisam.cc: Added change_table_ptr() to ensure that external_ref points always to the correct table. (Not having this caused an assert in the included test) storage/myisam/ha_myisam.h: Added change_table_ptr() to ensure that external_ref points always to the correct table. |
14 years ago |
|
|
10065404ea |
Fixes lp:805930 Sysbench breaks on multiple table test with MariaDB 5.2.7 + Aria
The bug happens when one uses MAX_ROWS=# with Aria & row_format=page and one insert more than # rows. mysql-test/mysql-test-run.pl: Ignore table is full error messages mysql-test/suite/maria/r/max_length.result: Test case for 'Table is full' mysql-test/suite/maria/t/max_length.test: Test case for 'Table is full' storage/maria/ma_bitmap.c: Ensure that we don't allocate bits outside of max_data_file_size. Adjust max_data_file_size based on bitmap alignments. Backport fix to adjust wrong first_bitmap_with_space. storage/maria/ma_blockrec.c: Calculate value of max_data_file_length storage/maria/ma_blockrec.h: Updated prototype for _ma_bitmap_init() storage/maria/ma_check.c: Give warnings if file sizes are above max file sizes. Give more warnings in case of errors. Have maria_chk write if table is recreated. storage/maria/ma_create.c: Better calculation of max_data_file_length and thus data pointer length. Fixes some wrong pointer lengths when using MAX_ROWS=# storage/maria/ma_open.c: Removed duplicate assigment. Use block size from file instead of global variable. storage/maria/maria_chk.c: Remove -1 from printed file length storage/maria/maria_def.h: Update struct st_maria_file_bitmap |
15 years ago |
|
|
7199ac5916 |
Aria fixes:
- Fixed multi-user problem with one thread doing inserts and another doing scans that gave error 175 - Fixed bug that caused assert in move_to_next_bitmap() & _ma_read_bitmap_page() - Much more DBUG_ASSERT(!maria_assert_if_crashed_table) to detect errors early - EXTERNAL_LOCKING -> MARIA_EXTERNAL_LOCKING (to use same define everywhere storage/maria/ma_bitmap.c: More secure handling of first_bitmap_with_space (now we also take care of wrong values) Don't set page to -1; This fixed unlikely bug that caused assert in move_to_next_bitmap() & _ma_read_bitmap_page() storage/maria/ma_blockrec.c: More DBUG_ASSERT()'s Fixed multi-user problem with one thread doing inserts and another doing scans that gave error 175 (We should use data_file_length from start of scan, not new value as new bitmap page may not yet be in page cache) storage/maria/ma_check.c: EXTERNAL_LOCKING -> MARIA_EXTERNAL_LOCKING (to use same define everywhere) storage/maria/ma_checkpoint.c: Made maria_checkpoint_min_activity static so that one can change it in debugger while testing. Fixed long standing performance problem that caused write of state info at checkpoint for any file that was ever changed since open. storage/maria/ma_create.c: EXTERNAL_LOCKING -> MARIA_EXTERNAL_LOCKING (to use same define everywhere storage/maria/ma_dynrec.c: Added missing MARIA_EXTERNAL_LOCKING (minor performance improvement) storage/maria/ma_locking.c: EXTERNAL_LOCKING -> MARIA_EXTERNAL_LOCKING (to use same define everywhere storage/maria/ma_open.c: EXTERNAL_LOCKING -> MARIA_EXTERNAL_LOCKING (to use same define everywhere storage/maria/ma_pagecache.c: Added assert to detect reads outside of data file storage/maria/maria_def.h: Added checkpoint_state to cache state writes in checkpoint |
15 years ago |
|
|
13f55aac67 |
A bit better fix for tmp-table problem
Fixed reference to not initialized memory detected by valgrind sql/sql_select.cc: A bit better fix for tmp-table problem: Use only dynamic_record format for group by and distinct. storage/maria/ma_create.c: DYNAMIC_RECORD format doesn't pack VARCHAR fields. This change fixes a non-fatal uninitialized memory copy. |
15 years ago |
|
|
26565ae1d6 |
Aria issues:
- Fix for LP#700623 "Aria recovery: ma_blockrec.c:3930: _ma_update_at_original_place: Assertion `block->org_bitmap_value == _ma_bitmap_get_page_bits(info, &info->s->bitmap, page)' failed" - Issue was that when deleting a tail page where all index entries where full, the page was marked wrongly in the bitmap. - If debug_assert_if_crashed_table is set, we now crash when we find Aria corrupted. - Write more information if we find something wrong with the bitmap. - Fixed that REPAIR also can fix wrong create_rename_lsn issues (a very unlikely event) - Define STATE_CRASHED_FLAGS as set of all CRASHED flags (to simplify code) storage/maria/ha_maria.cc: Mark the normal page cache (not the page cache for the logs) so that we can request extra debugging for it. Copy the value of debug_assert_if_crashed_table to maria_assert_if_crashed_table so that we can request a crash at exactly the point where we find Aria corrupted. Use STATE_CRASHED_FLAGS storage/maria/ma_bitmap.c: Made bits_to_txt extern so that we can use this in maria_chk Added extra information to the log files to be able to easier find bitmap failures in recovery. (When compiling with -DEXTRA_DEBUG_BITMAP) Added _ma_get_bitmap_description() to request a clear text description of the bitmap. Simplify _ma_check_bitmap_data(), as we know the bitmap pattern in the caller. storage/maria/ma_blockrec.c: In delete_head_or_tail(), fixed a bug where we sent wrong information to _ma_bitmap_set() if the directory was full for a page that should be freed. This fixed LP#700623 (failure in bitmap found during recovery) storage/maria/ma_blockrec.h: Added definitions for _ma_get_bitmap_description() and bits_to_txt storage/maria/ma_check.c: Simplify call to _ma_check_bitmap_data(). Write more information if we find something wrong with the bitmap. Moved getting clear text information about the bitmap to ma_bitmap.c::_ma_get_bitmap_description() storage/maria/ma_checkpoint.c: More asserts storage/maria/ma_create.c: Fix wrong create_rename_lsn during repair. (Create_rename_lsn can be too big if someone restores an old maria_log_file after an Aria file was created) storage/maria/ma_delete.c: Call _ma_set_fatal_error() in case of crashed file Remove not needed test of save_errno == HA_ERR_KEY_NOT_FOUND. (Handled by other code storage/maria/ma_extra.c: Call _ma_set_fatal_error() in case of crashed file Reset share->bitmap.changed_not_flushed to not cause new ASSERTS to trigger. Added _ma_file_callback_to_id() for writing share->id to log file in case of DEBUG logging. storage/maria/ma_init.c: Destroy also translog if it's readonly (as when called by maria_read_log -d) storage/maria/ma_key.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_key_recover.c: STATE_CRASHED -> STATE_CRASHED_FLAGS storage/maria/ma_keycache.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_locking.c: Call _ma_set_fatal_error() in case of crashed file. Added _ma_set_fatal_error() storage/maria/ma_open.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_page.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_pagecache.c: Added extra information to log file to simply debugging of bitmap errors. storage/maria/ma_pagecache.h: Added extra_debug flag to allow marking of row and index cache for extra logging (for debugging). storage/maria/ma_panic.c: Flush both data and index blocks in case of HA_PANIC_CLOSE Fixed wrong position of 'break'. (Not critical for MariaDB as MariaDB never uses this code) storage/maria/ma_recovery_util.c: Avoid writing extra not needed \n to DBUG log. storage/maria/ma_rkey.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_search.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/ma_static.c: Define maria_assert_if_crashed_table storage/maria/ma_update.c: Call _ma_set_fatal_error() in case of crashed file. The new code also avoids a problem where we before would print the error twice. storage/maria/ma_write.c: Call _ma_set_fatal_error() in case of crashed file storage/maria/maria_chk.c: STATE_CRASHED -> STATE_CRASHED_FLAGS storage/maria/maria_def.h: Added STATE_CRASHED_PRINTED to avoid giving error message about crash twice. Added STATE_CRASHED_FLAGS to be able to easily detect and set all CRASHED related flags. Added prototypes for new functions. storage/myisam/mi_panic.c: Fixed wrong position of 'break'. (Not critical for MariaDB as MariaDB never uses this code) |
15 years ago |
|
|
f5ea301acc |
Added support for NO_RECORD record format (don't store any row data) for Aria.
This makes the keys smaller (no row pointer) and gives us proper errors if we use the table wrongly. sql/sql_select.cc: Use NO_RECORD for tables that doesn't need row data. storage/maria/Makefile.am: Added ma_norec.c storage/maria/ma_check.c: Added support for NO_RECORD record format (don't store any row data) storage/maria/ma_norec.c: Added support for NO_RECORD record format storage/maria/ma_open.c: Added support for NO_RECORD record format storage/maria/ma_search.c: Added support for 0 size row pointers (used with NO_RECORD) storage/maria/ma_test1.c: Added testing of NO_RECORD record format. storage/maria/maria_chk.c: Added support for NO_RECORD storage/maria/maria_def.h: Added support for NO_RECORD storage/maria/unittest/ma_test_all-t: Added testing of NO_RECORD record format |
15 years ago |
|
|
e246077bcf |
rename maria to aria
|
15 years ago |
|
|
d121e66305 |
Fix for compiler warnings on windows
Fix wrong cast of time() include/my_pthread.h: Safety fix that also removes compiler warnings sql/handler.h: Changed timestamp columns to be of type time_t storage/maria/ma_check.c: Removed wrong cast storage/maria/ma_create.c: Removed wrong cast storage/myisam/mi_check.c: Removed wrong cast storage/myisam/mi_create.c: Removed wrong cast storage/xtradb/handler/ha_innodb.cc: Removed compiler warning on windows |
16 years ago |
|
|
3907cb1d70 |
Fix for BUG#42112 "Maria: recovery failure (pushbuild2) Assertion `rownr == 0 && new_page' failed"
mysql-test/suite/maria/r/maria-recovery3.result: result update mysql-test/suite/maria/t/maria-recovery3.test: Test for BUG#42112; before the bugfix, recovery would assert like this: ma_blockrec.c:6051: _ma_apply_redo_insert_row_head_or_tail: Assertion `rownr == 0 && new_page' failed. storage/maria/ma_create.c: Fix for BUG#42112; plus some intentional crashes to test the fix. The bug was that if crash happened during TRUNCATE TABLE, in maria_create(), after the index file's state has been written but before its LSNs have been updated (so, if crash happened between _ma_state_info_write_sub() and _ma_update_state__lsns_sub()), then that would leave a table with create_rename_lsn==0. Recovery would then try old pre-TRUNCATE REDOs on this table, and fail as this table is already partly shortened. Fix is to write create_rename_lsn==LSN_MAX as soon as TRUNCATE touches the index file, so that Recovery ignores this table. This allows Maria to start; the table is still corrupted but the user can successfully repeat TRUNCATE TABLE (which required Maria to start). storage/maria/ma_delete_all.c: A comment. |
17 years ago |
|
|
3fca23902c |
Log queries to maria_log if compiled with EXTRA_DEBUG
Added DBUG_ASSERT() to unlikely error senario Don't use errno == 0 in maria_create() / myisam_create() sql/sql_insert.cc: Added DBUG_ASSERT() for case that should never happen in real life Added my_error() to avoid assert if mysql_lock() or postlock() doesn't call my_error() storage/maria/ha_maria.cc: Log queries to maria_log if compiled with EXTRA_DEBUG storage/maria/ma_create.c: Don't use errno == 0 storage/maria/ma_loghandler.c: Added logging of debug info to maria_log storage/maria/ma_loghandler.h: Added logging of debug info to maria_log storage/maria/ma_recovery.c: Added printing of debug info from maria_log storage/maria/trnman.c: Added functions to read/store state in TRN storage/maria/trnman.h: Added functions to read/store state in TRN storage/maria/trnman_public.h: Added state in TRN to remmeber if we have already logged the query storage/myisam/mi_create.c: Don't use errno == 0 |
17 years ago |
|
|
7eda7f1337 |
Code cleanup:
- Removed not needed casts - Indentation fixes - Changed some buffer variables to uchar, to be able to remove casts storage/maria/ma_bitmap.c: Removed not needed casts storage/maria/ma_blockrec.c: Removed not needed casts storage/maria/ma_check.c: Removed not needed casts. Changed type of buffers to be able to remove casts storage/maria/ma_create.c: Removed not needed casts storage/maria/ma_delete.c: Removed not needed casts storage/maria/ma_dynrec.c: Removed not needed casts storage/maria/ma_extra.c: Removed not needed casts storage/maria/ma_ft_boolean_search.c: Removed not needed casts storage/maria/ma_ft_nlq_search.c: Removed not needed casts storage/maria/ma_ft_parser.c: Removed not needed casts storage/maria/ma_loghandler.c: Removed not needed casts storage/maria/ma_open.c: Removed not needed casts storage/maria/ma_packrec.c: Removed not needed casts storage/maria/ma_pagecache.c: Removed not needed casts storage/maria/ma_preload.c: Removed not needed casts Removed not needed initialization storage/maria/ma_rnext_same.c: Removed not needed casts storage/maria/ma_rt_index.c: Removed not needed casts storage/maria/ma_search.c: Removed not needed casts storage/maria/ma_sort.c: Removed not needed casts Removed not needed if Fixed indentation storage/maria/ma_statrec.c: Removed not needed casts storage/maria/ma_test2.c: Removed not needed casts storage/maria/ma_write.c: Removed not needed casts Indentation fixes storage/maria/maria_chk.c: Removed not needed casts storage/maria/maria_pack.c: Removed not needed casts |
17 years ago |
|
|
dd8e57af7b |
_ma_state_info_write numeric flags changed with constants.
storage/maria/maria_def.h: Constants for _ma_state_info_write added. |
17 years ago |
|
|
5aa1e3b364 |
Small fixes for pushbuild: compiler warnings, checking that partitioning is enabled when testing it.
Don't fsync() index file when closing Maria table if not transactional. mysql-test/suite/maria/r/maria.result: piece moved mysql-test/suite/maria/r/maria_partition.result: result mysql-test/suite/maria/t/maria.test: - reset default storage engine at end of test, not in the middle - move piece which requires partitioning, to maria_partition.test, otherwise test fails on builds without partitioning compiled in mysql-test/suite/maria/t/maria_partition.test: new test for those Maria bugs which are specific of partitioning mysys/my_uuid.c: compiler warning fix (fix imported from latest 5.1-main) storage/maria/ma_close.c: don't fsync() index file when closing table if not transactional (same test as in _ma_once_end_block_record() when fsync-ing data file) storage/maria/ma_create.c: compiler warning fix (char* assigned to uchar*) storage/maria/ma_loghandler.c: compiler warning fix (char* assigned to uchar*) |
17 years ago |
|
|
3271841881 |
Merging of changes from myisam -> maria missing in last 5.1 - 5.1->maria merge
MARIA_MAX_MSG_BUF -> HA_MAX_MSG_BUF include/maria.h: Remove MARIA_MAX_MSG_BUF; We are now using HA_MAX_MSG_BUF Added maria_test_invalid_symlink storage/maria/ha_maria.cc: MARIA_MAX_MSG_BUF -> HA_MAX_MSG_BUF storage/maria/ma_check.c: Removed tab in string constant Add extra argument to ma_open_datafile() storage/maria/ma_create.c: Set error number if table is in use storage/maria/ma_open.c: Added name argument to open functions for security check if filename is linked to another file in database directory storage/maria/ma_static.c: Default functions for checking if wrong symlink storage/maria/maria_chk.c: Add extra argument to _ma_open_datafile() storage/maria/maria_def.h: Add extra argument to _ma_open_datafile() |
17 years ago |
|
|
1a5de5bc82 |
Changed all file names in maria to LEX_STRING and removed some calls to strlen()
Ensure that pagecache gives correct error number even if error for block happend mysys/my_pread.c: Indentation fix storage/maria/ha_maria.cc: filenames changed to be of type LEX_STRING storage/maria/ma_check.c: filenames changed to be of type LEX_STRING storage/maria/ma_checkpoint.c: filenames changed to be of type LEX_STRING storage/maria/ma_create.c: filenames changed to be of type LEX_STRING storage/maria/ma_dbug.c: filenames changed to be of type LEX_STRING storage/maria/ma_delete.c: filenames changed to be of type LEX_STRING storage/maria/ma_info.c: filenames changed to be of type LEX_STRING storage/maria/ma_keycache.c: filenames changed to be of type LEX_STRING storage/maria/ma_locking.c: filenames changed to be of type LEX_STRING storage/maria/ma_loghandler.c: filenames changed to be of type LEX_STRING storage/maria/ma_open.c: filenames changed to be of type LEX_STRING storage/maria/ma_pagecache.c: Store error number for last failed operation in the page block This should fix some asserts() when errno was not properly set after failure to read block in another thread storage/maria/ma_recovery.c: filenames changed to be of type LEX_STRING storage/maria/ma_update.c: filenames changed to be of type LEX_STRING storage/maria/ma_write.c: filenames changed to be of type LEX_STRING storage/maria/maria_def.h: filenames changed to be of type LEX_STRING storage/maria/maria_ftdump.c: filenames changed to be of type LEX_STRING storage/maria/maria_pack.c: filenames changed to be of type LEX_STRING |
18 years ago |
|
|
7ca3fc4ff0 |
compiler warnings
|
18 years ago |
|
|
60b88ce475 |
Fix for BUG#37876 "Importing Maria table from other server via binary copy does not work":
- after auto-zerofill (ha_maria::check_and_repair()) kepts its state's LSNs unchanged, which could be the same as the create_rename_lsn of another pre-existing table, which would break versioning as this LSN serves as unique identifier in the versioning code (in maria_open()). Even the state pieces which maria_zerofill() did change were lost (because they didn't go to disk). - after this fix, if two tables were auto-zerofilled at the same time (by _ma_mark_changed()) they could receive the same create_rename_lsn, which would break versioning again. Fix is to write a log record each time a table is imported. - Print state's LSNs (create_rename_lsn, is_of_horizon, skip_redo_lsn) and UUID in maria_chk -dvv. mysql-test/r/maria-autozerofill.result: result mysql-test/t/maria-autozerofill.test: Test for auto-zerofilling storage/maria/ha_maria.cc: The state changes done by auto-zerofilling never reached disk. storage/maria/ma_check.c: When zerofilling a table, including its pages' LSNs, new state LSNs are needed next time the table is imported into a Maria instance. storage/maria/ma_create.c: Write LOGREC_IMPORTED_TABLE when importing a table. This is informative and ensures that the table gets a unique create_rename_lsn even though multiple tables are imported by concurrent threads (it advances the log's end LSN). storage/maria/ma_key_recover.c: comment storage/maria/ma_locking.c: instead of using translog_get_horizon() for state's LSNs of imported table, use the LSN of to-be-written LOGREC_IMPORTED_TABLE. storage/maria/ma_loghandler.c: New type of log record storage/maria/ma_loghandler.h: New type of log record storage/maria/ma_loghandler_lsn.h: New name for constant as can be used not only by maria_chk but auto-zerofill now too. storage/maria/ma_open.c: instead of using translog_get_horizon() for state's LSNs of imported table, use the LSN of to-be-written LOGREC_IMPORTED_TABLE. storage/maria/ma_recovery.c: print content of LOGREC_IMPORTED_TABLE in maria_read_log. storage/maria/maria_chk.c: print info about LSNs of the table's state, and UUID, when maria_chk -dvv storage/maria/maria_pack.c: new name for constant storage/maria/unittest/ma_test_recovery.pl: Now that maria_chk -dvv shows state LSNs and UUID those need to be filtered out, as maria_read_log -a does not use the same as at original run. |
18 years ago |
|
|
52cb0c24a6 |
Added versioning of Maria index
Store max_trid in index file as state.create_trid. This is used to pack all transids in the index pages relative to max possible transid for file.
Enable versioning for transactional tables with index. Tables with an auto-increment key, rtree or fulltext keys are not versioned.
Changed info->lastkey to type MARIA_KEY. Removed info->lastkey_length as this is now part of info->lastkey
Renamed old info->lastkey to info->lastkey_buff
Use exact key lenghts for keys, not USE_WHOLE_KEY
For partial key searches, use SEARCH_PART_KEY
When searching to insert new key on page, use SEARCH_INSERT to mark that key has rowid
Changes done in a lot of files:
- Modified functions to use MARIA_KEY instead of key pointer and key length
- Use keyinfo->root_lock instead of share->key_root_lock[keynr]
- Simplify code by using local variable keyinfo instead if share->keyinfo[i]
- Added #fdef EXTERNAL_LOCKING around removed state elements
- HA_MAX_KEY_BUFF -> MARIA_MAX_KEY_BUFF (to reserve space for transid)
- Changed type of 'nextflag' to uint32 to ensure all SEARCH_xxx flags fits into it
.bzrignore:
Added missing temporary directory
extra/Makefile.am:
comp_err is now deleted on make distclean
include/maria.h:
Added structure MARIA_KEY, which is used for intern key objects in Maria.
Changed functions to take MARIA_KEY as an argument instead of pointer to packed key.
Changed some functions that always return true or false to my_bool.
Added virtual function make_key() to avoid if in _ma_make_key()
Moved rw_lock_t for locking trees from share->key_root_lock to MARIA_KEYDEF. This makes usage of the locks simpler and faster
include/my_base.h:
Added HA_RTREE_INDEX flag to mark rtree index. Used for easier checks in ma_check()
Added SEARCH_INSERT to be used when inserting new keys
Added SEARCH_PART_KEY for partial searches
Added SEARCH_USER_KEY_HAS_TRANSID to be used when key we use for searching in btree has a TRANSID
Added SEARCH_PAGE_KEY_HAS_TRANSID to be used when key we found in btree has a transid
include/my_handler.h:
Make next_flag 32 bit to make sure we can handle all SEARCH_ bits
mysql-test/include/maria_empty_logs.inc:
Read and restore current database; Don't assume we are using mysqltest.
Don't log use databasename to log. Using this include should not cause any result changes.
mysql-test/r/maria-gis-rtree-dynamic.result:
Updated results after adding some check table commands to help pinpoint errors
mysql-test/r/maria-mvcc.result:
New tests
mysql-test/r/maria-purge.result:
New result after adding removal of logs
mysql-test/r/maria-recovery-big.result:
maria_empty_logs doesn't log 'use mysqltest' anymore
mysql-test/r/maria-recovery-bitmap.result:
maria_empty_logs doesn't log 'use mysqltest' anymore
mysql-test/r/maria-recovery-rtree-ft.result:
maria_empty_logs doesn't log 'use mysqltest' anymore
mysql-test/r/maria-recovery.result:
maria_empty_logs doesn't log 'use mysqltest' anymore
mysql-test/r/maria.result:
New tests
mysql-test/r/variables-big.result:
Don't log id as it's not predictable
mysql-test/suite/rpl_ndb/r/rpl_truncate_7ndb_2.result:
Updated results to new binlog results. (Test has not been run in a long time as it requires --big)
mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2-master.opt:
Moved file to ndb replication test directory
mysql-test/suite/rpl_ndb/t/rpl_truncate_7ndb_2.test:
Fixed wrong path to included tests
mysql-test/t/maria-gis-rtree-dynamic.test:
Added some check table commands to help pinpoint errors
mysql-test/t/maria-mvcc.test:
New tests
mysql-test/t/maria-purge.test:
Remove logs to make test results predictable
mysql-test/t/maria.test:
New tests for some possible problems
mysql-test/t/variables-big.test:
Don't log id as it's not predictable
mysys/my_handler.c:
Updated function comment to reflect old code
Changed nextflag to be uint32 to ensure we can have flags > 16 bit
Changed checking if we are in insert with NULL keys as next_flag can now include additional bits that have to be ignored.
Added SEARCH_INSERT flag to be used when inserting new keys in btree. This flag tells us the that the keys includes row position and it's thus safe to remove SEARCH_FIND
Added comparision of transid. This is only done if the keys actually have a transid, which is indicated by nextflag
mysys/my_lock.c:
Fixed wrong test (Found by Guilhem)
scripts/Makefile.am:
Ensure that test programs are deleted by make clean
sql/rpl_rli.cc:
Moved assignment order to fix compiler warning
storage/heap/hp_write.c:
Add SEARCH_INSERT to signal ha_key_cmp that we we should also compare rowid for keys
storage/maria/Makefile.am:
Remove also maria log files when doing make distclean
storage/maria/ha_maria.cc:
Use 'file->start_state' as default state for transactional tables without versioning
At table unlock, set file->state to point to live state. (Needed for information schema to pick up right number of rows)
In ha_maria::implicit_commit() move all locked (ie open) tables to new transaction. This is needed to ensure ha_maria->info doesn't point to a deleted history event.
Disable concurrent inserts for insert ... select and table changes with subqueries if statement based replication as this would cause wrong results on slave
storage/maria/ma_blockrec.c:
Updated comment
storage/maria/ma_check.c:
Compact key pages (removes transid) when doing --zerofill
Check that 'page_flag' on key pages contains KEYPAGE_FLAG_HAS_TRANSID if there is a single key on the page with a transid
Modified functions to use MARIA_KEY instead of key pointer and key length
Use new interface to _ma_rec_pos(), _ma_dpointer(), _ma_ft_del(), ma_update_state_lsn()
Removed not needed argument from get_record_for_key()
Fixed that we check doesn't give errors for RTREE; We now treath these like SPATIAL
Remove some SPATIAL specific code where the virtual functions can handle this in a general manner
Use info->lastkey_buff instead of info->lastkey
_ma_dpos() -> _ma_row_pos_from_key()
_ma_make_key() -> keyinfo->make_key()
_ma_print_key() -> _ma_print_keydata()
_ma_move_key() -> ma_copy_copy()
Add SEARCH_INSERT to signal ha_key_cmp that we we should also compare rowid for keys
Ensure that data on page doesn't overwrite page checksum position
Use DBUG_DUMP_KEY instead of DBUG_DUMP
Use exact key lengths instead of USE_WHOLE_KEY to ha_key_cmp()
Fixed check if rowid points outside of BLOCK_RECORD data file
Use info->lastkey_buff instead of key on stack in some safe places
Added #fdef EXTERNAL_LOCKING around removed state elements
storage/maria/ma_close.c:
Use keyinfo->root_lock instead of share->key_root_lock[keynr]
storage/maria/ma_create.c:
Removed assert that is already checked in maria_init()
Force transactinal tables to be of type BLOCK_RECORD
Fixed wrong usage of HA_PACK_RECORD (should be HA_OPTION_PACK_RECORD)
Mark keys that uses HA_KEY_ALG_RTREE with HA_RTREE_INDEX for easier handling of these in ma_check
Store max_trid in index file as state.create_trid. This is used to pack all transids in the index pages relative to max possible transid for file.
storage/maria/ma_dbug.c:
Changed _ma_print_key() to use MARIA_KEY
storage/maria/ma_delete.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
info->lastkey2-> info->lastkey_buff2
Added SEARCH_INSERT to signal ha_key_cmp that we we should also compare rowid for keys
Use new interface for get_key(), _ma_get_last_key() and others
_ma_dpos() -> ma_row_pos_from_key()
Simplify setting of prev_key in del()
Ensure that KEYPAGE_FLAG_HAS_TRANSID is set in page_flag if key page has transid
Treath key pages that may have a transid as if keys would be of variable length
storage/maria/ma_delete_all.c:
Reset history state if maria_delete_all_rows() are called
Update parameters to _ma_update_state_lsns() call
storage/maria/ma_extra.c:
Store and restore info->lastkey
storage/maria/ma_ft_boolean_search.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_ft_nlq_search.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Use lastkey_buff2 instead of info->lastkey+info->s->base.max_key_length (same thing)
storage/maria/ma_ft_update.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_ftdefs.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_fulltext.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_init.c:
Check if blocksize is legal
(Moved test here from ma_open())
storage/maria/ma_key.c:
Added functions for storing/reading of transid
Modified functions to use MARIA_KEY instead of key pointer and key length
Moved _ma_sp_make_key() out of _ma_make_key() as we now use keyinfo->make_key to create keys
Add transid to keys if table is versioned
Added _ma_copy_key()
storage/maria/ma_key_recover.c:
Add logging of page_flag (holds information if there are keys with transid on page)
Changed DBUG_PRINT("info" -> DBUG_PRINT("redo" as the redo logging can be quite extensive
Added lots of DBUG_PRINT()
Added support for index page operations: KEY_OP_SET_PAGEFLAG and KEY_OP_COMPACT_PAGE
storage/maria/ma_key_recover.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_locking.c:
Added new arguments to _ma_update_state_lsns_sub()
storage/maria/ma_loghandler.c:
Fixed all logging of LSN to look similar in DBUG log
Changed if (left != 0) to if (left) as the later is used also later in the code
storage/maria/ma_loghandler.h:
Added new index page operations
storage/maria/ma_open.c:
Removed allocated "state_dummy" and instead use share->state.common for transactional tables that are not versioned
This is needed to not get double increments of state.records (one in ma_write.c and on when log is written)
Changed info->lastkey to MARIA_KEY type
Removed resetting of MARIA_HA variables that have 0 as default value (as info is zerofilled)
Enable versioning for transactional tables with index. Tables with an auto-increment key, rtree or fulltext keys are not versioned.
Check on open that state.create_trid is correct
Extend share->base.max_key_length in case of transactional table so that it can hold transid
Removed 4.0 compatible fulltext key mode as this is not relevant for Maria
Removed old and wrong #ifdef ENABLE_WHEN_WE_HAVE_TRANS_ROW_ID code block
Initialize all new virtual function pointers
Removed storing of state->unique, state->process and store state->create_trid instead
storage/maria/ma_page.c:
Added comment to describe key page structure
Added functions to compact key page and log the compact operation
storage/maria/ma_range.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Use SEARCH_PART_KEY indicator instead of USE_WHOLE_KEY to detect if we are doing a part key search
Added handling of pages with transid
storage/maria/ma_recovery.c:
Don't assert if table we opened are not transactional. This may be a table which has been changed from transactional to not transactinal
Added new arguments to _ma_update_state_lsns()
storage/maria/ma_rename.c:
Added new arguments to _ma_update_state_lsns()
storage/maria/ma_rkey.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Don't use USE_WHOLE_KEY, use real length of key
Use share->row_is_visible() to test if row is visible
Moved search_flag == HA_READ_KEY_EXACT out of 'read-next-row' loop as this only need to be tested once
Removed test if last_used_keyseg != 0 as this is always true
storage/maria/ma_rnext.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Simplify code by using local variable keyinfo instead if share->keyinfo[i]
Use share->row_is_visible() to test if row is visible
storage/maria/ma_rnext_same.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
lastkey2 -> lastkey_buff2
storage/maria/ma_rprev.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Simplify code by using local variable keyinfo instead if share->keyinfo[i]
Use share->row_is_visible() to test if row is visible
storage/maria/ma_rsame.c:
Updated comment
Simplify code by using local variable keyinfo instead if share->keyinfo[i]
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_rsamepos.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_rt_index.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Use better variable names
Removed not needed casts
_ma_dpos() -> _ma_row_pos_from_key()
Use info->last_rtree_keypos to save position to key instead of info->int_keypos
Simplify err: condition
Changed return type for maria_rtree_insert() to my_bool as we are only intressed in ok/fail from this function
storage/maria/ma_rt_index.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_rt_key.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Simplify maria_rtree_add_key by combining idenitcal code and removing added_len
storage/maria/ma_rt_key.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_rt_mbr.c:
Changed type of 'nextflag' to uint32
Added 'to' argument to RT_PAGE_MBR_XXX functions to more clearly see which variables changes value
storage/maria/ma_rt_mbr.h:
Changed type of 'nextflag' to uint32
storage/maria/ma_rt_split.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
key_length -> key_data_length to catch possible errors
storage/maria/ma_rt_test.c:
Fixed wrong comment
Reset recinfo to avoid valgrind varnings
Fixed wrong argument to create_record() that caused test to fail
storage/maria/ma_search.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Added support of keys with optional trid
Test for SEARCH_PART_KEY instead of USE_WHOLE_KEY to detect part key reads
_ma_dpos() -> _ma_row_pos_from_key()
If there may be keys with transid on the page, have _ma_bin_search() call _ma_seq_search()
Add _ma_skip_xxx() functions to quickly step over keys (faster than calling get_key() in most cases as we don't have to copy key data)
Combine similar code at end of _ma_get_binary_pack_key()
Removed not used function _ma_move_key()
In _ma_search_next() don't call _ma_search() if we aren't on a nod page.
Update info->cur_row.trid with trid for found key
Removed some not needed casts
Added _ma_trid_from_key()
Use MARIA_SHARE instead of MARIA_HA as arguments to _ma_rec_pos(), _ma_dpointer() and _ma_xxx_keypos_to_recpos() to make functions faster and smaller
storage/maria/ma_sort.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_sp_defs.h:
_ma_sp_make_key() now fills in and returns (MARIA_KEY *) value
storage/maria/ma_sp_key.c:
_ma_sp_make_key() now fills in and returns (MARIA_KEY *) value
Don't test sizeof(double), test against 8 as we are using float8store()
Use mi_float8store() instead of doing swap of value (same thing but faster)
storage/maria/ma_state.c:
maria_versioning() now only calls _ma_block_get_status() if table supports versioning
Added _ma_row_visible_xxx() functions for different occasions
When emptying history, set info->state to point to the first history event.
storage/maria/ma_state.h:
Added _ma_row_visible_xxx() prototypes
storage/maria/ma_static.c:
Indentation changes
storage/maria/ma_statrec.c:
Fixed arguments to _ma_dpointer() and _ma_rec_pos()
storage/maria/ma_test1.c:
Call init_thr_lock() if we have versioning
storage/maria/ma_test2.c:
Call init_thr_lock() if we have versioning
storage/maria/ma_unique.c:
Modified functions to use MARIA_KEY
storage/maria/ma_update.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
storage/maria/ma_write.c:
Modified functions to use MARIA_KEY instead of key pointer and key length
Simplify code by using local variable keyinfo instead if share->keyinfo[i]
In _ma_enlarge_root(), mark in page_flag if new key has transid
_ma_dpos() -> _ma_row_pos_from_key()
Changed return type of _ma_ck_write_tree() to my_bool as we are only testing if result is true or not
Moved 'reversed' to outside block as area was used later
storage/maria/maria_chk.c:
Added error if trying to sort with HA_BINARY_PACK_KEY
Use new interface to get_key() and _ma_dpointer()
_ma_dpos() -> _ma_row_pos_from_key()
storage/maria/maria_def.h:
Modified functions to use MARIA_KEY instead of key pointer and key length
Added 'common' to MARIA_SHARE->state for storing state for transactional tables without versioning
Added create_trid to MARIA_SHARE
Removed not used state variables 'process' and 'unique'
Added defines for handling TRID's in index pages
Changed to use MARIA_SHARE instead of MARIA_HA for some functions
Added 'have_versioning' flag if table supports versioning
Moved key_root_lock from MARIA_SHARE to MARIA_KEYDEF
Changed last_key to be of type MARIA_KEY. Removed lastkey_length
lastkey -> lastkey_buff, lastkey2 -> lastkey_buff2
Added _ma_get_used_and_nod_with_flag() for faster access to page data when page_flag is read
Added DBUG_DUMP_KEY for easier DBUG_DUMP of a key
Changed 'nextflag' and assocaited variables to uint32
storage/maria/maria_ftdump.c:
lastkey -> lastkey_buff
storage/maria/trnman.c:
Fixed wrong initialization of min_read_from and max_commit_trid
Added trnman_get_min_safe_trid()
storage/maria/unittest/ma_test_all-t:
Added --start-from
storage/myisam/mi_check.c:
Added SEARCH_INSERT, as ha_key_cmp() needs it when doing key comparision for inserting key on page in rowid order
storage/myisam/mi_delete.c:
Added SEARCH_INSERT, as ha_key_cmp() needs it when doing key comparision for inserting key on page in rowid order
storage/myisam/mi_range.c:
Updated comment
storage/myisam/mi_write.c:
Added SEARCH_INSERT, as ha_key_cmp() needs it when doing key comparision for inserting key on page in rowid order
storage/myisam/rt_index.c:
Fixed wrong parameter to rtree_get_req() which could cause crash
|
18 years ago |
|
|
c9a825810d |
WL#3072 - Maria Recovery
Recovery of R-tree and fulltext indices.
Fix for BUG#35551 "Maria: crash in REPAIR TABLE/ENABLE KEYS if using
repair-with-keycache method".
Fix for bug (see ma_rt_index.c) where we could have a wrong
page_link pointer causing wrong memory access during some R-tree
index insert/delete.
Making ma_rt_test work again (it had been neglected over time) and
adding options (record type etc) to prepare it for integration into
ma_test_all-t (but there is BUG#36321 about "ma_rt_test -M" crash)
mysql-test/r/maria.result:
correct result
mysql-test/t/maria.test:
now we get no error
storage/maria/ma_blockrec.c:
delete_dir_entry() and delete_head_or_tail() don't use info->keyread_buff.
ma_get_length() does not change **packet, marking it with 'const' to
remove some casts in callers of this function. The
(const uchar**)&header casts will be removed when Monty changes 'header'
to const uchar*.
_ma_apply_redo_purge_row_head_or_tail() sets 'buff' from pagecache_read()
so its initialization was superfluous.
storage/maria/ma_check.c:
Fix for BUG#35551 "Maria: crash in REPAIR TABLE/ENABLE KEYS if using repair-with-keycache method"
(see comment in code)
storage/maria/ma_create.c:
FULLTEXT and SPATIAL indices have logging now, they are recoverable.
storage/maria/ma_delete.c:
Logging done by _ma_ck_delete() is moved to a function
(_ma_write_undo_key_delete()), for reusal by R-tree logging.
_ma_log_delete() is made non-static for same
reason, and some of its parameters are made pointers to const.
Removed wrong comment ("Note that for delete key" etc, contradicted by
code and comment "Log also position to row" a few lines above)
storage/maria/ma_ft_update.c:
unneeded cast, comment for future
storage/maria/ma_key_recover.c:
Comment about possible deadlock.
Write bad page to DBUG trace if KEY_OP_CHECK founds bad CRC.
Support operation KEY_OP_MULTI_COPY.
When we execute, in UNDO phase, UNDO_KEY_DELETE|INSERT, we must call
the proper key insertion|deletion depending on if this is R-tree
or B-tree.
Explanation of of _ma_[un]lock_key_del() work, maybe useful for
mortals like me.
storage/maria/ma_key_recover.h:
change of prototypes
storage/maria/ma_loghandler.h:
New operation which can be stored in REDO_INDEX log records: KEY_OP_MULTI_COPY
storage/maria/ma_page.c:
Comments
storage/maria/ma_pagecache.c:
typo
storage/maria/ma_rt_index.c:
Fix for bug: the page_link pointer in maria_rtree_insert_req()
could be wrong when we set its 'changed' member; for the solution
see ma_key_recover.h. It is needed only in cases when we manipulate
several pages.
Logging of changes done to pages by key insert/delete.
maria_rtree_delete()'s main work is moved to a new function
maria_rtree_real_delete(), which is used by maria_rtree_delete()
and by applying of UNDO_KEY_INSERT.
storage/maria/ma_rt_index.h:
new prototypes and macros for ma_rt_index.c
storage/maria/ma_rt_key.c:
Logging of maria_rtree_add_key() and maria_rtree_delete_key().
When inserting, split is necessary if there is not enough room for key:
take checksum's occupied space in this calculation.
storage/maria/ma_rt_key.h:
new prototypes (those functions need to know the page's id
because they do logging)
storage/maria/ma_rt_mbr.c:
Comments about what the functions change.
storage/maria/ma_rt_split.c:
maria_rtree_split_page() needs to know the page's id, because
it does logging.
Logging of what a split operation does to the split page (see
comment of _ma_log_rt_split(): moves of keys inside the page,
sometimes insertion of the new key, and shrinking of the page)
and to the new page (receives some keys from split page, and
sometimes the new key).
storage/maria/ma_rt_test.c:
ma_rt_test had been forgotten when maria_rkey() was changed some months ago
(0->HA_WHOLE_KEY change), and when calls to maria_rnd(,,HA_OFFSET_ERROR)
were rewritten to maria_scan() calls (which implies maria_scan_init()).
The 'max_i' change is to adapt to the fact that maria_scan() does
not return deleted records for BLOCK_RECORD but does so for other formats;
the initial code assumed a certain number of deleted records would be
returned, we change it to rather count only non-deleted ones.
We also add more features to this test, like ma_test1 (the plan
is to run ma_rt_test in ma_test_all-t):
options to choose records' format, table checksum, transactions,
checkpoints, end at specific stages, abort without committing,
and debug trace.
storage/maria/ma_test1.c:
MY_INIT() does my_init().
storage/maria/ma_write.c:
Logging done by _ma_ck_write_btree_with_log() is moved to a function
(_ma_write_undo_key_insert()), for reusal by R-tree logging.
_ma_log_new() and _ma_log_change() are made non-static for same
reason. Some parameters of logging functions are made pointers to const.
If EXTRA_DEBUG_KEY_CHANGES, we now log CRC in _ma_log_change() too
(better checks, bigger record).
storage/maria/maria_read_log.c:
Program takes no arguments, bail out if any, instead of silently discarding them
storage/myisam/rt_test.c:
rt_test had been forgotten when mi_rkey() was changed some months ago
(0->HA_WHOLE_KEY change).
The 'max_i' change is to make it symmetric with ma_rt_test.c
mysql-test/r/maria-gis-rtree-dynamic.result:
correct result
mysql-test/r/maria-gis-rtree-trans.result:
correct result
mysql-test/r/maria-recovery-rtree-ft.result:
almost correct result (hitting BUG# in the end)
mysql-test/t/maria-gis-rtree-dynamic.test:
test R-tree & dynamic row format
mysql-test/t/maria-gis-rtree-trans.test:
Test R-tree and page row format and transactional
mysql-test/t/maria-recovery-rtree-ft-master.opt:
usual options for recovery testing
mysql-test/t/maria-recovery-rtree-ft.test:
test of recovery of R-tree and fulltext indices.
|
18 years ago |
|
|
f094eff1d9 |
Injecting more "const" declarations into code which does not change
pointed data. I ran gcc -Wcast-qual on storage/maria, this identified un-needed casts, a couple of functions which said they had a const parameter though they changed the pointed content! This is fixed here. Some suspicious places receive a comment. The original intention of running -Wcast-qual was to find what code changes R-tree keys: I added const words, but hidden casts like those of int2store (casts target to (uint16*)) removed const checking; -Wcast-qual helped find those hidden casts. Log handler does not change the content pointed by LEX_STRING::str it receives, so we now use a struct which has a const inside, to emphasize this and be able to pass "const uchar*" buffers to log handler without fear of their content being changed by it. One-line fix for a merge glitch (when merging from MyISAM). include/m_string.h: As Maria's log handler uses LEX_STRING but never changes the content pointed by LEX_STRING::str, and assigns uchar* into this member most of the time, we introduce a new struct LEX_CUSTRING (C const U unsigned) for the log handler. include/my_global.h: In macros which read pointed content: use const pointers so that gcc -Wcast-qual does not warn about casting a const pointer to non-const. include/my_handler.h: In macros which read pointed content: use const pointers so that gcc -Wcast-qual does not warn about casting a const pointer to non-const. ha_find_null() does not change *a. include/my_sys.h: insert_dynamic() does not change *element. include/myisampack.h: In macros which read pointed content: use const pointers so that gcc -Wcast-qual does not warn about casting a const pointer to non-const. mysys/array.c: insert_dynamic() does not change *element mysys/my_handler.c: ha_find_null() does not change *a storage/maria/ma_bitmap.c: Log handler receives const strings now storage/maria/ma_blockrec.c: Log handler receives const strings now. _ma_apply_undo_row_delete/update() do change *header. storage/maria/ma_blockrec.h: correct prototype storage/maria/ma_check.c: Log handler receives const strings now. Un-needed casts storage/maria/ma_checkpoint.c: Log handler receives const strings now storage/maria/ma_checksum.c: unneeded cast storage/maria/ma_commit.c: Log handler receives const strings now storage/maria/ma_create.c: Log handler receives const strings now storage/maria/ma_dbug.c: fixing warning of gcc -Wcast-qual storage/maria/ma_delete.c: Log handler receives const strings now storage/maria/ma_delete_all.c: Log handler receives const strings now storage/maria/ma_delete_table.c: Log handler receives const strings now storage/maria/ma_dynrec.c: fixing some warnings of gcc -Wcast-qual. Unneeded casts removed. Comment about function which lies. storage/maria/ma_ft_parser.c: fix for warnings of gcc -Wcast-qual, removing unneeded casts storage/maria/ma_ft_update.c: less casts, comment storage/maria/ma_key.c: less casts, stay const (warnings of gcc -Wcast-qual) storage/maria/ma_key_recover.c: Log handler receives const strings now storage/maria/ma_loghandler.c: Log handler receives const strings now storage/maria/ma_loghandler.h: Log handler receives const strings now storage/maria/ma_loghandler_lsn.h: In macros which read pointed content: use const pointers so that gcc -Wcast-qual does not warn about casting a const pointer to non-const. storage/maria/ma_page.c: Log handler receives const strings now; more const storage/maria/ma_recovery.c: Log handler receives const strings now storage/maria/ma_rename.c: Log handler receives const strings now storage/maria/ma_rt_index.c: more const, to emphasize that functions don't change pointed content. best_key= NULL was forgotten during merge from MyISAM a few days ago, was causing a Valgrind warning storage/maria/ma_rt_index.h: new proto storage/maria/ma_rt_key.c: more const storage/maria/ma_rt_key.h: new proto storage/maria/ma_rt_mbr.c: more const for functions which deserve it storage/maria/ma_rt_mbr.h: new prototype storage/maria/ma_rt_split.c: make const what is not changed. storage/maria/ma_search.c: un-needed casts, more const storage/maria/ma_sp_key.c: more const storage/maria/ma_unique.c: un-needed casts. storage/maria/ma_write.c: Log handler receives const strings now storage/maria/maria_def.h: some more const storage/maria/unittest/ma_test_loghandler-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_first_lsn-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_max_lsn-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_multigroup-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_multithread-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_noflush-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_nologs-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_pagecache-t.c: Log handler receives const strings now storage/maria/unittest/ma_test_loghandler_purge-t.c: Log handler receives const strings now |
18 years ago |
|
|
963cd16722 |
Fixed excessive assertion reported in BUG#35031
"Using maria-block-size != 8192 makes Maria crash or say "error 174"" storage/maria/ma_create.c: fixed excessive assertion |
18 years ago |
|
|
311d8e898f |
Mac compiler warnings fixed.
include/maria.h: mac compiler warnings fixed. storage/maria/ma_bitmap.c: mac compiler warnings fixed. storage/maria/ma_blockrec.c: mac compiler warnings fixed. storage/maria/ma_check.c: mac compiler warnings fixed. storage/maria/ma_control_file.c: mac compiler warnings fixed. storage/maria/ma_create.c: mac compiler warnings fixed. storage/maria/ma_delete.c: mac compiler warnings fixed. storage/maria/ma_ft_boolean_search.c: mac compiler warnings fixed. storage/maria/ma_page.c: mac compiler warnings fixed. storage/maria/ma_pagecache.c: mac compiler warnings fixed. storage/maria/ma_recovery.c: mac compiler warning fixed. storage/maria/ma_rt_test.c: mac compiler warnings fixed. storage/maria/ma_search.c: mac compiler warning fixed. storage/maria/ma_write.c: mac compiler warnings fixed. storage/maria/unittest/ma_control_file-t.c: mac compiler warnings fixed. storage/maria/unittest/ma_pagecache_consist.c: mac compiler warnings fixed. storage/maria/unittest/ma_pagecache_single.c: mac compiler warnings fixed. storage/maria/unittest/ma_test_loghandler_pagecache-t.c: mac compiler warning fixed. storage/maria/unittest/test_file.c: mac compiler warning fixed. |
18 years ago |
|
|
ab0fa111fe |
Fixed bug in restoring auto-increment value in case of duplicate key with insert or update
Fixed bug when calculating max_key_length that caused some ALTER TABLE to fail if MAX_ROWS was used. Use maria_block_size instead of MARIA_MIN_KEY_BLOCK_LENGTH Fixed bug when scanning table with BLOCK format for repair; If table was > bitmap coverage one page block was read twice which caused a lot of duplicate key errors Could not repeat Bug#34106 "auto_increment is reset to 1 when table is recovered from crash" after this patch. NOTE: This is an incompatible change, so one must do maria_chk -r on ones old Maria tables! Sorry, but this was needed to fix the bug with max_key_length and to be able to handle bigger key files with smaller key references cmd-line-utils/readline/readline.c: Fixed compiler warnings mysql-test/r/maria.result: Added more test of auto-increment handling mysql-test/t/maria.test: Added more test of auto-increment handling mysys/my_pread.c: Fixed wrong test Removed not needed tests (error is always 1 if readbytes != Count) mysys/my_read.c: Fixed wrong test storage/maria/ha_maria.cc: Disable LOAD INDEX until I got Sanja's extension to pagecache interface storage/maria/ma_blockrec.c: Ensure that info->last_auto_increment is reset properly storage/maria/ma_check.c: Fixed wrong printing of row number in case of duplicate key for --safe-repair Safety fix in recreate table so that Column numbers are given to maria_create() in original order Added missing HA_OPEN_FOR_REPAIR to maria_open() Fixed bug when scanning table with BLOCK format for repair; If table was > bitmap coverage one page block was read twice which caused a lot of duplicate key errors storage/maria/ma_create.c: Use correct value for how much free space there is on a key page Remember some missing table option when doing re-create. Removed optimization where last packed fields is unpacked; Caused problems for re-create. storage/maria/ma_delete.c: Ensure that info->last_auto_increment is reset properly Fix for update to restore autoincrement value on duplicate key storage/maria/ma_key_recover.c: Moved handling of restoring value of auto-increment in case of duplicate key from clr to undo This ensures the restoring works both for insert and update and also that this is symetrical to how the auto_increment value is stored storage/maria/ma_key_recover.h: Added new prototype storage/maria/ma_loghandler.c: Added hook to write_hook_for_undo_key_delete() storage/maria/ma_open.c: Fixed wrong calculation of max_key_file_length storage/maria/ma_page.c: Use maria_block_size instead of MARIA_MIN_KEY_BLOCK_LENGTH Increase internal buffer (safety fix) storage/maria/ma_search.c: Use maria_block_size instead of MARIA_MIN_KEY_BLOCK_LENGTH Note that this is an incompatible change, so one must do maria_chk -r on ones old Maria tables (sorry) storage/maria/ma_update.c: Ensure that info->last_auto_increment is reset properly storage/maria/ma_write.c: Ensure that info->last_auto_increment is reset properly Fix for update to restore autoincrement value on duplicate key storage/maria/maria_chk.c: Allow small page_buffer_size Fixed printing for --describe to better fit into 80 characters storage/maria/maria_def.h: Added comments |
18 years ago |
|
|
7a4bd76acd |
Fixes for the remaining 'not-yet-fixed' bugs found by Guilhem when running all tests with maria engine and one bug in maria_pack reported by Martin:
- Fix that query cache works with Maria - Fixed wrong calculation if min_key_length which casued some tables to assert in insert if key contained NULL - Restore auto_increment value if insert statement fails - Fixed rare bug that caused crash in maria_pack if buffer was flushed at wrong point in time configure.in: Added maria extension to distribution mysql-test/r/maria.result: More test cases to cover bugs found by Guilhem mysql-test/t/maria.test: More test cases to cover bugs found by Guilhem storage/maria/ha_maria.cc: Fix that query cache works with Maria storage/maria/ma_blockrec.c: Removed duplicate functionallity (already done in ma_pagecrc.c) storage/maria/ma_create.c: Fixed wrong calculation if min_key_length which casued some tables to assert in insert if key contained NULL storage/maria/ma_key_recover.c: Restore auto_increment value if insert statement fails storage/maria/maria_def.h: Added variables to track auto_increment changes to be able to restore it in case of duplicate key storage/maria/maria_pack.c: Fixed rare bug that caused crash if buffer was flushed at wrong point in time storage/maria/unittest/ma_test_all-t: Added option --abort-on-error Ordered help message |
18 years ago |
|
|
5cca615caf |
Allow index on 'CHAR(0) NULL' columns
Fixed error in Maria when using table with only CHAR(0) fields Fixed valgrind warning BitKeeper/etc/ignore: added storage/maria/maria_dump_log mysql-test/r/maria.result: Testing of table with char(0) mysql-test/t/maria.test: Testing of table with char(0) sql/sql_table.cc: Allow index on 'CHAR(0) NULL' columns storage/maria/ma_create.c: Allow creation of table with 0 record data (for example CHAR(0)) storage/maria/ma_pagecrc.c: Fixed valgrind warning |
18 years ago |
|
|
534417c285 |
WL#3072 - Maria Recovery
Bulk insert: don't log REDO/UNDO for rows, log one UNDO which will truncate files; this is an optimization and a bugfix (table was left half-repaired by crash). Repair: mark table crashed-on-repair at start, bump skip_redo_lsn at start, this is easier for recovery (tells it to skip old REDOs or even UNDO phase) and user (tells it to repair) in case of crash, sync files in the end. Recovery skips missing or corrupted table and moves to next record (in REDO or UNDO phase) to be more robust; warns if happens in UNDO phase. Bugfix for UNDO_KEY_DELETE_WITH_ROOT (tested in ma_test_recovery) and maria_enable_indexes(). Create missing bitmaps when needed (there can be more than one to create, in rare cases), log a record for this. include/myisamchk.h: new flag: bulk insert repair mustn't bump create_rename_lsn mysql-test/lib/mtr_report.pl: skip normal warning in maria-recovery.test mysql-test/r/maria-recovery.result: result: crash before bulk insert is committed, causes proper rollback, and crash right after OPTIMIZE replaces index file with new index file leads to table marked corrupted and recovery not failing. mysql-test/t/maria-recovery.test: - can't check the table or it would commit the transaction, but check is made after recovery. - test of crash before bulk-insert-with-repair is committed (to see if it is rolled back), and of crash after OPTIMIZE has replaced index file but not finished all operations (to see if recovery fails - it used to assert when trying to execute an old REDO on the new index). storage/maria/CMakeLists.txt: new file storage/maria/Makefile.am: new file storage/maria/ha_maria.cc: - If bulk insert on a transactional table using an index repair: table is initially empty, so don't log REDO/UNDO for data rows (optimization), just log an UNDO_BULK_INSERT_WITH_REPAIR which will, if executed, empty the data and index file. Re-enable logging in end_bulk_insert(). - write log record for repair operation only after it's fully done, index sort including (maria_repair*() used to write the log record). - Adding back file->trn=NULL which was removed by mistake earlier. storage/maria/ha_maria.h: new member (see ha_maria.cc) storage/maria/ma_bitmap.c: Functions to create missing bitmaps: - one function which creates missing bitmaps in page cache, except the missing one with max offset which it does not put into page cache as it will be modified very soon. - one function which the one above calls, and creates bitmaps in page cache - one function to execute REDO_BITMAP_NEW_PAGE which uses the second one above. storage/maria/ma_blockrec.c: - when logging REDO_DELETE_ALL, not only 'records' and 'checksum' has to be reset under log's mutex. - execution of REDO_INSERT_ROW_BLOBS now checks the dirty pages' list - execution of UNDO_BULK_INSERT_WITH_REPAIR storage/maria/ma_blockrec.h: new functions storage/maria/ma_check.c: - table-flush-before-repair is moved to a separate function reused by maria_sort_index(); syncing is added - maria_repair() is allowed to re-enable logging only if it is the one which disabled it. - "_ma_flush_table_files_after_repair" was a bad name, it's not after repair now, and it should not sync as we do more changes to the files shortly after (sync is postponed to when writing the log record) - REDO_REPAIR record should be written only after all repair operations (in particular after sorting index in ha_mara::repair()) - close to the end of repair by sort, flushing of pages must happen also in the non-quick case, to prepare for the sync at end. - in parallel repair, some page flushes are not needed as done by initialize_variables_for_repair(). storage/maria/ma_create.c: Update skip_redo_lsn, create_rename_lsn optionally. storage/maria/ma_delete_all.c: Need to sync files at end of maria_delete_all_rows(), if transactional. storage/maria/ma_extra.c: During repair, we sometimes call _ma_flush_table_files() (via _ma_flush_table_files_before_swap()) while there is a WRITE_CACHE. storage/maria/ma_key_recover.c: - when we see CLR_END for UNDO_BULK_INSERT_WITH_REPAIR, re-enable indices. - fixing bug: _ma_apply_undo_key_delete() parsed UNDO_KEY_DELETE_WITH_ROOT wrongly, leading to recovery failure storage/maria/ma_key_recover.h: new prototype storage/maria/ma_locking.c: DBUG_VOID_RETURN missing storage/maria/ma_loghandler.c: UNDO for bulk insert with repair, and REDO for creating bitmaps. LOGREC_FIRST_FREE to not have to change the for() every time we add a new record type. storage/maria/ma_loghandler.h: new UNDO and REDO storage/maria/ma_open.c: Move share.kfile.file=kfile up a bit, so that _ma_update_state_lsns() can get its value, this fixes a bug where LSN_REPAIRED_BY_MARIA_CHK was not corrected on disk by maria_open(). Store skip_redo_lsn in index' header. maria_enable_indexes() had a bug for BLOCK_RECORD, where an empty file has one page, not 0 bytes. storage/maria/ma_recovery.c: - Skip a corrupted, missing, or repaired-with-maria_chk, table in recovery: don't fail, just go to next REDO or UNDO; but if an UNDO is skipped in UNDO phase we issue warnings. - Skip REDO|UNDO in REDO phase if <skip_redo_lsn. - If UNDO phase fails, delete transactions to not make trnman assert. - Update skip_redo_lsn when playing REDO_CREATE_TABLE - Don't record UNDOs for old transactions which we don't know (long_trid==0) - Bugfix for UNDO_KEY_DELETE_WITH_ROOT (see ma_key_recover.c) - Execution of UNDO_BULK_INSERT_WITH_REPAIR - Don't try to find a page number in REDO_DELETE_ALL - Pieces moved to ma_recovery_util.c storage/maria/ma_rename.c: name change storage/maria/ma_static.c: I modified layout of the index' header (inserted skip_redo_lsn in its middle) storage/maria/ma_test2.c: allow breaking the test towards the end, tests execution of UNDO_KEY_DELETE_WITH_ROOT storage/maria/ma_test_recovery.expected: 6 as testflag instead of 4 storage/maria/ma_test_recovery: Increase the amount of rollback work to do when testing recovery with ma_test2; this reproduces the UNDO_KEY_DELETE_WITH_ROOT bug. storage/maria/maria_chk.c: skip_redo_lsn should be updated too, for consistency. Write a REDO_REPAIR after all operations (including sort-records) have been done. No reason to flush blocks after maria_chk_data_link() and maria_sort_records(), there is maria_close() in the end. write_log_record() is a function, to not clutter maria_chk(). storage/maria/maria_def.h: New member skip_redo_lsn in the state, and comments storage/maria/maria_pack.c: skip_redo_lsn should be updated too, for consistency storage/maria/ma_recovery_util.c: _ma_redo_not_needed_for_page(), defined in ma_recovery.c, is needed by ma_blockrec.c; this causes link issues, resolved by putting _ma_redo_not_needed_for_page() into a new file (so that it is not in the same file as repair-related objects of ma_recovery.c). storage/maria/ma_recovery_util.h: new file |
18 years ago |
|
|
e689fbc458 |
Fixed compiler warnings by adding casts and changing variable types
Fixed bug that caused change_user.test to fail Fixed bug that caused mysql_client_test to fail include/myisam.h: Fixed prototypes mysql-test/r/create.result: Fix that test works even if Maria is not used for temporary tables mysql-test/t/create.test: Fix that test works even if Maria is not used for temporary tables sql/mysqld.cc: Fixed that default value of max_join_size is set correctly; It needs to match usage in set_var.cc sql/set_var.cc: Fixed test, now when max_join_size is initialized correctly sql/sql_select.cc: Fixed that one can compile without -DUSE_MARIA_FOR_TMP_TABLES storage/maria/ma_blockrec.c: Fixed compiler warnings by adding casts storage/maria/ma_checkpoint.c: Fixed compiler warnings by adding casts storage/maria/ma_create.c: Fixed compiler warnings by adding casts storage/maria/ma_delete_table.c: Fixed compiler warnings by adding casts storage/maria/ma_loghandler.c: Fixed compiler warnings by adding casts and changing types for variables Changed translog_new_page_header to use changing integer instead of calling time() as time() is a slow call and will give same results when calling many times withing one second storage/maria/ma_pagecrc.c: Fixed compiler warnings by adding casts storage/maria/ma_recovery.c: Fixed indentation storage/myisam/ha_myisam.cc: Fixed wrong types for variables Changed chk_data_link() and repair*() functions to take my_bool as argument storage/myisam/mi_check.c: Fixes to handle that param.test_flag is now ulonglong storage/myisam/myisamchk.c: Fixes to handle that param.test_flag is now ulonglong support-files/compiler_warnings.supp: Fixed line numbers |
18 years ago |
|
|
266fde77b2 |
Added --loose-skip-maria to MYSQLD_BOOTSTRAP_CMD to get bootstrap.test to work
Allow one to run bootstrap even if --skip-maria is used (needed for bootstrap.test) Fixed lots of compiler warnings NOTE: maria-big and maria-recover tests failes becasue of bugs in transaction log handling. Sanja knows about this and is working on it! mysql-test/mysql-test-run.pl: Added --loose-skip-maria to MYSQLD_BOOTSTRAP_CMD to get bootstrap.test to work mysql-test/r/maria-recovery.result: Updated results mysql-test/t/bootstrap.test: Removed not needed empty line mysql-test/t/change_user.test: Fixed results for 32 bit systems mysql-test/t/maria-big.test: Only run this when you use --big mysql-test/t/maria-recovery.test: Added test case for recovery with big blobs mysys/my_uuid.c: Fixed compiler warning sql/mysqld.cc: Allow one to run bootstrap even if --skip-maria is used (needed for bootstrap.test) sql/set_var.cc: Compare max_join_size with ULONG_MAX instead of HA_POS_ERROR as we set max_join_size to ULONG_MAX by default storage/maria/ma_bitmap.c: Added __attribute((unused)) to fix compiler warning storage/maria/ma_blockrec.c: Added casts to remove compiler warnings Change variable types to avoid compiler warnings storage/maria/ma_check.c: Added casts to remove compiler warnings storage/maria/ma_checkpoint.c: Change variable types to avoid compiler warnings storage/maria/ma_create.c: Change variable types to avoid compiler warnings storage/maria/ma_delete.c: Added casts to remove compiler warnings storage/maria/ma_key_recover.c: Added casts to remove compiler warnings storage/maria/ma_loghandler.c: Moved initiazation of prev_buffer first as this could otherwise not be set in case of errors storage/maria/ma_page.c: Added casts to remove compiler warnings storage/maria/ma_pagecache.c: Added __attribute((unused)) to fix compiler warning storage/maria/ma_pagecrc.c: Added #ifndef DBUG_OFF to remove compiler warning storage/maria/ma_recovery.c: Added casts to remove compiler warnings storage/maria/ma_write.c: Added casts to remove compiler warnings storage/maria/maria_chk.c: Split long string into two to avoid compiler warnings storage/myisam/ft_boolean_search.c: Added LINT_INIT() to remove compiler warning support-files/compiler_warnings.supp: Suppress wrong compiler warning unittest/mytap/tap.c: Fixed declaration to match prototypes to remove compiler warnings |
18 years ago |
|
|
5ad477f6cb |
Added --with-maria-tmp-tables (default one) to allow on to configure if Maria should be used for internal temporary tables
Abort mysqld if Maria engine didn't start and we are using Maria for temporary tables Fixed bug that caused update of big blobs to crash Use pagecache_page_no_t as type for pages (to get rid of compiler warnings) Added cast to get rid of compiler warning Fixed wrong types of variables and arguments that caused lost information Fixed wrong DBUG_ASSERT() that caused REDO of big blobs to fail Removed some historical ifdefs that caused problem with windows compilations BUILD/SETUP.sh: Added --with-maria-tmp-tables include/maria.h: Use pagecache_page_no_t as type for pages Use my_bool as parameter for 'rep_quick' option include/my_base.h: Added comment mysql-test/r/maria-big.result: Added test that uses big blobs mysql-test/t/maria-big.test: Added test that uses big blobs sql/mysqld.cc: Abort mysqld if Maria engine didn't start and we are using Maria for temporary tables sql/sql_class.h: Don't use Maria for temporary tables if --with-maria-tmp-tables is not defined sql/sql_select.cc: Don't use Maria for temporary tables if --with-maria-tmp-tables is not defined storage/maria/ha_maria.cc: Fixed compiler warnings reported by MCC - Fixed usage of wrong types that caused data loss - Changed parameter for rep_quick to my_bool - Added safe casts Fixed indentation storage/maria/ma_bitmap.c: Use pagecache_page_no_t as type for pages Fixed compiler warnings Fixed bug that caused update of big blobs to crash storage/maria/ma_blockrec.c: Use pagecache_page_no_t as type for pages Use my_bool as parameter for 'rep_quick' option Fixed compiler warnings Fixed wrong DBUG_ASSERT() storage/maria/ma_blockrec.h: Use pagecache_page_no_t as type for pages storage/maria/ma_check.c: Fixed some wrong parameters where we didn't get all bits for test_flag Changed rep_quick to be of type my_bool Use pagecache_page_no_t as type for pages Added cast's to get rid of compiler warnings Changed type of record_pos to get rid of compiler warning storage/maria/ma_create.c: Added safe cast's to get rid of compiler warnings storage/maria/ma_dynrec.c: Fixed usage of wrong type storage/maria/ma_key.c: Fixed compiler warning storage/maria/ma_key_recover.c: Use pagecache_page_no_t as type for pages storage/maria/ma_loghandler_lsn.h: Added cast's to get rid of compiler warnings storage/maria/ma_page.c: Changed variable name from 'page' to 'pos' as it was an offset and not a page address Moved page_size inside block to get rid of compiler warning storage/maria/ma_pagecache.c: Fixed compiler warnings Replaced compile time assert with TODO storage/maria/ma_pagecache.h: Use pagecache_page_no_t as type for pages storage/maria/ma_pagecrc.c: Allow bitmap pages that is all zero storage/maria/ma_preload.c: Added cast to get rid of compiler warning storage/maria/ma_recovery.c: Changed types to get rid of compiler warnings Use bool for quick_repair to get rid of compiler warning Fixed some variables that was wrongly declared (not enough precission) Added cast to get rid of compiler warning storage/maria/ma_test2.c: Remove historical undefs storage/maria/maria_chk.c: Changed rep_quick to bool Fixed wrong parameter to maria_chk_data_link() storage/maria/maria_def.h: Use pagecache_page_no_t as type for pages storage/maria/maria_pack.c: Renamed isam -> maria storage/maria/plug.in: Added option --with-maria-tmp-tables storage/maria/trnman.c: Added cast to get rid of compiler warning storage/myisam/mi_test2.c: Remove historical undefs |
18 years ago |
|
|
7ecafcd18d |
Workaround internal compiler error in Visual Studio 2003.
|
18 years ago |
|
|
b5df1d3446 |
Bugs fixed:
- If not in autocommit mode, delete rows one by one so that we can roll back if necessary - bitmap->used_size was not correctly set, which caused bitmap pages to be overwritten - Fixed bug in bitmap handling when allocation tail pages - Ensure we reserve place for directory entry when calculation place for head and tail pages - Fixed wrong value in bitmap->size[0] - Fixed wrong assert in flush_log_for_bitmap - Fixed bug in _ma_bitmap_release_unused() where tail blocks could be wrongly reset - Mark new pages as changed (Required to get repair() to work) - Fixed problem with advancing log horizon pointer within one page bounds - Fixed DBUG_ASSERT() when enable_indexes failes for end_bulk_insert() - Fixed bug in logging of rows with more than one big blob - Fixed DBUG_ASSERTS() in pagecache to allow change of WRITE_LOCK to READ_LOCK in unlock() calls - Flush pagecache when we change from logging to not logging (if not, pagecache code breaks) - Ensure my_errno is set on return from write/delete/update - Fixed bug when using FIELD_SKIP_PRESPACE New features: - mysql_fix_privilege_tables now first uses binaries and scripts from source distribution, then in installed distribution - Fix that optimize works for Maria tables - maria_check --zerofill now also clear freed blob pages - maria_check -di now prints more information about record page utilization Optimizations: - Use pagecache_unlock_by_link() instead of pagecache_write() if possible. (Avoids a memory copy and a find_block) - Simplify code to abort when we found optimal bit pattern - Skip also full head page bit patterns when searching for tail - Increase default repair buffer to 128M for maria_chk and maria_read_log - Increase default sort buffer for maria_chk to 64M - Increase size of sortbuffer and pagecache for mysqld to 64M - VARCHAR/CHAR fields are stored in increasing length order for BLOCK_RECORD tables Better reporting: - Fixed test of error condition for flush (for better error code) - More error messages to mysqld if Maria recovery fails - Always print warning if rows are deleted in repair - Added global function _db_force_flush() that is usable when doing debugging in gdb - Added call to my_debug_put_break_here() in case of some errors (for debugging) - Remove used testfiles in unittest as these was written in different directories depending on from where the test was started This should fix the bugs found when importing a big table with many varchars and one/many blobs to Maria dbug/dbug.c: Added global function _db_force_flush() that is usable when doing debugging in gdbine extra/replace.c: Fixed memory leak include/my_dbug.h: Prototype for _db_force_flush() include/my_global.h: Added stdarg.h as my_sys.h now depends on it. include/my_sys.h: Make my_dbug_put_break_here() a NOP if not DBUG build Added my_printv_error() include/myisamchk.h: Added entry 'lost' to be able to count space that is lost forever mysql-test/r/maria.result: Updated results mysql-test/t/maria.test: Reset autocommit after test New test to check if delete_all_rows is used (verified with --debug) mysys/my_error.c: Added my_printv_error() scripts/mysql_fix_privilege_tables.sh: First use binaries and scripts from source distribution, then in installed distribution This ensures that a development branch doesn't pick up wrong scripts) sql/mysqld.cc: Fix that one can break maria recovery with ^C when debugging sql/sql_class.cc: Removed #ifdef that has no effect (The preceeding DBUG_ASSERT() ensures that the following code will not be exectued) storage/maria/ha_maria.cc: Increase size of sortbuffer and pagecache to 64M Fix that optimize works for Maria tables Fixed DBUG_ASSERT() when enable_indexes failes for end_bulk_insert() If not in autocommit mode, delete rows one by one so that we can roll back if necessary Fixed variable comments storage/maria/ma_bitmap.c: More ASSERTS to detect overwrite of bitmap pages bitmap->used_size was not correctly set, which caused bitmap pages to be overwritten Ensure we reserve place for directory entry when calculation place for head and tail pages bitmap->size[0] should not include space for directory entry Simplify code to abort when we found optimal bit pattern Skip also full head page bit patterns when searching for tail (should speed up some common cases) Fixed bug in allocate_tail() when block->used was not aligned on 6 bytes Fixed wrong assert in flush_log_for_bitmap Fixed bug in _ma_bitmap_release_unused() where tail blocks could be wrongly reset storage/maria/ma_blockrec.c: Ensure my_errno is set on return Fixed not optimal setting of row->min_length if we don't have variable length fields Use pagecache_unlock_by_link() instead of pagecache_write() if possible. (Avoids a memory copy and a find_block) Added DBUG_ASSERT() if we read or write wrong VARCHAR data Added DBUG_ASSERT() to find out if row sizes are calculated wrong Fixed bug in logging of rows with more than one big blob storage/maria/ma_check.c: Disable logging while normal repair is done to avoid logging of index changes Fixed bug that caused CHECKSUM part of key page to be used Fixed that deleted of wrong records also works for BLOCK_RECORD Clear unallocated pages: - BLOB pages are not automaticly cleared on delete, so we need to use the bitmap to know if page is used or not Better error reporting More information about record page utilization Change printing of file position to printing of pages to make output more readable Always print warning if rows are deleted storage/maria/ma_create.c: Calculate share.base_max_pack_length more accurately for BLOCK_RECORD pages (for future) Fixed that FIELD_SKIP_PRESPACE is recorded as FIELD_NORMAL; Fixed bug where fields could be used in wrong order Store FIELD_SKIP_ZERO fields before CHAR and VARCHAR fields (optimization) Store other fields in length order (to get better utilization of head block) storage/maria/ma_delete.c: Ensure my_errno is set on return storage/maria/ma_dynrec.c: Indentation fix storage/maria/ma_locking.c: Set changed if open_count is counted down. (To avoid getting error "client is using or hasn't closed the table properly" with transactional tables storage/maria/ma_loghandler.c: Fixed problem with advancing log horizon pointer within one page bounds (Patch from Sanja) Added more DBUG Indentation fixes storage/maria/ma_open.c: Removed wrong casts storage/maria/ma_page.c: Fixed usage of PAGECACHE_LOCK_WRITE_UNLOCK with _ma_new() Mark new pages as changed (Required to get repair() to work) storage/maria/ma_pagecache.c: Fixed test of error condition for flush Fixed problem when using PAGECACHE_LOCK_WRITE_TO_READ with unlock() Added call to my_debug_put_break_here() in case of errors (for debugging) storage/maria/ma_pagecrc.c: Ensure we get same crc for 32 and 64 bit systems by forcing argument to maria_page_crc to uint32 storage/maria/ma_recovery.c: Call my_printv_error() from eprint() to get critical errors to mysqld log Removed \n from error strings to eprint() to get nicer output in mysqld Added simple test in _ma_reenable_logging_for_table() to not do any work if not needed storage/maria/ma_update.c: Ensure my_errno is set on return storage/maria/ma_write.c: Ensure my_errno is set on return storage/maria/maria_chk.c: Use DEBUGGER_OFF if --debug is not use (to get slightly faster execution for debug binaries) Added option --skip-safemalloc Don't write exponents for rec/key storage/maria/maria_def.h: Increase default repair buffer to 128M for maria_chk and maria_read_log Increase default sort buffer for maria_chk to 64M storage/maria/unittest/Makefile.am: Don't update files automaticly from bitkeeper storage/maria/unittest/ma_pagecache_consist.c: Remove testfile at end storage/maria/unittest/ma_pagecache_single.c: Remove testfile at end storage/maria/unittest/ma_test_all-t: More tests Safer checking if test caused error |
18 years ago |
|
|
bfd5c273c4 |
UNDO of rows now puts back all part of the row on their original pages and positions
Added variable _dbug_on_ to speed up execution when DBUG is not going to be used Added --debug-on option to mysqld (to be able to turn of DBUG with --debug-on=0) Fixed some bugs with 'non_flushable' marking of bitmap pages Don't use 'non_flushable' marking of bitmap pages for not transactional tables SHOW CREATE TABLE now shows if table was created with page checksums Fixed a lot of bugs with BLOB handling in case of update/REDO and UNDO More tests (especially for blobs) and DBUG_ASSERTS() More readable output from maria_read_log and maria_chk Fixed wrong shift that caused Maria to crash on files > 4G Mark tables as crashed of REDO fails dbug/dbug.c: Changed to use my_bool (allowed me to remove some windows specific code) Added variable _dbug_on_ to speed up execution when DBUG is not going to be used Removed initialization of variables if not needed include/my_dbug.h: Use my_bool for some functions that was defined as BOOLEAN in dbug.c code Added DBUGGER_ON/DEBUGGER_OFF to speed up execution when DBUG is not used include/my_global.h: Define my_bool early Increase MY_HOW_OFTEN_TO_WRITE as computers are now faster than 10 years ago mysql-test/mysql-test-run.pl: Added debug-on=0 to speed up tests mysql-test/r/maria-recovery.result: Added new test by Guilhem to test if UNDO_ROW_DELETE preserves rowid mysql-test/r/maria.result: Added testing of page checksums mysql-test/t/crash_commit_before-master.opt: Added --debug-on as test require DBUG to work mysql-test/t/maria-recovery-bitmap-master.opt: Added --debug-on as test require DBUG to work mysql-test/t/maria-recovery-master.opt: Added --debug-on as test require DBUG to work mysql-test/t/maria-recovery.test: Added new test by Guilhem to test if UNDO_ROW_DELETE preserves rowid mysql-test/t/maria.test: Added testing of page checksums sql/mysqld.cc: Added --debug-on option (to be able to turn of DBUG with --debug-on=0) Indentation fixes Removed end spaces sql/sql_show.cc: Allow update_create_info() to inform MySQL if PACK_KEYS, NO_PACK_KEYS, CHECKSUM, PAGE_CHECKSUM or DELAY_KEY_WRITE is used storage/maria/Makefile.am: Added ma_test_big.sh storage/maria/ha_maria.cc: Store in create_info if page checksums are used (For SHOW CREATE TABLE) storage/maria/ma_bitmap.c: Added _ma_bitmap_wait_or_flush() to cause reader of bitmap pages to wait with reading until bitmap is flushed. Use TAIL_PAGE_COUNT_MARKER for tail pages Set 'sub_blocks' for and only for the head page or for the first extent of a blob. This is needed for store_extent_info() to be able to set START_EXTENT_BIT's Don't allocate more than 0x3ffff pages in one extent (We need bit 0x4000 as a START_EXTENT_BIT) Increase the calculated 'head_length' with the number of bytes used for extents. Update row->space_on_head_page also in _ma_bitmap_find_new_place() Make _ma_bitmap_get_page_bits() global. (Needed for UNDO handling) Changed _ma_bitmap_flushable() to take MARIA_HA instead of MARIA_SHARE. This was needed to be able to mark the handler if we had a 'non_flushable' call pending or not. Don't use 'non_flushable' marking of bitmap pages for not transactional tables. Added BLOCKUSED_USE_ORG_BITMAP handling also for tail pages. Added more DBUG_ASSERT() to find possible errors in other code Some code simplications by adding new local variables storage/maria/ma_blockrec.c: UNDO of rows now puts back all part of the row on their original pages and positions. Changed UNDO of DELETE and UNDO of UPDATE to contain information about the original length of data on head block and also extent information This changes a lot of logic as now an insert of a row on a page may happen to any position (and not just to the first or next free) Use PAGE_COUNT to mark if an extent is the start of of a blob. (Needed for extent_to_bitmap_blocks()) Added check_directory() for checking that directroy entries are correct. Added checking of row checksums when reading rows (with EXTRA_DEBUG) Added make_space_for_directory() and extend_directory() for doing expansion of directory Added get_rowpos_in_head_or_tail_page() to be able to store head/tail on original position in UNDO Added extent_to_bitmap_blocks() to be able to generate original bitmap blocks from UNDO entry Added _ma_update_at_original_place() for UNDO of DELETES Added row->min_length to hold minmum required space needed on head page Changed find_free_position() to use make_space_for_directory() Changed make_empty_page() to allow optional creation of directory entry Changed delete_head_or_tail() and _ma_apply_undo_row_isnert() to not copy pagecache block (speed optimization) Changed _ma_apply_redo_insert_row_head_or_tail() to be able to insert new row at any position on 'new' page Changed _ma_apply_undo_row_delete() and _ma_apply_undo_row_update() to put row in it's original position Ensure allocation of tail blocks are of at least MIN_TAIL_SIZE. Ensure we store pages in pinned pages even if read failed. (If not we will have pages pinned forever in page cache) Write original extent information in UNDO entry, not compacted ones (we need position to tails!) When setting BLOCKUSED_USED, don't clear other bits (we have to preserve BLOCKUSED_USE_ORG_BITMAP) Fixed som bugs in directory handling Fixed bug where we wrote wrong lsn to blob pages Added separate blob_buffer for fixing bug when updating row that had char/varchar that spanned several pages and also had blobs Ensure we call _ma_bitmap_flushable() also in case of errors When doing an update, first delete old entries, then search in bitmap for where to put new information Info->s -> share Rowid -> rowid More DBUG_ASSERT() storage/maria/ma_blockrec.h: Added START_EXTENT_BIT and TAIL_PAGE_COUNT_MARKER Added _ma_bitmap_wait_or_flush() and _ma_bitmap_get_page_bits() storage/maria/ma_check.c: Don't write extra empty line if there is no deleted blocks Ignore START_EXTENT_BIT's in page count Call _ma_fast_unlock_key_del() to free key_del link storage/maria/ma_close.c: Ensure that used_key_del is 0. (If not, someone forgot to call _ma_unlock_key_del()) storage/maria/ma_create.c: Changed constant to macro storage/maria/ma_delete.c: For deleted keys, log also position to row storage/maria/ma_extra.c: Release blob buffer at maria_reset() if bigger than MARIA_SMALL_BLOB_BUFFER storage/maria/ma_key_recover.c: Added bzero() of LSN that confused paged cache in case of uninitialized block Mark file crashed if applying of index changes fails Added calls to _ma_fast_unlock_key_del() for protection of shared key_del link. storage/maria/ma_locking.c: Added usage of MARIA_FILE_OPEN_COUNT_OFFSET Added _ma_mark_file_crashed() storage/maria/ma_loghandler.c: Fixed bug where we logged uninitialized memory storage/maria/ma_open.c: Moved state->changed to be at start of state info on disk to allow one to easly mark files as crashed storage/maria/ma_page.c: Disable 'dummy' checksumming of pages as this gave false warnings. (Need to investigate if this is ever needed) storage/maria/ma_pagecache.c: Fixed wrong shift that caused Maria to crash on files > 4G storage/maria/ma_recovery.c: In case of errors, start writing on new line if we where in %## %## printing mode (Made errors more readable) Changed global variable name from warnings -> recovery_warnings Use MARIA_FILE_CREATE_RENAME_LSN_OFFSET instead of constant Removed special handling of row position for deleted keys. Keys now always includes row positions _ma_apply_undo_row_delete() now gets page and row position Added check that we don't loop forever when handling undo's (in case of bug in undo chain) Print name of failed REDO/UNDO storage/maria/ma_recovery.h: Removed old comment storage/maria/ma_static.c: Chaned version number of Maria files to not accidently use old ones (becasue of change of ordering of status variables) storage/maria/ma_test2.c: Added option -u to specify number of rows to update Changed old option -u to be -A, as for ma_test1 Fixed bug in update of rows with blobs (before blobs was always reset to empty on update) First created blob is now of max blob length to ensure we have at least one big blob in the table storage/maria/ma_test_all.sh: More tests storage/maria/ma_test_recovery.expected: Updated results storage/maria/ma_test_recovery: Changed tests to use bigger blobs (not just 1K) Added new tests that tests recovery of update with blobs Removed comparision of .MAD file as it's not guranteed that recovery from scratch gives identical data file as original update (compact_page() may be called at different times during normal execution and during REDO) storage/maria/ma_update.c: Simplify code (changed * to if) storage/maria/maria_chk.c: Make output more readable storage/maria/maria_def.h: Changed 'changed' to int to prepare for more bits Added 2 more bytes to status information Added 'st_mara_row->min_length' for storing min length needed on head page Added 'st_mara_handler->blob_buff & blob_buff_size' for storing blobs Moved all tunning parameters into one block Added MARIA_SMALL_BLOB_BUFFER Added _ma_mark_file_crashed() storage/myisam/mi_test2.c: Fixed bug in update of rows with blobs (before blobs was always reset to empty on update) storage/maria/ma_test_big.sh: Testing of insert, update, delete, recovery and undo of rows with blobs Thanks to the random-ness of ma_test2 this is likely to find most bugs in the row handling |
18 years ago |
|
|
30d3d8d3fc |
Fixed several bugs in page CRC handling
- Ignore CRC errors in REDO for potential new pages - Ignore CRC errors when repairing tables - Don't do readcheck callback on read error - Set my_errno to HA_ERR_WRONG_CRC if we find page with wrong CRC - Check index page for length before calculating CRC to catch bad pages Fixed bugs where we used wrong file descriptor to read/write bitmaps Fixed wrong hash key in 'files_in_flush' Fixed wrong lock method when writing bitmap Fixed some wrong printf statements in check/repair that caused core dumps Fixed argument to translog_page_validator that cause reading of log files to fail Store number of bytes used for delete-linked key pages to be able to use standard index CRC for deleted key pages. Use fast 'dummy' pagecheck callbacks for temporary tables Don't die silently if flush finds pinned pages Give error (for now) if one tries to create a transactional table with fulltext or spatial keys Removed some not needed calls to pagecache_file_init() Added checking of pagecache checksums to ma_test1 and ma_test2 More DBUG Fixed some DBUG_PRINT to be in line with rest of the code include/my_base.h: Added HA_ERR_INTERNAL_ERROR (used for flush with pinned pages) and HA_ERR_WRONG_CRC mysql-test/r/binlog_unsafe.result: Added missing DROP VIEW statement mysql-test/r/maria.result: Added TRANSACTIONAL=0 when testing with fulltext keys Added test that verifies we can't yet create transactional test with fulltext or spatial keys mysql-test/r/ps_maria.result: Added TRANSACTIONAL=0 when testing with fulltext keys mysql-test/t/binlog_unsafe.test: Added missing DROP VIEW statement mysql-test/t/maria.test: Added TRANSACTIONAL=0 when testing with fulltext keys Added test that verifies we can't yet create transactional test with fulltext or spatial keys mysql-test/t/ps_maria.test: Added TRANSACTIONAL=0 when testing with fulltext keys mysys/my_fopen.c: Fd: -> fd: mysys/my_handler.c: Added new error messages mysys/my_lock.c: Fd: -> fd: mysys/my_pread.c: Fd: -> fd: mysys/my_read.c: Fd: -> fd: mysys/my_seek.c: Fd: -> fd: mysys/my_sync.c: Fd: -> fd: mysys/my_write.c: Fd: -> fd: sql/mysqld.cc: Fixed wrong argument to my_uuid_init() sql/sql_plugin.cc: Unified DBUG_PRINT (for convert-dbug-for-diff) storage/maria/ma_bitmap.c: Fixed wrong lock method when writing bitmap Fixed valgrind error Use fast 'dummy' pagecheck callbacks for temporary tables Faster bitmap handling for non transational tables storage/maria/ma_blockrec.c: Fixed that bitmap reading is done with the correct filehandle Handle reading of pages with wrong CRC when page contect doesn't matter Use the page buffer also when we get WRONG CRC or FILE_TOO_SHORT. (Faster and fixed a couple of bugs) storage/maria/ma_check.c: Split long strings for readablity Fixed some wrong printf statements that caused core dumps Use bitmap.file for bitmaps Ignore pages with wrong CRC storage/maria/ma_close.c: More DBUG_PRINT storage/maria/ma_create.c: Give error (for now) if one tries to create a crash safe table with fulltext or spatial keys storage/maria/ma_key_recover.c: Ignore HA_ERR_WRONG_CRC for new pages info->s -> share Store number of bytes used for delete-linked key pages to be able to use standard index CRC for deleted key pages. storage/maria/ma_loghandler.c: Fixed argument to translog_page_validator() storage/maria/ma_open.c: Removed old VMS specific code Added function to setup pagecache callbacks Moved code around to set 'share->temporary' early Removed some not needed calls to pagecache_file_init() storage/maria/ma_page.c: Store number of bytes used for delete-linked key pages to be able to use standard index CRC for deleted key pages. storage/maria/ma_pagecache.c: Don't do readcheck callback on read error Reset PCBLOCK_ERROR in pagecache_unlock_by_link() if we write page Set my_errno to HA_ER_INTERNAL_ERROR if flush() finds pinned pages Don't die silently if flush finds pinned pages. Use correct file descriptor when flushing pages Fixed wrong hash key in 'files_in_flush'; This must be the file descriptor, not the PAGECACHE_FILE as there may be several PAGECACHE_FILE for same file descriptor More DBUG_PRINT storage/maria/ma_pagecrc.c: Removed inline from not tiny static function Set my_errno to HA_ERR_WRONG_CRC if we find page with wrong CRC (Otherwise my_errno may be 0, and a lot of other code will be confused) CRCerror -> error (to keep code uniform) Print crc with %lu, as in my_checksum() uchar* -> uchar * Check index page for length before calculating CRC to catch bad pages Added 'dummy' crc_check and filler functions that are used for temporary tables storage/maria/ma_recovery.c: More DBUG More message to users to give information what phase failed Better error message if recovery failed storage/maria/ma_test1.c: Added checking of page checksums (combined with 'c' to not have to add more test runs) storage/maria/ma_test2.c: Added checking of page checksums (combined with 'c' to not have to add more test runs) storage/maria/maria_chk.c: Fixed wrong argument to _ma_check_print_error() storage/maria/maria_def.h: Added format information to _ma_check_print_xxxx functions uchar* -> uchar * |
18 years ago |
|
|
cc589bef15 |
Fixed bug in undo_key_delete; Caused crashed key files in recovery
Maria is now used for internal temporary tables in MySQL Better usage of VARCHAR and long strings in temporary tables Use packed fields if BLOCK_RECORD is used null_bytes are not anymore stored in a separate field New interface to remember and restore scan position Fixed bugs in unique handling Don't sync Maria temporary tables Lock control file while it's used to stop several processes from using it Changed value of MA_DONT_OVERWRITE_FILE as it collided with MY_SYNC_DIR Split MY_DONT_WAIT into MY_NO_WAIT and MY_SHORT_WAIT (for my_lock()) Added MY_FORCE_LOCK include/my_sys.h: Changed value of MA_DONT_OVERWRITE_FILE as it collided with MY_SYNC_DIR Split MY_DONT_WAIT into MY_NO_WAIT and MY_SHORT_WAIT (for my_lock()) Added MY_FORCE_LOCK include/myisam.h: Make MyISAM columndef compile time compatible with Maria mysql-test/lib/mtr_process.pl: Removed confusing warning (It's common that there is a lot of other files than pid files) mysql-test/mysql-test-run.pl: Added --sync-frm to speed up tests mysql-test/r/maria-recovery.result: Updated results from wrong push mysql-test/suite/rpl/t/rpl_innodb_bug28430.test: Marked test as --big mysys/my_lock.c: If MY_FORCE_LOCK is given, use locking even if my_disable_locking is given If MY_NO_WAIT is given, return at once if lock is occupied If MY_SHORT_WAIT is given, wait some time for lock before returning (This was called MY_DONT_WAIT before) mysys/my_thr_init.c: Fix that we don't give name to thread before it's properly initied sql/handler.cc: Added myisam.h sql/handler.h: Changes to use Maria for internal temporary tables Removed not needed argument to restart_rnd_next() Added function remember_rnd_pos() sql/my_lock.c: If MY_FORCE_LOCK is given, use locking even if my_disable_locking is given If MY_NO_WAIT is given, return at once if lock is occupied If MY_SHORT_WAIT is given, wait some time for lock before returning (This was called MY_DONT_WAIT before) sql/mysql_priv.h: Added maria_hton sql/sql_class.h: Changes to use Maria for internal temporary tables sql/sql_select.cc: Changes to use Maria for internal temporary tables Temporary tables didn't properly switch to dynamic row format if long strings was used Better usage of VARCHAR in temporary tables Use new interface to restart scan in duplicate removal sql/sql_select.h: Changes to use Maria for internal temporary tables sql/sql_show.cc: Changes to use Maria for internal temporary tables Removed all end space sql/sql_table.cc: Set HA_OPTION_PACK_RECORD if we are not using default or static record sql/sql_union.cc: If MY_FORCE_LOCK is given, use locking even if my_disable_locking is given If MY_NO_WAIT is given, return at once if lock is occupied If MY_SHORT_WAIT is given, wait some time for lock before returning (This was called MY_DONT_WAIT before) sql/sql_update.cc: If MY_FORCE_LOCK is given, use locking even if my_disable_locking is given If MY_NO_WAIT is given, return at once if lock is occupied If MY_SHORT_WAIT is given, wait some time for lock before returning (This was called MY_DONT_WAIT before) storage/maria/ha_maria.cc: Use packed fields null_bytes are not anymore stored in a separate field Changes to use Maria for internal temporary tables Give warning if we try to do an ALTER TABLE to a unusable row format storage/maria/ha_maria.h: Allow Maria with block format to restart scanning at given position storage/maria/ma_blockrec.c: Added functions to remember and restore scan position Allocate cur_row.extents so that we don't have to do a malloc on first read Fixed bug when using packed row without packed strings Removed unneeded calls to free_full_pages() Fixed unlikely bug when using old bitmap to read head page and head page had gone away Remember row position when doing undo of delete and update row (needed for undo of key delete) storage/maria/ma_blockrec.h: Added functions to remember and restore scan position storage/maria/ma_close.c: Don't sync temporary tables storage/maria/ma_control_file.c: Lock control file while it's used to stop several processes from using it storage/maria/ma_create.c: Fixed bug when using FIELD_NORMAL that was longer than FULL_PAGE_SIZE Fixed bug that casued fields to not be ordered according to offset Fixed bug in unique creation storage/maria/ma_delete.c: Don't write record reference when deleting key. (Rowid is likely to be different when we undo this) storage/maria/ma_dynrec.c: Fixed core dump when comparing records (happended in unique handling) storage/maria/ma_extra.c: MY_DONT_WAIT -> MY_SHORT_WAIT Removed TODO comment. (Was not relevant as all other instances are guranteed to be closed when we the code is excecuted) Added DBUG_ASSERT() to prove above. storage/maria/ma_key_recover.c: CLR's for UNDO_ROW_DELETE and UNDO_ROW_UPDATE now include rowid for the row. This was needed for undo_key_delete to work, as undo of delete row is likely to put row in a new position. undo_delete_key now doesn't include row position storage/maria/ma_open.c: Added virtual functions for remembering and restoring scan position Fixed wrong key search method when using multi-byte character sets (Bug#32705) Store original column number in index file NOTE: Index files are now incompatible with previous versions! (Ok as we haven't yet made a public Maria release) storage/maria/ma_recovery.c: Set info->cur_row.lastpos when reading CLR's for UNDO_ROW_DELETE or UNDO_ROW_UPDATE storage/maria/ma_scan.c: Added default function to remember and restore scan position storage/maria/maria_def.h: Added virtual functions & variables to remember and restore scan position Added MARIA_MAX_CONTROL_FILE_LOCK_RETRY storage/myisam/ha_myisam.cc: Fixed compiler errors as columdef->type is now an enum, not an integer Added functions to remember and restore scan position storage/myisam/ha_myisam.h: Added functions to remember and restore scan position storage/myisam/mi_check.c: MY_DONT_WAIT -> MY_SHORT_WAIT storage/myisam/mi_extra.c: MY_DONT_WAIT -> MY_SHORT_WAIT storage/myisam/mi_open.c: MY_DONT_WAIT -> MY_SHORT_WAIT storage/myisam/myisamdef.h: MY_DONT_WAIT -> MY_SHORT_WAIT |
18 years ago |
|
|
7b19ba34fc |
Pagecache callbacks support added.
Page CRC check based on pagecache support added. Loghandler pagecache callbacks support added. Loghandler filecache rewritten. Support of deletting all logs added. storage/maria/Makefile.am: New file with functions for CRC calculation. storage/maria/ma_bitmap.c: Page CRC support. storage/maria/ma_blockrec.c: Removed code replaced by pagecache callbacks. storage/maria/ma_check.c: Page CRC support. storage/maria/ma_create.c: Page CRC support. storage/maria/ma_loghandler.c: Pagecache callbacks support. New file cache support. Removing log files support. storage/maria/ma_loghandler.h: CRC_LENGTH replaced with CRC_SIZE storage/maria/ma_open.c: Page CRC support. storage/maria/ma_page.c: Page CRC support. storage/maria/ma_pagecache.c: Pagecache callbacks support. storage/maria/ma_pagecache.h: Pagecache callbacks support. storage/maria/ma_panic.c: Page CRC support. storage/maria/maria_chk.c: Page CRC support. storage/maria/maria_def.h: Page CRC support. storage/maria/unittest/Makefile.am: New test of removing logs. storage/maria/unittest/ma_maria_log_cleanup.c: Memory leack fixed. storage/maria/unittest/ma_pagecache_consist.c: Pagecache callbacks support. storage/maria/unittest/ma_pagecache_single.c: Pagecache callbacks support. storage/maria/unittest/ma_test_loghandler-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_first_lsn-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_max_lsn-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_multigroup-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_multithread-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_noflush-t.c: Fixed the test error processing. storage/maria/unittest/ma_test_loghandler_pagecache-t.c: Pagecache callbacks support. storage/maria/unittest/ma_test_loghandler_purge-t.c: Fixed the test error processing. storage/maria/unittest/test_file.c: Removed unneeded sync. |
18 years ago |
|
|
d225521c76 |
Transaction log behaviour in case of write
error fixed (switching to the read only mode).
Added read only mode of transactions log handler.
storage/maria/ha_maria.cc:
Transaction log initialization parameters change.
storage/maria/ma_check.c:
New status variable of transactional log.
storage/maria/ma_create.c:
New status variable of transactional log.
storage/maria/ma_loghandler.c:
- New status variable added.
- Checking the status variable in the loghandler
interface functions added
- All fails of loghandler functions revised.
- UNRECOVERABLE_ERROR() removed.
- Switching to read only mode added where it nead.
- Checking of log state added before writes log content
and changing status variables like sent_to_file, n_buffers_only, flushed.
- Readonly loghandler initialization added.
- Fixed problem with example table transactional log initialization.
storage/maria/ma_loghandler.h:
Readonly loghandler initialization added.
Fixed problem with example table transactional log initialization.
New status variable added.
storage/maria/ma_open.c:
New status variable of transactional log.
storage/maria/ma_test1.c:
Transaction log initialization parameters change.
storage/maria/ma_test2.c:
Transaction log initialization parameters change.
storage/maria/maria_read_log.c:
Transaction loghandler initialization in read only mode in
case of only dysplay parameter.
storage/maria/unittest/Makefile.am:
Test of readonly mode added.
storage/maria/unittest/ma_test_loghandler-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
Fixed incorrect fprintf call parameters.
storage/maria/unittest/ma_test_loghandler_first_lsn-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_max_lsn-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_multigroup-t.c:
Useing this test also as read only loghandler test.
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_multithread-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_noflush-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_pagecache-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
storage/maria/unittest/ma_test_loghandler_purge-t.c:
Transaction log initialization parameters change.
Fixed problem with example table transactional log initialization.
|
18 years ago |
|
|
8224c76fbd |
Removed MARIA_BASE min_row_length (duplicate of min_block_length)
Cleanup of recent code changes in dbug and my_thr_init Added name for each safe_mutex (for better DBUG and error reporting) Fixed that sort_info.max_records is calculated correctly. This fixed a bug in maria_chk Removed duplicate printing of mutex address in dbug log dbug/dbug.c: Cleanup of recent code changes include/my_pthread.h: Added name for each safe_mutex (for better DBUG and error reporting) mysys/my_thr_init.c: Cleanup of recent code changes mysys/thr_mutex.c: Added name for each safe_mutex (for better DBUG and error reporting) mysys/wqueue.c: Removed some mutex printing (as it's done now when we take mutex) storage/maria/Makefile.am: Fixed that 'make tags' works with xemacs storage/maria/ma_blockrec.c: base.min_row_length -> base.min_block_length (As they where basicly the same variable) storage/maria/ma_check.c: Moved more common stuff to initialize_variables_for_repair Fixed that sort_info.max_records is calculated correctly. This fixed a bug in maria_chk storage/maria/ma_create.c: More comments Fixed that min_pack_length is calculated more correctly Removed duplicate variable base.min_row_length storage/maria/ma_loghandler.c: Removed duplicate printing of mutex address storage/maria/ma_open.c: Removed base.min_row_length storage/maria/ma_packrec.c: Removed not anymore needed code (One should not change any .base variables as this will affect repair with unpack) storage/maria/maria_def.h: Removed base.min_row_length |
18 years ago |
|
|
2f6f08ed88 |
Added MARIA_SHARE *share to a lot of places to make code simpler
Changed info->s -> share to get more efficent code Updated arguments to page accessor functions to use MARIA_SHARE * instead of MARIA_HA *. Tested running tests in quick mode (no balance page on insert and only when critical on delete) Fixed bug in underflow handling in quick mode Fixed bug in log handler where it accessed not initialized variable Fixed bug in log handler where it didn't free mutex in unlikely error condition Removed double write of page in case of of some underflow conditions Added DBUG_PRINT in safemutex lock/unlock dbug/dbug.c: Compile without SAFE_MUTEX (to be able to use DBUG_PRINT in safe_mutex code) Use calls to get/set my_thread_var->dbug. (Make dbug independent of compile time options for mysys) include/my_pthread.h: Added prototypes for my_thread_var_get_dbug() & my_thread_var_set_dbug() mysql-test/lib/mtr_report.pl: Don't check warnings in log files if we are using --extern mysys/my_thr_init.c: Added my_thread_var_get_dbug() & my_thread_var_set_dbug() mysys/thr_mutex.c: Added DBUG printing of addresses to mutex for lock/unlock storage/maria/ma_blockrec.c: Fixed comment storage/maria/ma_check.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_close.c: Indentation fixes storage/maria/ma_create.c: Calculate min_key_length correctly storage/maria/ma_dbug.c: Indentation fixes storage/maria/ma_delete.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions Removed some writing of key pages that underflow (will be written by caller) Fixed crashing bug in underflow handling when using quick mode storage/maria/ma_delete_all.c: Indentation fixes storage/maria/ma_dynrec.c: Indentation fixes storage/maria/ma_extra.c: Fixed indentation Removed old useless code Reset share->changed if we have written state storage/maria/ma_ft_update.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_info.c: Indentation fixes storage/maria/ma_key_recover.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_locking.c: Indentation fixes storage/maria/ma_loghandler.c: Removed wrapper functions translog_mutex_lock and translog_mutex_unlock (safemutex now does same kind of printing) Renamed LOGREC_REDO_INSERT_ROW_BLOB to LOGREC_REDO_INSERT_NOT_USED to mark it free Fixed some DBUG_PRINT to ensure that convert-dbug-for-diff works Fixed bug in translog_flush() that caused log to stop syncing to disk Added missing mutex_unlock in case of error storage/maria/ma_loghandler.h: Renamed LOGREC_REDO_INSERT_ROW_BLOB to LOGREC_REDO_INSERT_NOT_USED to mark it free storage/maria/ma_open.c: Indentation fixes storage/maria/ma_packrec.c: Indentation fixes storage/maria/ma_page.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions Added check that we never write a key page without content (except in recovery where a key page may temporary be without content) storage/maria/ma_preload.c: Updated arguments to page accessor functions storage/maria/ma_range.c: Updated arguments to page accessor functions storage/maria/ma_rkey.c: Indentation fixes storage/maria/ma_rprev.c: Indentation fixes storage/maria/ma_rt_index.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_rt_index.h: Updated arguments to page accessor functions storage/maria/ma_rt_key.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_rt_mbr.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_rt_split.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_search.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/ma_sort.c: Indentation fixes storage/maria/ma_statrec.c: Indentation fixes storage/maria/ma_test1.c: Added extra undo test Flush also keys in -u1, to ensure that the full log is flushed storage/maria/ma_test2.c: Added extra undo test Flush also keys in -u1, to ensure that the full log is flushed storage/maria/ma_test_recovery.expected: Updated results storage/maria/ma_test_recovery: Added extra undo test storage/maria/ma_update.c: Indentation fixes storage/maria/ma_write.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions Prepare for quick mode for insert (don't balance page) storage/maria/maria_chk.c: Added MARIA_SHARE *share to a lot of places to make code simpler info->s -> share Updated arguments to page accessor functions storage/maria/maria_def.h: Updated arguments to page accessor functions |
18 years ago |
|
|
21fd2a5a36 |
First part of redo/undo for key pages
Added key_nr to st_maria_keydef for faster keyinfo->keynr conversion
For transactional tables, shift record number in keys up with 1 bit to have place to indicate if transid follows
Checksum for MyISAM now ignores NULL and not used part of VARCHAR
Renamed some variables that caused shadow compiler warnings
Moved extra() call when waiting for tables to not be used to after tables are removed from cache.
Fixed crashing bugs when using Maria TEMPORARY tables with TRUNCATE. Removed 'hack' code in sql directory to go around this bug.
pagecache_unlock_by_ulink() now has extra argument to say if page was changed.
Give error message if we fail to open control file
Mark page cache variables as not flushable
include/maria.h:
Made min page cache larger (needed for pinning key page)
Added key_nr to st_maria_keydef for faster keyinfo->keynr conversion
Added write_comp_flag to move some runtime code to maria_open()
include/my_base.h:
Added new error message to be used when handler initialization failed
include/my_global.h:
Renamed dummy to swap_dummy to avoid conflicts with local 'dummy' variables
include/my_handler.h:
Added const to some parameters
mysys/array.c:
More DBUG
mysys/my_error.c:
Fixed indentation
mysys/my_handler.c:
Added const to some parameters
Added missing error messages
sql/field.h:
Renamed variables to avoid variable shadowing
sql/handler.h:
Renamed parameter to avoid variable name conflict
sql/item.h:
Renamed variables to avoid variable shadowing
sql/log_event_old.h:
Renamed variables to avoid variable shadowing
sql/set_var.h:
Renamed variables to avoid variable shadowing
sql/sql_delete.cc:
Removed maria hack for temporary tables
Fixed indentation
sql/sql_table.cc:
Moved extra() call when waiting for tables to not be used to after tables are removed from cache.
This was needed to ensure we don't do a PREPARE_FOR_DROP or similar call while the table is still in use.
sql/table.cc:
Copy page_checksum from share
Removed Maria hack
storage/maria/Makefile.am:
Added new files
storage/maria/ha_maria.cc:
Renamed records -> record_count and info -> create_info to avoid variable name conflicts
Mark page cache variables as not flushable
storage/maria/ma_blockrec.c:
Moved _ma_unpin_all_pages() to ma_key_recover.c
Moved init of info->pinned_pages to ma_open.c
Moved _ma_finalize_row() to maria_key_recover.h
Renamed some variables to avoid variable name conflicts
Mark page_link.changed for blocks we change directly
Simplify handling of undo link when writing LOGREC_UNDO_ROW_INSERT (old code crashed when having redo for index)
storage/maria/ma_blockrec.h:
Removed extra empty line
storage/maria/ma_checkpoint.c:
Remove not needed trnman.h
storage/maria/ma_close.c:
Free pinned pages (which are now always allocated)
storage/maria/ma_control_file.c:
Give error message if we fail to open control file
storage/maria/ma_delete.c:
Changes for redo logging (first part, logging of underflow not yet done)
- Log undo-key-delete
- Log delete of key
- Updated arguments to _ma_fetch_keypage(), _ma_dispose(), _ma_write_keypage(), _ma_insert()
- Added new arguments to some functions to be able to write redo information
- Mark key pages as changed when we write with PAGECACHE_LOCK_LEFT_WRITELOCKED
Remove one not needed _ma_write_keypage() in d_search() when upper level will do the write anyway
Changed 2 bmove_upp() to bmove() as this made code easer to understand
More function comments
Indentation fixes
storage/maria/ma_ft_update.c:
New arguments to _ma_write_keypage()
storage/maria/ma_loghandler.c:
Fixed some DBUG_PRINT messages
Simplify code
Added new log entrys for key page redo
Renamed some variables to avoid variable name shadowing
storage/maria/ma_loghandler.h:
Moved some defines here
Added define for storing key number on key pages
Added new translog record types
Added enum for type of operations in LOGREC_REDO_INDEX
storage/maria/ma_open.c:
Always allocate info.pinned_pages (we need now also for normal key page usage)
Update keyinfo->key_nr
Added virtual functions to convert record position o number to be stored on key pages
Update keyinfo->write_comp_flag to value of search flag to be used when writing key
storage/maria/ma_page.c:
Added redo for key pages
- Extended _ma_fetch_keypage() with type of lock to put on page and address to used MARIA_PINNED_PAGE
- _ma_fetch_keypage() now pin's pages if needed
- Extended _ma_write_keypage() with type of locks to be used
- ma_dispose() now locks info->s->state.key_del from other threads
- ma_dispose() writes redo log record
- ma_new() locks info->s->state.key_del from other threads if it was used
- ma_new() now pins read page
Other things:
- Removed some not needed arguments from _ma_new() and _ma_dispose)
- Added some new variables to simplify code
- If EXTRA_DEBUG is used, do crc on full page to catch not unitialized bytes
storage/maria/ma_pagecache.h:
Applied patch from Sanja to add extra argument to pagecache_unlock_by_ulink() to mark if page was changed
Added some defines for pagecache priority levels that one can use
storage/maria/ma_range.c:
Added new arguments for call to _ma_fetch_keypage()
storage/maria/ma_recovery.c:
- Added hooks for new translog types:
REDO_INDEX, REDO_INDEX_NEW_PAGE, REDO_INDEX_FREE_PAGE, UNDO_KEY_INSERT, UNDO_KEY_DELETE and
UNDO_KEY_DELETE_WITH_ROOT.
- Moved variable declarations to start of function (portability fixes)
- Removed some not needed initializations
- Set only relevant state changes for each redo/undo entry
storage/maria/lockman.c:
Removed end space
storage/maria/ma_check.c:
Removed end space
storage/maria/ma_create.c:
Removed end space
storage/maria/ma_locking.c:
Removed end space
storage/maria/ma_packrec.c:
Removed end space
storage/maria/ma_pagecache.c:
Removed end space
storage/maria/ma_panic.c:
Removed end space
storage/maria/ma_rt_index.c:
Added new arguments for call to _ma_fetch_keypage(), _ma_write_keypage(), _ma_dispose() and _ma_new()
Fixed indentation
storage/maria/ma_rt_key.c:
Added new arguments for call to _ma_fetch_keypage()
storage/maria/ma_rt_split.c:
Added new arguments for call to _ma_new()
Use new keypage header
Added new arguments for call to _ma_write_keypage()
storage/maria/ma_search.c:
Updated comments & indentation
Added new arguments for call to _ma_fetch_keypage()
Made some variables and arguments const
Added virtual functions for converting row position to number to be stored in key
use MARIA_RECORD_POS of record position instead of my_off_t
Record in MARIA_KEY_PARAM how page was changed one key insert (needed for REDO)
storage/maria/ma_sort.c:
Removed end space
storage/maria/ma_statrec.c:
Updated arguments for call to _ma_rec_pos()
storage/maria/ma_test1.c:
Fixed too small buffer to init_pagecache()
Fixed bug when using insert_count and test_flag
storage/maria/ma_test2.c:
Use more resonable pagecache size
Remove not used code
Reset blob_length to fix wrong output message
storage/maria/ma_test_all.sh:
Fixed wrong test
storage/maria/ma_write.c:
Lots of new code to handle REDO of key pages
No logic changes because of REDO code, mostly adding new arguments and adding new code for logging
Added new arguments for calls to _ma_fetch_keypage(), _ma_write_keypage() and similar functions
Move setting of comp_flag in ma_ck_wrte_btree() from runtime to maria_open()
Zerofill new used pages for:
- To remove possible sensitive data left in buffer
- To get idenitical data on pages after running redo
- Better compression of pages if archived
storage/maria/maria_chk.c:
Added information if table is crash safe
storage/maria/maria_def.h:
New virtual function to convert between record position on key and normal record position
Aded mutex and extra variables to handle locking of share->state.key_del
Moved some structure variables to get things more aligned
Added extra arguments to MARIA_KEY_PARAM to be able to remember what was changed on key page on key insert
Added argument to MARIA_PINNED_PAGE to indicate if page was changed
Updated prototypes for functions
Added some structures for signaling changes in REDO handling
storage/maria/unittest/ma_pagecache_single.c:
Updated arguments for changed function calls
storage/myisam/mi_check.c:
Made calc_check_checksum virtual
storage/myisam/mi_checksum.c:
Update checksums to ignore null columns
storage/myisam/mi_create.c:
Mark if table has null column (to know when we have to use mi_checksum())
storage/myisam/mi_open.c:
Added virtual function for calculating checksum to be able to easily ignore NULL fields
storage/myisam/mi_test2.c:
Fixed bug
storage/myisam/myisamdef.h:
Added virtual function for calculating checksum during check table
Removed ha_key_cmp() as this is in handler.h
storage/maria/ma_key_recover.c:
New BitKeeper file ``storage/maria/ma_key_recover.c''
storage/maria/ma_key_recover.h:
New BitKeeper file ``storage/maria/ma_key_recover.h''
storage/maria/ma_key_redo.c:
New BitKeeper file ``storage/maria/ma_key_redo.c''
|
18 years ago |
|
|
496741d576 |
Moved randomize and my_rnd under mysys
Added my_uuid Added pre-support for PAGE_CHECKSUM Added syntax for CREATE ... PAGE_CHECKSUM=# TABLE_CHECKSUM=# Reserved place for page checksums on index, bitmap and block pages Added index number to header of index pages Added linked list for free directory entries (speeds up inserts with BLOCK format) Calculate checksums in original column order (fixes bug with checksum on rows with BLOCK format) Cleaned up all index handling to use 'info->s->keypage_header' (variable size) as the header for index pages (before this was '2') Added 0xffffffff to end of index and block data bases and 0xfffffffe at end of bitmap pages when page checksums are not enabled Added _ma_get_page_used() and _ma_get_used_and_node() to simplify index page header handling rec_per_key_part is now in double precision Reserved place in index file for my_guid and nulls_per_key_part Give error HA_ERR_NEW_FILE if trying to open a Maria file with new, not yet supported extensions Lots of renames to increase readability: randomize() -> my_rnd_init() st_maria_info -> st_maria_handler st_maria_info -> MARIA_HA st_maria_isaminfo -> st_maria_info rand_struct -> my_rand_struct rec_per_key_rows -> records_at_analyze client/mysqladmin.cc: rand_struct -> my_rrnd_struct include/maria.h: st_maria_info -> MARIA_HA st_maria_isaminfo -> st_maria_info Changed analyze statistics to be of double precission Changed offset to field to be 32bits instead of 64 (safe as a record without blobs can't be that big) include/my_base.h: Added HA_OPTION_PAGE_CHECKSUM & HA_CREATE_PAGE_CHECKSUM Fixed comments Added HA_ERR_NEW_FILE include/my_sys.h: Added prototypes and structures for my_uuid() and my_rnd() include/myisamchk.h: Changed some buffers to size_t Added possibility to have key statistics with double precission include/mysql_com.h: Move rand functions to mysys libmysql/Makefile.shared: Added my_rnd mysql-test/r/maria.result: Updated results mysql-test/t/maria.test: More tests for checksum mysys/Makefile.am: Added my_rnd.c and my_uuid.c server-tools/instance-manager/listener.cc: Fixed include order (my_global.h should always be first) server-tools/instance-manager/mysql_connection.cc: Fixed include order (my_global.h should always be first) Use my_rnd_init() server-tools/instance-manager/mysql_connection.h: rand_struct -> my_rand_struct sql/handler.h: Added flag for page checksums sql/item_func.cc: Use new my_rnd() interface sql/item_func.h: Use new my_rnd() interface sql/item_strfunc.cc: Use new my_rnd() interface sql/lex.h: Added PAGE_CHECKSUM and TABLE_CHECKSUM sql/mysql_priv.h: Use new my_rnd() interface sql/mysqld.cc: Use new my_rnd() interface sql/password.c: Move my_rnd() to mysys Use new my_rnd() interface sql/sql_class.cc: Use new my_rnd() interface sql/sql_class.h: Use new my_rnd() interface sql/sql_crypt.cc: Use new my_rnd() interface sql/sql_crypt.h: Use new my_rnd() interface sql/sql_show.cc: Simpler handling of ha_choice_values Added PAGE_CHECKSUM sql/sql_table.cc: Enable correct checksum handling (for now) if not running in compatible mode sql/sql_yacc.yy: Added table option PAGE_CHECKSUM Added future compatible table option TABLE_CHECKSUM (alias for CHECKSUM) Added 'choice' target to simplify code sql/table.cc: Store flag for PAGE_CHECKSUM sql/table.h: Added support for PAGE_CHECKSUM storage/maria/ha_maria.cc: Remove protection for incompatbile frm and MAI (Slow, not needed test) Rec_per_key is now in double Remember row type for table Give warning if one Maria uses another row type than requested Removed some old ASK_MONTY entries (added comments instead) Added handling of PAGE_CHECKSUM flags storage/maria/ma_bitmap.c: Added page checksums to bitmap pages Added special bitmap marker for bitmap pages (Used to find bugs when running without page checksums) storage/maria/ma_blockrec.c: Added a free-link list over directory entries. This makes insert of small rows faster as we don't have to scan the whole directory to find a not used entry. Moved SANITY_CHECKS to maria_def.h Simplify code by introducing dir_entry_pos() Added support for PAGE_CHECKSUM storage/maria/ma_blockrec.h: Added DIR_FREE_SIZE (linked list of free directory entries) Added PAGE_CHECKSUM Added 'dir_entry_pos()' storage/maria/ma_check.c: Check that index pages has correct index number Calculate rec_per_key with double precission Simplify code by using '_ma_get_used_and_node()' Check free directory list Remove wrong end \n from messages maria_data_on_page() -> _ma_get_page_used() maria_putint() -> _ma_store_page_used() rec_per_key_rows -> records_at_analyze storage/maria/ma_checksum.c: Calculate checksum in original column order storage/maria/ma_create.c: Store original column order in index file Reserve place for nulls_per_key_part (future) Added support for PAGE_CHECKSUM storage/maria/ma_dbug.c: Fixed wrong debug output of key of type 'ulong' storage/maria/ma_delete.c: maria_data_on_page() -> _ma_get_used_and_node() maria_data_on_page() -> _ma_get_page_used() maria_putint() -> _ma_store_page_used() Added page header (index key number) to all index pages Reserved page for checksum on index pages Use keypage_header storage/maria/ma_ft_update.c: maria_putint() -> _ma_store_page_used() Store key number at start of page storage/maria/ma_loghandler.h: st_maria_info -> MARIA_HA storage/maria/ma_open.c: rec_per_key is now in double precission Added 'nulls_per_key_part' Added 'extra_options' (flags for future) Added support for PAGE_CHECKSUM Give error HA_ERR_NEW_FILE when using unsupported maria extensions Added comments Add maria_uuid to index file Added functions to store and read column_nr map. Changed some functions to return my_bool instead of uint storage/maria/ma_page.c: Added checks that pages has correct key nr Store 0xffffffff in checksum position if page checksums are not enabled Moved key-page-delete link to take into account keypage header storage/maria/ma_preload.c: Remove old MyISAM dependent code When scanning pages, only add pages to page cache for the requested index storage/maria/ma_range.c: maria_data_on_page() -> _ma_get_used_and_node() Use keypage_header storage/maria/ma_rt_index.c: Fixed indentation storage/maria/ma_rt_index.h: Added support for dynamic index page header Reserved place for PAGE_CHECKSUM storage/maria/ma_rt_key.c: Fixed indentation maria_data_on_page() -> _ma_get_page_used() maria_putint() -> maria_store_page_used() storage/maria/ma_rt_mbr.c: Fixed indentation storage/maria/ma_rt_split.c: Fixed indentation maria_data_on_page () -> _ma_get_page_used() storage/maria/ma_rt_test.c: Fixed indentation storage/maria/ma_search.c: Remove support of using -1 as 'last used index' to _ma_check_index() maria_data_on_page() -> _ma_get_page_used() maria_data_on_page() -> _ma_get_used_and_node() Use keypage_header storage/maria/ma_sort.c: Changed some buffers to size_t Changed rec_per_key_part to double storage/maria/ma_static.c: Removed NEAR Added maria_uuid storage/maria/ma_test2.c: Moevd testflag == 2 to correct place Remove test of reading with index number -1 (not supported anymore) storage/maria/ma_test_recovery.expected: Updated results storage/maria/ma_test_recovery: Changed tmp table names so that one can run maria_chk on them storage/maria/ma_write.c: Fixed indentation Use keypage_header Store index number on index pages maria_putint() -> _ma_store_page_used() maria_data_on_page() -> ma_get_used_and_node() maria_data_on_page() -> _ma_get_page_used() Added PAGE_CHECKSUM Added Maria handler to some functions Removed some not needed casts storage/maria/maria_chk.c: Added error handling for HA_ERR_NEW_FILE Added information about page checksums rec_per_key_part changed to double maria_data_on_page() -> _ma_get_page_used() Use keypage_header storage/maria/maria_def.h: Added IDENTICAL_PAGES_AFTER_RECOVERY and SANITY_CHECKS Changed rec_per_key_part to double Added nulls_per_key_part rec_per_key_rows -> records_at_analyze st_maria_info -> MARIA_HA Reserve place for new statistics variables, uuid, checksums per page etc. Removed NEAR tags Changed some prototypes to use my_bool and size_t storage/maria/maria_pack.c: st_maria_info -> MARIA_HA Fixed indentation storage/myisam/mi_dbug.c: Fix wrong debug output for ULONG mysys/my_rnd.c: New BitKeeper file ``mysys/my_rnd.c'' mysys/my_uuid.c: New BitKeeper file ``mysys/my_uuid.c'' |
18 years ago |
|
|
4eb383e06c |
After merge fixes. Applied changes made in myisam manually to maria.
storage/maria/ma_test1.c: After merge fixes. Applied changes made in myisam manually to maria. Fixed memory leak. storage/maria/ma_test2.c: After merge fixes. Applied changes made in myisam manually to maria. Fixed memory leak. |
18 years ago |
|
|
d0b9387b88 |
WL#3072 - Maria recovery.
* Recovery of the table's live checksum (CREATE TABLE ... CHECKSUM=1)
is achieved in this patch. The table's live checksum
(info->s->state.state.checksum) is updated in inwrite_rec_hook's
under the log mutex when writing UNDO_ROW_INSERT|UPDATE|DELETE
and REDO_DELETE_ALL. The checksum variation caused by the operation
is stored in these UNDOs, so that the REDO phase, when it sees such
UNDOs, can update the live checksum if it is older (state.is_of_lsn is
lower) than the record. It is also used, as a nice add-on with no
cost, to do less row checksum computation during the UNDO phase
(as we have it in the record already).
Doing this work, it became pressing to move in-write hooks
(write_hook_for_redo() et al) to ma_blockrec.c.
The 'parts' argument of inwrite_rec_hook is unpredictable (it comes
mangled at this stage, for example by LSN compression) so it is
replaced by a 'void* hook_arg', which is used to pass down information,
currently only to write_hook_for_clr_end() (previous undo_lsn and
type of undone record).
* If from ha_maria, we print to stderr how many seconds (with one
fractional digit) the REDO phase took, same for UNDO phase and for
final table close. Just to give an indication for debugging and maybe
also for Support.
storage/maria/ha_maria.cc:
question for Monty
storage/maria/ma_blockrec.c:
* log in-write hooks (write_hook_for_redo() etc) move from
ma_loghandler.c to here; this is natural: the hooks are coupled
to their callers (functions in ma_blockrec.c).
* translog_write_record() now has a new argument "hook_arg";
using it to pass down to write_hook_for_clr_end() the transaction's
previous_undo_lsn and the type of the being undone record, and also
to pass down to all UNDOs the live checksum variation caused by the
operation.
* If table has live checksum, store in UNDO_ROW_INSERT|UPDATE|DELETE
and in CLR_END the checksum variation ("delta") caused by the
operation. For example if a DELETE caused the table's live checksum
to change from 123 to 456, we store in the UNDO_ROW_DELETE, in 4 bytes,
the value 333 (456-123).
* Instead of hard-coded "1" as length of the place where we store
the undone record's type in CLR_END, use a symbol CLR_TYPE_STORE_SIZE;
use macros clr_type_store and clr_type_korr.
* write_block_record() has a new parameter 'old_record_checksum'
which is the pre-computed checksum of old_record; that value is used
to update the table's live checksum when writing UNDO_ROW_UPDATE|CLR_END.
* In allocate_write_block_record(), if we are executing UNDO_ROW_DELETE
the row's checksum is already computed.
* _ma_update_block_record2() now expect the new row's checksum into
cur_row.checksum (was already true) and the old row's checksum into
new_row.checksum (that's new). Its two callers, maria_update() and
_ma_apply_undo_row_update(), honour this.
* When executing an UNDO_ROW_INSERT|UPDATE|DELETE in UNDO phase, pick
up the checksum delta from the log record. It is then used to update
the table's live checksum when writing CLR_END, and saves us a
computation of record.
storage/maria/ma_blockrec.h:
in-write hooks move from ma_loghandler.c
storage/maria/ma_check.c:
more straightforward size of buffer
storage/maria/ma_checkpoint.c:
<= is enough
storage/maria/ma_commit.c:
new prototype of translog_write_record()
storage/maria/ma_create.c:
new prototype of translog_write_record()
storage/maria/ma_delete.c:
The row's checksum must be computed before calling(*delete_record)(),
not after, because it must be known inside _ma_delete_block_record()
(to update the table's live checksum when writing UNDO_ROW_DELETE).
If deleting from a transactional table, live checksum was already updated
when writing UNDO_ROW_DELETE.
storage/maria/ma_delete_all.c:
@todo is now done (in ma_loghandler.c)
storage/maria/ma_delete_table.c:
new prototype of translog_write_record()
storage/maria/ma_loghandler.c:
* in-write hooks move to ma_blockrec.c.
* translog_write_record() gets a new argument 'hook_arg' which is
passed down to pre|inwrite_rec_hook. It is more useful that 'parts'
for those hooks, because when those hooks are called, 'parts' has
possibly been mangled (like with LSN compression) and is so
unpredictable.
* fix for compiler warning (unused buffer_start when compiling without
debug support)
* Because checksum delta is stored into UNDO_ROW_INSERT|UPDATE|DELETE
and CLR_END, but only if the table has live checksum, these records
are not PSEUDOFIXEDLENGTH anymore, they are now VARIABLE_LENGTH (their
length is X if no live checksum and X+4 otherwise).
* add an inwrite_rec_hook for UNDO_ROW_UPDATE, which updates the
table's live checksum. Update it also in hooks of UNDO_ROW_INSERT|
DELETE and REDO_DELETE_ALL and CLR_END.
* Bugfix: when reading a record in translog_read_record(), it happened
that "length" became negative, because the function assumed that
the record extended beyond the page's end, whereas it may be shorter.
storage/maria/ma_loghandler.h:
* Instead of hard-coded "1" and "4", use symbols and macros
to store/retrieve the type of record which the CLR_END corresponds
to, and the checksum variation caused by the operation which logs the
record
* translog_write_record() gets a new argument 'hook_arg' which is
passed down to pre|inwrite_rec_hook. It is more useful that 'parts'
for those hooks, because when those hooks are called, 'parts' has
possibly been mangled (like with LSN compression) and is so
unpredictable.
storage/maria/ma_open.c:
fix for "empty body in if() statement" (when compiling without safemutex)
storage/maria/ma_pagecache.c:
<= is enough
storage/maria/ma_recovery.c:
* print the time that each recovery phase (REDO/UNDO/flush) took;
this is enabled only when recovering from ha_maria. Is it printed
n seconds with a fractional part of one digit (like 123.4 seconds).
* In the REDO phase, update the table's live checksum by using
the checksum delta stored in UNDO_ROW_INSERT|DELETE|UPDATE and CLR_END.
Update it too when seeing REDO_DELETE_ALL.
* In the UNDO phase, when executing UNDO_ROW_INSERT, if the table does
not have live checksum then reading the record's header (as done by
the master loop of run_undo_phase()) is enough; otherwise we
do a translog_read_record() to have the checksum delta ready
for _ma_apply_undo_row_insert().
* When at the end of the REDO phase we notice that there is an unfinished
group of REDOs, don't assert in debug binaries, as I verified that it
can happen in real life (with kill -9)
* removing ' in #error as it confuses gcc3
storage/maria/ma_rename.c:
new prototype of translog_write_record()
storage/maria/ma_test_recovery.expected:
Change in output of ma_test_recovery: now all live checksums of
original tables equal those of tables recreated by the REDO phase
and those of tables fixed by the UNDO phase. I.e. recovery of
the live checksum looks like working (which was after all the only
goal of this changeset).
I checked by hand that it's not just all live checksums which are
now 0 and that's why they match. They are the old values like
3757530372. maria.test has hard-coded checksum values in its result
file so checks this too.
storage/maria/ma_update.c:
* It's useless to put up HA_STATE_CHANGED in 'key_changed',
as we put up HA_STATE_CHANGED in info->update anyway.
* We need to compute the old and new rows' checksum before calling
(*update_record)(), as checksum delta must be known when logging
UNDO_ROW_UPDATE which is done by _ma_update_block_record(). Note that
some functions change the 'newrec' record (at least _ma_check_unique()
does) so we cannot move the checksum computation too early in the
function.
storage/maria/ma_write.c:
If inserting into a transactional table, live's checksum was
already updated when writing UNDO_ROW_INSERT. The multiplication
is a trick to save an if().
storage/maria/unittest/ma_test_loghandler-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_first_lsn-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_max_lsn-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_multigroup-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_multithread-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_noflush-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_pagecache-t.c:
new prototype of translog_write_record()
storage/maria/unittest/ma_test_loghandler_purge-t.c:
new prototype of translog_write_record()
storage/myisam/sort.c:
fix for compiler warnings in pushbuild (write_merge_key* functions
didn't have their declaration match MARIA_HA::write_key).
|
18 years ago |
|
|
cec8ac3e07 |
WL#3071 Maria checkpoint
Finally this is the real checkpoint code. It however exhibits unstabilities when a checkpoint runs concurrently with data-modifying clients (table corruption, transaction log's assertions) so for now a checkpoint is taken only at startup after recovery and at shutdown, i.e. not in concurrent situations. Later we will let it run periodically, as well as flush dirty pages periodically (almost all needed code is there already, only pagecache code is written but not committed). WL#3072 Maria recovery * replacing UNDO_ROW_PURGE with CLR_END; testing of those CLR_END via ma_test2 which has INSERTs failing with duplicate keys. * replaying of REDO_RENAME_TABLE Now, off to test Recovery in ha_maria :) BitKeeper/deleted/.del-ma_least_recently_dirtied.c: Delete: storage/maria/ma_least_recently_dirtied.c BitKeeper/deleted/.del-ma_least_recently_dirtied.h: Delete: storage/maria/ma_least_recently_dirtied.h storage/maria/Makefile.am: compile Checkpoint module storage/maria/ha_maria.cc: When ha_maria starts, do a recovery from last checkpoint. Take a checkpoint when that recovery has ended and when ha_maria shuts down cleanly. storage/maria/ma_blockrec.c: * even if my_sync() fails we have to my_close() (otherwise we leak a descriptor) * UNDO_ROW_PURGE is replaced by a simple CLR_END for UNDO_ROW_INSERT, as promised in the old comment; it gives us skipping during the UNDO phase. storage/maria/ma_check.c: All REDOs before create_rename_lsn are ignored by Recovery. So create_rename_lsn must be set only after all data/index has been flushed and forced to disk. We thus move write_log_record_for_repair() to after _ma_flush_tables_files_after_repair(). storage/maria/ma_checkpoint.c: Checkpoint module. storage/maria/ma_checkpoint.h: optional argument if caller wants a thread to periodically take checkpoints and flush dirty pages. storage/maria/ma_create.c: * no need to init some vars as the initial bzero(share) takes care of this. * update to new function's name * even if we fail in my_sync() we have to my_close() storage/maria/ma_extra.c: Checkpoint reads share->last_version under intern_lock, so we make maria_extra() update it under intern_lock. THR_LOCK_maria still needed because of _ma_test_if_reopen(). storage/maria/ma_init.c: destroy checkpoint module when Maria shuts down. storage/maria/ma_loghandler.c: * UNDO_ROW_PURGE gone (see ma_blockrec.c) * we need to remember the LSN of the LOGREC_FILE_ID for a share, because this LSN is needed into the checkpoint record (Recovery wants to know the validity domain of an id->name mapping) * translog_get_horizon_no_lock() needed for Checkpoint * comment about failing assertion (Sanja knows) * translog_init_reader_data() thought that translog_read_record_header_scan() returns 0 in case of error, but 0 just means "0-length header". * translog_assign_id_to_share() now needs the MARIA_HA because LOGREC_FILE_ID uses a log-write hook. * Verify that (de)assignment of share->id happens only under intern_lock, as Checkpoint reads this id with intern_lock. * translog_purge() can accept TRANSLOG_ADDRESS, not necessarily a real LSN. storage/maria/ma_loghandler.h: prototype updates storage/maria/ma_open.c: no need to initialize "res" storage/maria/ma_pagecache.c: When taking a checkpoint, we don't need to know the maximum rec_lsn of dirty pages; this LSN was intended to be used in the two-checkpoint rule, but last_checkpoint_lsn is as good. 4 bytes for stored_list_size is enough as PAGECACHE::blocks (number of blocks which the pagecache can contain) is int. storage/maria/ma_pagecache.h: new prototype storage/maria/ma_recovery.c: * added replaying of REDO_RENAME_TABLE * UNDO_ROW_PURGE gone (see ma_blockrec.c), replaced by CLR_END * Recovery from the last checkpoint record now possible * In new_table() we skip the table if the id->name mapping is older than create_rename_lsn (mapping dates from lsn_of_file_id). * in get_MARIA_HA_from_REDO_record() we skip the record if the id->name mapping is newer than the record (can happen if processing a record which is before the checkpoint record). * parse_checkpoint_record() has to return a LSN, that's what caller expects storage/maria/ma_rename.c: new function's name; log end zeroes of tables' names (ease recovery) storage/maria/ma_test2.c: * equivalent of ma_test1's --test-undo added (named -u here). * -t=1 now stops right after creating the table, so that we can test undoing of INSERTs with duplicate keys (which tests the CLR_END logged by _ma_write_abort_block_record()). storage/maria/ma_test_recovery.expected: Result of testing undoing of INSERTs with duplicate keys; there are some differences in maria_chk -dvv but they are normal (removing records does not shrink data/index file, does not put back the "analyzed, optimized keys"(etc) index state. storage/maria/ma_test_recovery: Test undoing of INSERTs with duplicate keys, using ma_test2; when such INSERT happens, it logs REDO_INSERT, UNDO_INSERT, REDO_DELETE, CLR_END; we abort after that, and test that CLR_END causes recovery to jump over UNDO_INSERT. storage/maria/ma_write.c: comment storage/maria/maria_chk.c: comment storage/maria/maria_def.h: * a new bit in MARIA_SHARE::in_checkpoint, used to build a list of unique shares during Checkpoint. * MARIA_SHARE::lsn_of_file_id added: the LSN of the last LOGREC_FILE_ID for this share; needed to know to which LSN domain the mappings found in the Checkpoint record apply (new mappings should not apply to old REDOs). storage/maria/trnman.c: * small changes to how trnman_collect_transactions() fills its buffer; it also uses a non-dummy lsn_read_non_atomic() found in ma_checkpoint.h |
19 years ago |
|
|
6aef814d98 |
Fixed some bugs when using undo of VARCHAR fields
Fixed bug in undo_delete Fixed wrong error output from maria_check include/my_base.h: Added marker if we have null fields in table mysql-test/r/maria.result: checksum in maria now ignore null fields that are null sql/sql_table.cc: Ignore null fields that are now (Before enabling this, we have to change MyISAM to also skip null fields) storage/maria/ma_blockrec.c: More logging After merge fixes Fixed some bugs when using undo of VARCHAR fields Fixed bug in undo_delete (We can't use info->rec_buff here as this is used in write_block_record()) storage/maria/ma_blockrec.h: ma_recordpos_to_dir_entry changed to return uint storage/maria/ma_check.c: Fixed wrong output in case of errors storage/maria/ma_create.c: Set share.base.pack_reclength more correct for block record Delete support for RAID storage/maria/ma_open.c: Don't calculate checksum fields with value NULL storage/maria/ma_test1.c: Fixed output from -v for VARCHAR keys storage/maria/ma_test_recovery.expected: Update results after adding new printf New checksums (because we now ignore nulls) Some file lengths are different, but think they are ok (didn't have time to investigate) storage/myisam/ha_myisam.cc: Fixed comment storage/myisam/mi_test1.c: Fixed bug |
19 years ago |
|
|
2291f932b2 |
- WL#3072 Maria Recovery:
Recovery of state.records (the count of records which is stored into the header of the index file). For that, state.is_of_lsn is introduced; logic is explained in ma_recovery.c (look for "Recovery of the state"). The net gain is that in case of crash, we now recover state.records, and it is idempotent (ma_test_recovery tests it). state.checksum is not recovered yet, mail sent for discussion. - WL#3071 Maria Checkpoint: preparation for it, by protecting all modifications of the state in memory or on disk with intern_lock (with the exception of the really-often-modified state.records, which is now protected with the log's lock, see ma_recovery.c (look for "Recovery of the state"). Also, if maria_close() sees that Checkpoint is looking at this table it will not my_free() the share. - don't compute row's checksum twice in case of UPDATE (correction to a bugfix I made yesterday). storage/maria/ha_maria.cc: protect state write with intern_lock (against Checkpoint) storage/maria/ma_blockrec.c: * don't reset trn->rec_lsn in _ma_unpin_all_pages(), because it should wait until we have corrected the allocation in the bitmap (as the REDO can serve to correct the allocation during Recovery); introducing _ma_finalize_row() for that. * In a changeset yesterday I moved computation of the checksum into write_block_record(), to fix a bug in UPDATE. Now I notice that maria_update() already computes the checksum, it's just that it puts it into info->cur_row while _ma_update_block_record() uses info->new_row; so, removing the checksum computation from write_block_record(), putting it back into allocate_and_write_block_record() (which is called only by INSERT and UNDO_DELETE), and copying cur_row->checksum into new_row->checksum in _ma_update_block_record(). storage/maria/ma_check.c: new prototypes, they will take intern_lock when writing the state; also take intern_lock when changing share->kfile. In both cases this is to protect against Checkpoint reading/writing the state or reading kfile at the same time. Not updating create_rename_lsn directly at end of write_log_record_for_repair() as it wouldn't have intern_lock. storage/maria/ma_close.c: Checkpoint builds a list of shares (under THR_LOCK_maria), then it handles each such share (under intern_lock) (doing flushing etc); if maria_close() freed this share between the two, Checkpoint would see a bad pointer. To avoid this, when building the list Checkpoint marks each share, so that maria_close() knows it should not free it and Checkpoint will free it itself. Extending the zone covered by intern_lock to protect against Checkpoint reading kfile, writing state. storage/maria/ma_create.c: When we update create_rename_lsn, we also update is_of_lsn to the same value: it is logical, and allows us to test in maria_open() that the former is not bigger than the latter (the contrary is a sign of index header corruption, or severe logging bug which hinders Recovery, table needs a repair). _ma_update_create_rename_lsn_on_disk() also writes is_of_lsn; it now operates under intern_lock (protect against Checkpoint), a shortcut function is available for cases where acquiring intern_lock is not needed (table's creation or first open). storage/maria/ma_delete.c: if table is transactional, "records" is already decremented when logging UNDO_ROW_DELETE. storage/maria/ma_delete_all.c: comments storage/maria/ma_extra.c: Protect modifications of the state, in memory and/or on disk, with intern_lock, against a concurrent Checkpoint. When state goes to disk, update it's is_of_lsn (by calling the new _ma_state_info_write()). In HA_EXTRA_FORCE_REOPEN, don't set share->changed to 0 (undoing a change I made a few days ago) and ASK_MONTY storage/maria/ma_locking.c: no real code change here. storage/maria/ma_loghandler.c: Log-write-hooks for updating "state.records" under log's mutex when writing/updating/deleting a row or deleting all rows. storage/maria/ma_loghandler_lsn.h: merge (make LSN_ERROR and LSN_REPAIRED_BY_MARIA_CHK different) storage/maria/ma_open.c: When opening a table verify that is_of_lsn >= create_rename_lsn; if false the header must be corrupted. _ma_state_info_write() is split in two: _ma_state_info_write_sub() which is the old _ma_state_info_write(), and _ma_state_info_write() which additionally takes intern_lock if requested (to protect against Checkpoint) and updates is_of_lsn. _ma_open_keyfile() should change kfile.file under intern_lock to protect Checkpoint from reading a wrong kfile.file. storage/maria/ma_recovery.c: Recovery of state.records: when the REDO phase sees UNDO_ROW_INSERT which has a LSN > state.is_of_lsn it increments state.records. Same for UNDO_ROW_DELETE and UNDO_ROW_PURGE. When closing a table during Recovery, we know its state is at least as new as the current log record we are looking at, so increase is_of_lsn to the LSN of the current log record. storage/maria/ma_rename.c: update for new behaviour of _ma_update_create_rename_lsn_on_disk(). storage/maria/ma_test1.c: update to new prototype storage/maria/ma_test2.c: update to new prototype (actually prototype was changed days ago, but compiler does not complain about the extra argument??) storage/maria/ma_test_recovery.expected: new result file of ma_test_recovery. Improvements: record count read from index's header is now always correct. storage/maria/ma_test_recovery: "rm" fails if file does not exist. Redirect stderr of script. storage/maria/ma_write.c: if table is transactional, "records" is already incremented when logging UNDO_ROW_INSERT. Comments. storage/maria/maria_chk.c: update is_of_lsn too storage/maria/maria_def.h: - MARIA_STATE_INFO::is_of_lsn which is used by Recovery. It is stored into the index file's header. - Checkpoint can now mark a table as "don't free this", and maria_close() can reply "ok then you will free it". - new functions storage/maria/maria_pack.c: update for new name |
19 years ago |
|
|
e27890cab0 |
WL#3072 Maria recovery
* create page cache before initializing engine and not after, because Maria's recovery needs a page cache * make the creation of a bitmap page more crash-resistent * bugfix (see ma_blockrec.c) * back to old way: create an 8k bitmap page when creating table * preparations for the UNDO phase: recreate TRNs * preparations for Checkpoint: list of dirty pages, testing of rec_lsn to know if page should be skipped during Recovery (unused in this patch as no Checkpoint module pushed yet) * maria_chk tags repaired table with a special LSN * reworking all around in ma_recovery.c (less duplication) mysys/my_realloc.c: noted an issue in my_realloc() sql/mysqld.cc: page cache needs to be created before engines are initialized, because Maria's initialization may do a recovery which needs the page cache. storage/maria/ha_maria.cc: update to new prototype storage/maria/ma_bitmap.c: when creating the first bitmap page we used chsize to 8192 bytes then pwrite (overwrite) the last 2 bytes (8191-8192). If crash between the two operations, this leaves a bitmap page full without its end marker. A later recovery may try to read this page and find it exists and misses a marker and conclude it's corrupted and fail. Changing the chsize to only 8190 bytes: recovery will then find the page is too short and recreate it entirely. storage/maria/ma_blockrec.c: Fix for a bug: when executing a REDO, if the data page is created, data_file_length was increased before _ma_bitmap_set(): _ma_bitmap_set() called _ma_read_bitmap_page() which, due to the increased data_file_length, expected to find a bitmap page on disk with a correct end marker; if the bitmap page didn't exist already in fact, this failed. Fixed by increasing data_file_length only after _ma_read_bitmap_page() has created the new bitmap page correctly. This bug could happen every time a REDO is about creating a new bitmap page. storage/maria/ma_check.c: empty data file has a bitmap page storage/maria/ma_control_file.c: useless parameter to ma_control_file_create_or_open(), just test if this is recovery. storage/maria/ma_control_file.h: new prototype storage/maria/ma_create.c: Back to how it was before: maria_create() creates an 8k bitmap page. Thus (bugfix) data_file_length needs to reflect this instead of being 0. storage/maria/ma_loghandler.c: as ma_test1 and ma_test2 now use real transactions and not dummy_transaction_object, REDO for INSERT/UPDATE/DELETE are always about real transactions, can assert this. A function for Recovery to assign a short id to a table. storage/maria/ma_loghandler.h: new function storage/maria/ma_loghandler_lsn.h: maria_chk tags repaired tables with this LSN storage/maria/ma_open.c: * enforce that DMLs on transactional tables use real transactions and not dummy_transaction_object. * test if table was repaired with maria_chk (which has to been seen as an import of an external table into the server), test validity of create_rename_lsn (header corruption detection) * comments. storage/maria/ma_recovery.c: * preparations for the UNDO phase: recreate TRNs * preparations for Checkpoint: list of dirty pages, testing of rec_lsn to know if page should be skipped during Recovery (unused in this patch as no Checkpoint module pushed yet) * reworking all around (less duplication) storage/maria/ma_recovery.h: a parameter to say if the UNDO phase should be skipped storage/maria/maria_chk.c: tag repaired tables with a special LSN storage/maria/maria_read_log.c: * update to new prototype * no UNDO phase in maria_read_log for now storage/maria/trnman.c: * a function for Recovery to create a transaction (TRN), needed in the UNDO phase * a function for Recovery to grab an existing transaction, needed in the UNDO phase (rollback all existing transactions) storage/maria/trnman_public.h: new functions |
19 years ago |
|
|
0d301ee822 |
* tests which use MERGE or INSERT DELAYED should run only
with engines which support that * temporarily adding option --global-subst to mysqltest so that the full testsuite can be run using Maria tables without failing on trivial differences (like diff in the engine clause of SHOW CREATE TABLE) * using recognizable tags for todos of the Maria team client/mysqltest.c: temporarily adding option --global-subst: its argument is X,Y. It replaces all occurrences of X by Y into mysqltest's result before the comparison with the expected result is done. This serves for when a test is run with --default-storage-engine=X where X is not MyISAM: tests using SHOW CREATE TABLE will always fail because SHOW CREATE TABLE prints X instead of MyISAM. With --global-subst=X,MyISAM , such trivial differences are eliminated and test may be reported as passing. For example, --global-subst=MARIA,MyISAM This is not good enough for merging into main trees! just for running many tests and finding bugs now! mysql-test/mysql-test-run.pl: new option --mysqltest to pass options to mysqltest (like we have --mysqld). Used for example like this: ./mtr --mysqltest=--global-subst=MARIA,MyISAM mysql-test/r/merge.result: update mysql-test/t/delayed.test: run test only with engines which support INSERT DELAYED mysql-test/t/merge.test: run test only with MyISAM tables, as they are required by MERGE sql/sql_delete.cc: recognizable tag sql/table.cc: recognizable tag storage/maria/ha_maria.cc: recognizable tag storage/maria/ma_check.c: recognizable tag storage/maria/ma_create.c: recognizable tag |
19 years ago |
|
|
95e2558f8e |
* "transactionality" needs to be preserved by TRUNCATE TABLE:
a table with TRANSACTIONAL=x needs to still have it after TRUNCATE. No testcase, but without this fix, the frm and the Maria table got "out of sync" in this case: create table t1 (a int) row_format=page transactional=0; truncate table t1; After TRUNCATE, the Maria table (not the frm) was transactional (thus logging records, which is wrong). * fix for non-closed file at end of "maria_chk -r" sql/table.cc: "transactionality" needs to be preserved when truncating. It's behind a if() to not cancel the hack added to mysql_truncate() today for temporary Maria tables. storage/maria/ha_maria.cc: question for Monty (he also has a big mail from me on the same subject) storage/maria/ma_check.c: question for Monty (likely bugs) storage/maria/ma_create.c: debugging info storage/maria/ma_open.c: fix for datafile left open at end of "maria_chk -r": ma_open_datafile() happens after _ma_bitmap_init(), it sets dfile.file so needs to set share->bitmap.file.file too (they are copies of each other). Otherwise it breaks how closing of files works in BLOCK_RECORD (which is that info.dfile.file is not closed but share->bitmap.file.file is closed): not setting share->bitmap.file.file can lead to forgetting to close a file or closing a wrong file. |
19 years ago |
|
|
72c3c369e4 |
Fix for three bugs:
number 1: "./mtr --mysqld=--default-storage-engine=maria backup" restored no rows (forgot to flush data pages before my_copy(), and also the maria_repair() used by ha_maria::restore() needed a correct data_file_length to not miss rows). [note that BACKUP TABLE will be removed anyway in 5.2] number 2: "./mtr --mysqld=--default-storage-engine=maria bootstrap" caused segfault (uninitialized variable) number 3: "./mtr --mysqld=--default-storage-engine=maria check" showed warning in CHECK TABLE (maria_create() created a non-empty data file with data_file_length==0). storage/maria/ha_maria.cc: in ha_maria::backup, need to flush the data file before copying it, otherwise data misses from the copy (bug 1) storage/maria/ma_bitmap.c: when allocating data at the end of the bitmap, best_data is at "end", should not be left to 0 (bug 2) storage/maria/ma_check.c: _ma_scan_block_record() is used in QUICK repair. It relies on data_file_length. RESTORE TABLE mixes the MAI of an empty table (so, data_file_length==0) with an non-empty MAD, and does a QUICK repair; that got fooled (thought it had hit EOF immediately, so found no records) (bug 1) storage/maria/ma_create.c: At the end of maria_create() we have, in the index file, data_file_length==0, while the data file has a bitmap page (8192). This inconsistency makes CHECK TABLE rightly complain. Fixed by not creating a first bitmap page during maria_create() (also saves disk space) (bug 3) Question for Monty. storage/maria/ma_extra.c: A function to flush the data and index files before one can use OS syscalls (reads, writes) on those files. For example, ha_maria::backup() does a my_copy() of the data file and so all cached pieces of this file must be sent to the OS (bug 1) This function will have to be used elsewhere in Maria, several places have not been updated when we added pagecache-ing of the data file (they still only flush the index file), they are probable bugs. storage/maria/maria_def.h: new function. Needs to be visible from ha_maria::backup. |
19 years ago |