User Details
- User Since
- May 1 2020, 10:28 PM (335 w, 3 d)
- Availability
- Available
- LDAP User
- Unknown
- MediaWiki User
- RKemper (WMF) [ Global Accounts ]
Thu, Oct 1
@Zache Thanks for moving the dataset into the query string. Sparqlbridge is now on the allowlist as https://sparqlbridge.toolforge.org/sparql* (https://gerrit.wikimedia.org/r/1346704), and the WDQS hosts have been restarted to pick it up
kafka-configurator 0.0.1-1~wmf13u1 is available on apt now: https://apt-browser.toolforge.org/trixie-wikimedia/main/#:~:text=kafka-configurator
Wed, Sep 30
@pfischer I would rip out any SLIs/SLOs that don't map well to Search's actual service boundaries, so for example the client side rendering thing, that might be a good *alert* for search team (because plausibly we could accidentally break that, and also it's a real signal of degraded user experience even if it's not "our fault"), but would not be a good SLO.
Tue, Sep 29
All 3 hosts are in their desired pools; 1033 and 1034 are main, 1035 is internal-scholarly
Fri, Sep 25
Alright currently we have only one host in eqiad wdqs-internal-scholarly; we should bump that to 2, and leave the rest of the hosts to public-main which actually needs the compute:
Willy followed up on this, I'll drive this forward
Wed, Sep 23
Pool patch merged and working in my local devenv. I also tried refine_to_hive_hourly_test which was previously blocked on the pool issue, and it gets past that step now. I did hit a separate LocalExecutor vs KubernetesExecutor mismatch in the devenv, but that occurs after the pool creation
Merged the above patches, and tested out the fresh .deb in pontoon.
Tue, Sep 22
Balthazar pointed out that 5 min cadence might generate a lot of metadata churn, so I've bumped it to 24h per his suggestion
@atsuko Yeah this local API method is way cleaner, thanks for figuring that out!
Sat, Sep 19
@dcausse Sorry for taking so long on this. I took a look; the notebook uses revision time for undeletes, but Erik's fix already made those use the event's dt (the same existing behavior I overlooked in my earlier patch). Does that change your leaning?
Thu, Sep 17
Almost got the patches ready, using my previous wdqs work from back in the day as a reference.
Wed, Sep 16
This would be a nice-to-have, but there isn't a strong enough need to justify prioritizing this. I'll close this for now and can re-open in the future if I have bandwidth and decide this is worth it
Traceback:
File "/opt/airflow/dags/airflow_dags/wmf_airflow_common/sensors/rest_external_task.py", line 13, in <module>
from wmf_airflow_common.sensors.rest_helper import (
File "/opt/airflow/dags/airflow_dags/wmf_airflow_common/sensors/rest_helper.py", line 8, in <module>
from airflow_client.client.model.dag import DAG
ModuleNotFoundError: No module named 'airflow_client.client.model'Tried aqs_hourly_test yesterday, the shared sensor helpers still import airflow_client.client.model and airflow_client.client.model_utils
It works!
Tue, Sep 15
I've uploaded a patch that should remove 80+% of the noise in the original ticket desc screenshot.
Thu, Sep 10
Tested test_docker_image_fsspec in the Airflow 3.3.1 devenv. Both HDFS sensors and the DAG run succeeded
Wed, Sep 9
I've been trying to think of the least hacky way to do this. I think it's a 4 step chain. The above patch is step 1 of the chain:
Tue, Sep 8
I think we can sidestep the api issue entirely (at least wrt this pool issue) by moving pool creation into a setup step and keeping DAG parsing limited to just name validation
@dcausse I reverted the first fix before deployment, turns out using receipt time for merge ordering could let a delayed edit displace a delete of the same revision
Sep 3 2026
While testing analytics-test I found a DAG analytics_test/dags/refine/refine_to_hive_hourly_dag.py that fails to parse with RuntimeError: Direct database access via the ORM is not allowed in Airflow 3.0. The UI only shows the bottom of the traceback (create_session hitting the sandbox's blocked session), but the only thing in that file that touches the db at import time is pool(...)
Sep 2 2026
@dcausse I uploaded a reference patch, lmk if it looks sane
Following up here: the thanos swift object-expirer was enabled on July 15 in https://gerrit.wikimedia.org/r/1310971, and the subsequent account behavior shows that the WDQS backlog drained
I did stumble across one data-quality bug where lastBatchMedianLag on psi/omega occasionally reports multi-year lag values, so I'll get a separate ticket open for that.
The quick burn (2h/1d) on 2026-07-01 was real (T429844, T430843) and recovered on its own. The long-window (6h/3d) burn that wouldn't converge was an SLO bug: the search_sli_update_lag:bool recording rule had no aggregation, so every Flink restart left behind stale per-attempt series (task_attempt_num, job_id, pod, etc) that kept feeding old values into the burn-rate windows.
Aug 28 2026
This is done.
Now that this incident is resolved, it's worth circling back on the root cause. I enlisted the help of a trusty clanker to trace the Presto source code to better understand the issue.
Aug 26 2026
We did something very similar in https://wikimedia.slack.com/archives/C0B8DMX1ZGS/p1787758886054069 (not visible to community members unfortunately, thus why I'm schlepping relevant context here in the hope it's helpful in the future):
Aug 24 2026
Spot-checked some charts; LGTM following the rolling-restart. I'll leave to DE to move to Done and set Resolved if things look good on their end now
Spun up airflow-devenv like so: airflow-devenv create --branch main_airflow_3.3 --extra-values values-airflow3.yaml -d analytics_test
Aug 21 2026
Met with Atsuko to get the rundown; I'll be handling the DPE SRE side of this
Puppet patch merged; the deployment-charts patch can be rolled out tomorrow, at which point I'll be able to close this out.
Aug 20 2026
Patches rolled out; this is done
Aug 19 2026
Can't find any more dangling references, this is done
Aug 18 2026
PoC is working end-to-end in pontoon. Working on documentation for spin-up instructions, but in meantime the most important patchset to review is this one adding the basic required functionality to the kafka-configurator tool:
Aug 13 2026
@VRiley-WMF We discussed this internally, you're free to proceed whenever. These hosts aren't lvs-backed so no depool concerns there, and the cluster should weather the single node loss without issue
an-worker[1178,1142,1219] are done (see the under-replicated block graph). That leaves two journal-nodes left:
- an-worker1151 still needs to be done and will move its VLAN
- an-worker1213 is blocked on missing disks, see T434494#12209021
Aug 12 2026
Aug 8 2026
Deployed 0.3.165 to prod 2026-08-07 evening
Jul 27 2026
Okay, I think I figured out what's going on here.
Jul 25 2026
Jul 23 2026
Jul 20 2026
Ah, we're missing the preseed entry. Working on patch
Back to working on getting wdqs1023 up via a fresh reimage with --new flag. Seeing this currently:
Okay killed it, and invoked with proper arg. (Ran from Brian's tmux just because it was a quick correction on an in-flight cookbook; will run any net-new stuff from my user)
I don't see any indication it's the patch; wdqs1023 is ssh unreachable so that would be the source of the existing failures. Separately I see https://sal.toolforge.org/log/cswOgZ8BffdvpiTrt6hO being ran with the wrong arg which is gonna transfer the full journal rather than the wikidata_main journal (or more accurately, it will get the right journal file but have its mutation topics set to that of the full graph's which will leave the data in an unknown state)
Jul 17 2026
wdq1027 and wdqs1025 are done (ignore the failed transfer at the end, fat-finger) and I repooled dnsdisc for wdqs-scholarly-internal-eqiad (which has only 1 host thus required dnsdisc depool for reimage)
Jul 16 2026
Jul 15 2026
Carrying context over from slack so it doesn't get lost to time:
Jul 14 2026
Ah, the druid_analytics point is good context, I wasn't aware of that.
Jul 9 2026
We've got the third broker up now that some old instances have been cleaned up, so we're all set to start on the fun part (actually figuring out how to make config management work)
