Thursday, 2021-11-18

noonedeadpunkIf it will happen - I will be there as well (at least I aim to be there :))07:47
noonedeadpunkwell we probably can ensure ca-certs are latest with openstack_hosts role and install them separately from other packages.07:49
jrosserlxc_hosts role already deals with ca-certificates for containers10:56
jrossertheres also going to be present vs. latest on the apt module to consider10:56
noonedeadpunkbut in case of lxc_hosts I think it can only build new container image? Or manage only hosts?10:57
damiandabrowski[m]ca-certificates are listed in `lxc_cache_distro_packages` which is used in `lxc_hosts/templates/prep-scripts/ubuntu_20_prep.sh.j2`11:00
damiandabrowski[m]so IMO it won't upgrade this package during openstack upgrade11:00
noonedeadpunkyeah so I guess you need to re-create containers to get it updated.11:07
noonedeadpunkeventually re-creating containers is possible but probably overkill. However, ad-hoc might be really best thing to do here, dunno if we should do anything11:08
noonedeadpunkbut if look wider, on all packages update during openstack upgrade, we might need to set some variable explicitly while running upgrade to adjust package state11:09
noonedeadpunkand we already have package_state for that11:09
noonedeadpunkso it's more how we overwrite it only  during upgrade...11:11
noonedeadpunkeventually documenting that is the way as well. Ie run - setup-openstack -e package_state=latest11:11
noonedeadpunkor setup-hosts -e package_state=latest11:11
jrosseri think that ad-hoc command is a good approach11:56
jrosserstate=latest can have some unexpected side effects, like new point releases of pretty much everything might restart services you don't expect11:57
noonedeadpunkyeah, but I meant that during openstack upgrade it's good to include that command?12:10
noonedeadpunkwhich we don't do right now12:11
noonedeadpunkmight be including minor upgrades as well?12:11
noonedeadpunkbecause it's not obvious that it won't be done. But maybe just documenting this would be enough12:11
mgariepynoonedeadpunk, https://paste.opendev.org/show/811164/13:38
mgariepyjrosser, ^^ 13:38
mgariepyi think we do try to run mysql_upgrade for no really good reason .. :/13:39
jrosserdo you need to attach gdb and extract the stack trace so see where it is stuck?13:42
mgariepysince it's already running from the 13:42
jrossersounds like the core file on it's own is not enough, from the jira ticket13:42
mgariepyyep that sure. 13:43
mgariepyi want to debug a bit more.13:43
mgariepywe do run the mariadb-upgrade in a task but this is already done by systemd.13:43
admin1osa+octavia .. 23.1.2 branch ... octaiva_key . .. where is the private_key stored ? 13:47
admin1or are we supposed to delete this key, and then recreate one with the same name and save the private key 13:47
noonedeadpunkmgariepy: oh hm13:49
noonedeadpunkactually I wonder why debian-start runs mysql_upgrade while it should be a symlink to mariadb-upgrde from 10.6 iirc13:49
mgariepyif I stop mariadb, and start it it does comes back13:49
mgariepyit's symlink13:49
noonedeadpunkso debian-start just not got updated for the release?13:50
noonedeadpunkwell, it'a packaging issue though, non-critical one btw13:50
mgariepyit's all symlink in fact.  /etc/default/mysql -> /etc/default/mariadb13:50
jrosseradmin1: i think the key is put on your utility host13:50
mgariepyand /usr/bin/mysql_upgrade -> mariadb-upgrade13:51
noonedeadpunkmgariepy: have you checked what spawns debian-start actually?13:51
noonedeadpunkhm https://opendev.org/openstack/openstack-ansible-galera_server/src/branch/master/templates/debian.cnf.j2#L1413:52
mgariepyyep, it does run the upgrade with "/usr/bin/mysql_upgrade --defaults-extra-file=/etc/mysql/debian.cnf --version-check""13:52
mgariepyhttps://paste.openstack.org/show/811165/13:52
mgariepyhttps://paste.opendev.org/show/811164/ err13:53
mgariepyarf.13:53
mgariepyi wish i could delete stuff lol 13:53
mgariepy65 is the debian-start.13:54
noonedeadpunkaha  ExecStartPost=/etc/mysql/debian-start13:54
noonedeadpunkso yes, we hit race condition13:55
noonedeadpunkand yes, we don't need to run that all times13:55
mgariepylet me try something..13:55
noonedeadpunkI wonder if centos has smth common13:55
mgariepywith --version-check is doesn't fully run13:55
mgariepyand it seems to do the correct thing13:55
mgariepyit's race condition ..13:58
noonedeadpunkwell, we for sure should not always run mysql_upgrade13:59
noonedeadpunkand I'm not sure we should run it at all...13:59
mgariepyand we shoud wait for mysql_upgrade to finish before adding users..13:59
noonedeadpunkoh, well, yes...13:59
noonedeadpunkI wonder if we can somehow track systemd unit status...14:00
mgariepyrerunning another time to see if it's the issue..14:00
noonedeadpunklet me also spawn centos8 to see how things are done there...14:00
mgariepyhttps://paste.opendev.org/show/811166/14:01
mgariepyracydebug lol14:01
mgariepyjournactl is awesome14:03
mgariepyyou can follow the unit before it's created :D14:04
noonedeadpunkoh, yes, that's actually very nice thing!14:04
mgariepywith my super patch with sleep .. it works all the time. before that it was failing.14:05
mgariepyall the time :D 14:05
mgariepywell .. mysql shouldn't let us add users if it lock the DB.14:08
mgariepyafter..14:08
admin1jrosser, thanks .. got it 14:09
jrosseradmin1: this actually may be a bug that they end up there, really they should be placed on the deployment host14:09
noonedeadpunkI can recall fixing this tbh...14:10
noonedeadpunkah, no :(14:11
noonedeadpunkhttps://opendev.org/openstack/openstack-ansible-os_octavia/src/branch/master/defaults/main.yml#L25814:11
noonedeadpunkso I fixed it only locally I believe....14:11
mgariepyif i remove the mariadb-upgrade it does fix the issue..14:17
mgariepythe user get created.. and the mariadb-upgrade finish at some point.14:21
mgariepyi'll spawn a centos8-stream to see what it does14:24
noonedeadpunkah, I laready did spawned14:40
mgariepylol14:40
mgariepyso what does it do ?14:40
noonedeadpunktrying to check out atm )14:42
mgariepycentos is so much fun... not having the usr/local/bin in PATH..14:43
noonedeadpunkwell I have other thing I stuck with...14:43
noonedeadpunkhttps://paste.opendev.org/show/811170/14:44
mgariepysystemctl status mariadb?14:45
noonedeadpunkah, I recalled now14:45
noonedeadpunkmodule_hotfixes=1 was missing14:46
noonedeadpunk(for dnf repo)14:46
noonedeadpunkcentos is really so much fun...14:46
mgariepywow.14:47
spateldid we think about Rocky Linux ?  14:47
noonedeadpunkyep and decided that we won't explicitly say about support, since we can't test it and lack interested parties14:47
noonedeadpunkbut at the same time it should jsut work as long as os_faminly is redhat14:48
spatelyep14:48
noonedeadpunkmgariepy: it just missing upgrade part from systmd unit 14:50
noonedeadpunk(I meant debian-start)14:50
mgariepyif you run the upgrade is it done magically before ?14:50
mgariepydoes it returns : This installation of MariaDB is already upgraded to 10.6.5-MariaDB, use --force if you still need to run mysql_upgrade14:51
mgariepy?14:51
noonedeadpunkshould I with ` --version-check`?14:51
mgariepyit don't think it matter much.14:52
noonedeadpunkit just runs14:52
mgariepyi just run without args and its spits that.14:52
noonedeadpunkso no, it does not run magically14:52
noonedeadpunkhttps://paste.opendev.org/show/811171/14:52
mgariepywow..14:53
noonedeadpunkso, suggestion14:53
noonedeadpunklet's add condition here then https://review.opendev.org/c/openstack/openstack-ansible-galera_server/+/817384/2/tasks/galera_server_setup.yml to run only against redhat and only when galera_upgrade?14:54
noonedeadpunk(or galera_force_bootstrap or galera_ignore_cluster_state)14:54
noonedeadpunkor we need to add some hook to wait for post to finish14:55
noonedeadpunkmgariepy: have you posted systemctl status mariadb somewhere?14:56
noonedeadpunkI'm wondering if unit is `activating` until it finish mariadb_upgrade14:57
mgariepyhttps://paste.opendev.org/show/811164/14:57
noonedeadpunk`active (running)` damn14:58
mgariepynop it's not.14:58
mgariepyfrom what monty__  says on #maria, it needs to be run and if not complete some query or privileges may not work.15:01
mgariepy<monty__> the purpose of mysql_upgrade is to update privilege tables (and view) definitions if needed. It also fixes indexes that has a change in character sort collections15:01
mgariepy<monty__> This means in practice that before mysql_upgrade has been run, some queries and/or privileges may not work15:01
noonedeadpunkoh I missed all fun15:02
noonedeadpunkreads back15:02
mgariepyit it's not done yet i guess if query that we call fails the retry will kick in and pass at some point.15:04
mgariepyon focal with lxc the msyql_upgrade does take like 20 sec..15:04
mgariepyi wonder how long it takes on a brownfield with a bigger DB. 15:08
noonedeadpunkwell looking on debian-start I'm pretty sure we don't ever need to run mysql_upgrade there manually15:12
mgariepyyep15:12
mgariepyso only on rhel.15:14
mgariepyand i guess it can be run all the time we run the playbook. not only on upgrades.15:14
mgariepywe could also add args to it but i'm not sure it does differ a lot from the default.15:14
mgariepyyep: version-check                     TRUE15:15
*** akahat|rover is now known as akahat|dinner15:19
jrosserinteresting, OSA X release patches just got created15:19
noonedeadpunknah, it's automated thing15:21
opendevreviewDmitriy Rabotyagov proposed openstack/openstack-ansible-galera_server master: Update mariadb to 10.6.5  https://review.opendev.org/c/openstack/openstack-ansible-galera_server/+/81738415:34
noonedeadpunkmgariepy: damn, but we also need to wait before creating users as well?15:35
mgariepynot really15:37
noonedeadpunkoh, ok15:52
mgariepysome stuff may not work but i guess we can continue like that and fix stuff if we cross that bridge sometimes.15:53
mgariepynot seeing how bad of an issue this can cause.15:53
*** akahat|dinner is now known as akahat|rover16:58
mgariepyhttps://zuul.opendev.org/t/openstack/stream/a9901352be5c4b30ba68ec0c7050eebe?logfile=console.log 18:23
mgariepyarf.18:23
mgariepylet's try to reproduce.. 18:30
mgariepynoonedeadpunk, jrosser can we have access to that node ?18:36
mgariepybefore it gets deleted ?18:36
jrosserif it’s not yet failed the job the infra people can set up a hold on the node18:37
mgariepywhat channel ? 18:37
jrosser#opendev I think18:37
mgariepygreat i'm in.18:51
mgariepyhmm. not sure where to start.. 19:01
jrosserthe paths to the repos should be in the log I think19:04
mgariepyyeah that part i know :D19:05
mgariepyhaha19:05
mgariepynot sure where to start for the galera issue.19:05
mgariepyit's hung. at the same place as the other issue.19:10
mgariepyjrosser, to dump a full trace can i install the debug after the fail ? then generate it with gdb and the core dump ?19:37
jrosseri think you need ther debug symbols, which may be their own package19:37
jrosserand gdb can attach to the running process19:37
jrosserand from memory its 'bt' to dump the backtrace19:38
jrosserthat will give you the same as the core dump + debug symbols19:38
jrosseror core dump + binary(with symbols)19:38
mgariepyhmm 19:39
jrosserit's been a while though19:39
mgariepyok let's try that.19:39
mgariepylol first time for me :D19:39
jrosserfirst you can attach gdb and do bt19:39
jrosseri think when you attach the debugger it gives some info about if it finds what it wants19:39
mgariepyho. seems to dump stuff.19:43
mgariepy160kb of stuff 19:43
jrosserit'll dump some stuff per thread, and if there are lots of threads there will be lots of stuff19:45
mgariepyso should i copy the mysql db as well ?19:47
jrosserI don’t know really, you can keep the geld node for a while and see if the mariadb people want more stuff20:06
mgariepyi attached the data to the ticket.20:07
mgariepyit was only 1.5M compressed..20:07
mgariepyi'm at 21 run without any hangs on my setup.20:09
mgariepyit is really puzzeling.20:09

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!