# 2023 notes, pulp_rpm team mtg ## 2023 ### Upcoming ### December 7, 2023 Discussion: * https://bugzilla.redhat.com/show_bug.cgi?id=2253381 * advisory-merge strikes again * request added to BZ for customer feedback * UpdateCollection (name, updaterecord) is where we're c olliding * name-collisions are **supposed to be** handled by noticing and naming "name_N" for conflicts - but this is clearly not * https://github.com/pulp/pulp_rpm/issues/2909 Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged bugs: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-needed CI status check * https://github.com/pulp/pulp_rpm/actions/workflows/nightly.yml?query=workflow%3A%22Rpm+Nightly+CI%2FCD%22 ### November 30 * end-of-year coming up * ipanova, ggainey, dalley out from 15-DEC * What can Pedro do? * RHCSA course? * type-annotations? * lots of work, might not be worth the immediate reward * native-obs-signing-support? [2986](https://github.com/pulp/pulp_rpm/issues/2986) * mdellweg is a good source of info * start w/ research to understand OBS-signing * metadata-signing using it, first * signing-RPMs is a whole diff "can of worms" (more a 2024 design discussion) * ggainey to pick up https://github.com/pulp/pulp_rpm/issues/2909 from ipanova * [2246247](https://bugzilla.redhat.com/show_bug.cgi?id=2246247) and [1993917](https://bugzilla.redhat.com/show_bug.cgi?id=1993917) are still priorities * dalley on 2246247 currently * ggainey needs to get his butt in gear on 1993917 * talk to paji about test-setup ### October 26 Discussion: * next item on the list for the COPR: prune repo * https://github.com/pulp/pulp_rpm/issues/2909#issuecomment-1781196858 * q1: compatibility with retain_package_versions. Retain package_version will be called after the task is complete as the last step in the finalize_new_version. So if it is set and prune is ran, the prune will be affected and potentially more stuff with be removed because retain_packages_version. We can accept this as is, or in serializer of the prune task add logic to be imcompatible with retain_package_versions and raise validation error. * q2: pruning task needs to also remove the rpm itself to freeup disk space. todo so repo needs to have already configured retain_version to 1, but the hook is anyway called after the task will finish so the task won't be able to remove the packages because there will still be previous repo versions containing them. Alternatively we can teach the task as the first thing to look at the retain_repo_version_count and remove versions right away.There is an option for the prune task to just "reclaim the artifact" but what are consequences for the uploaded content? it will be unrecoverable because of absense of RemoteArtifact. * discussion * do we refuse to do this if retain-repo-versions > 1? * what if the prune-repo task, does its job, creates a new repo-version, retain-repo-version results in old-version being deleted, and the last thing it does is dispatch(orphan-cleanup, some-amt-of-time), and let that get picked up "whenever it can happen" * if retain-repo-version > 1 (or not set?), what happens? * check pre-orphan-cleanup-dispatch, decide what to do based on current setting value * orphan-cleanup accepts content-href-list - we could explicitly call it with specific content removed from a repo * we don't want to dispatch one-orphan-cleanup-per-repo (do we?) * how do we lock repos being cleaned up (specifically, if you decided to do it to all repos) * subtasks? task-groups? task-batches? main-task that decides what needs to happen and then dispatches repo-modify-tasks? * we def need to honor repo-locking * what if prune-job doesn't allow "do all repos" * prob doesn't work for COPR's specific workflow * is this just the "issue orphan-cleanup on a batch of repos at a time"? probably so * onboarding discussion * first week * NHO * laptop * logins * permissions * "Where are the docs?" * specific links to start with * architecture, Pulp-101 blog post * any good starts on youtube? * matrix channels, slack, email lists * meetings, team norms, github process * oci-env/pulp-cli set up and one file-repo w/ one piece of content created * make sure we have plentiful contact w/ ipanova/ggainey as well first week * Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged bugs: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-needed CI status check * https://github.com/pulp/pulp_rpm/actions/workflows/nightly.yml?query=workflow%3A%22Rpm+Nightly+CI%2FCD%22 ### October 19 * onboarding discussion * Issues for Pedro? * https://github.com/pulp/pulp_rpm/issues/3162 * https://github.com/pulp/pulp_rpm/issues/3285 * look at untriaged issues * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-Needed ### October 12 * continued import/export discussion * Concerned User is already pretty happy w/ current set of fixes/per-fixes they have * we have more under evaluation * memory-improvement isn't as good as we were thinking * mem-leaks in debug-instrumentation was giving false results * instrumentation affects both mem-usage *and* execution-time - make sure one is comparing apples to apples * packageresource is 30% of our import-time * contentartifactresource improved from ~800s to ~200s * half of the time is just dealing w/ json reads * skip_diff gave us like 6% improvement * what if import-id for package is just pkgid? * prob not going to give much back - experiment only if we're out of other things to pursue * RHEL8 export test results - 30 min for 107GB. memuse in 4.5G * need to recheck for which patches were added * doesn't include CRC csum, not chunked * discussion RE https://discourse.pulpproject.org/t/invalid-errata-metadata-sum-type-in-rhel7-repo/1007/4 * https://github.com/pulp/pulp_rpm/commit/5779d04f522d1208398c77bd92ed07aef5a9f75e was "vaguely similar" * discussion RE https://github.com/pulp/pulp_rpm/issues/3240 * https://github.com/pulp/pulp_rpm/blob/748b3dde057bfc90623e186842b14538a0162049/pulp_rpm/app/tasks/synchronizing.py#L283 ? ### August 31 * pick up a COPR feature-gap? or modulemd issue first? * "multiple same NEVRA in repo at same time" * what does that actually *mean* in COPR's case? * we prob need to clarify before we do anything here * Talk to COPR about their module building feature * added to agenda * "modulemd problem" discussion * assuming we add checksum to UQ for modulemd * what happens when a given upstream NSVCA makes a change? * which version wins? where is that resolved? does sync-mode matter? * RE generating a hash - what do we create the hash of? * normalize/minimize things taken into account? * just hash the snippet "as is", and deal with "but what about changes that 'dont matter'" * maybe go with "minimal architecturally-sound change" - at the very least, start with that as a POC ### August 24 - Oracle Linux issue w/ modules - https://bugzilla.redhat.com/show_bug.cgi?id=2232500 - dalley will open an issue w/ OL9 to see if they will fix their modulemds - https://github.com/oracle/oracle-linux/issues - https://github.com/pulp/pulp_rpm/pull/3235 - removing data-fixup-stage - diff modulemds should *NEVER* have identical NSVCAs, dammit ### August 3 * ipanova is working on performance-improvement-POC for publish-process * in support of some massive COPR repos ### July 27 * State of COPR * finally back to investigating * mikedep fixed a restart-bug for us * some new numbers available * 90 min to repub F38-pypi rebuild * rubygem-repo-publish task is "stuck" and having Fun trying to cancel * worker has gone missing? * what happens if a task is in cancelling but has no worker? * no log-notice for "worker has gone missing" * Fun With Debugging continues * massive-pg-query marked as still active * Lubos findings * https://github.com/pulp/pulpcore/issues/3969#issuecomment-1652531793 * next steps: * ipanova to share the specific Insanely Long SQl Query, repo-numbers * then start planning where/how to start addressing the issues * discussion arouund reclaim-space BZ * RHEL7/40Gb is kind of stressful on a dev-env * investigation continues ### May 18 * discussion about knowledge-sharing w/ Support Gang * The Ask: pulp db-model Gory Details * content/publication/distribution process * ping pmoravec directly w/ questions * do we have a recorded talk about this? let's look * django-extension has a model-dump/image process * https://github.com/pulp/pulpcore/issues/3212#issuecomment-1255356453 * let's dig up existing youtube videos on rpm-arch as well * How can we enable Support to write tools to answer the questions they have * rough timeline for a session? * presentation/Q&A/demo(?) * pull someting together "soon" (early June?) * let's find slide-deck from initial enablement-session, long long ago * merge domains? * decision: wait for CLI fixes to release * working on related pulp-cli rpm tests * https://github.com/pulp/pulp-cli/issues/692 Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged bugs: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-needed CI status check * https://github.com/pulp/pulp_rpm/actions/workflows/nightly.yml?query=workflow%3A%22Rpm+Nightly+CI%2FCD%22 ### May 4, 2023 Pulp 3: Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged issues: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-Needed CI status check * https://github.com/pulp/pulp_rpm/actions?query=workflow%3A%22Pulp+Nightly+CI%2FCD%22 * discussion RE some RFE/fix requests * https://github.com/pulp/pulp_rpm/issues/3135 * https://github.com/pulp/pulp_rpm/issues/3134 * content vs content__in problem * AI: [ggainey] needs an issue (pulpcore?) * asked Paul to open * can always be moved later * sort-RPMs-by-real-verscmp * maybe address by chging default-sort? * maybe add a "synthetic" field "evr" as something-one-can-sort-on? * either way - this needs an issue/RFE to track * AI: [ggainey] respond to email * done * release coming today (not with domains) * discussion around domains-work * prob worth getting it out as a last "compat w/ 3.24" version, then releasing a core/3.25+ release * releasing rpm/3.20 today/tomorrow ### April 20, 2023 * discussion around what's up in COPR world and ways to get an explain-plan for our insane repo * How much performance degredation is acceptable? * let's maybe take the following approach: * "How long does it take to publish a 'reasonably large' repo (e.g., Fedora37/Updates?), and is it 'ok' for COPR?" * Get the publish-SQL and get an EXPLAIN plan and see if there's some db-indexing-magic that we can do to make it more performant * Start thinking about how we can do incremental-publish * Start thinking about incremental-publish-refinements * discussion about how domains-work is going * https://github.com/pulp/pulp_rpm/issues/3112 * let's get input from mcurlej on this ### March 30, 2023 * discussing COPR status * publishing a single Enormous Repo is non-performant * draft plans for RPMv6 * https://github.com/rpm-software-management/rpm/discussions/2015 * implications of dealing with new-RPM while running on old-OS-releases ### February 16, 2023 Pulp 3: * discussion around https://github.com/pulp/pulp_rpm/pull/2954 * discussion around COPR and planning the next few quarters * [late Q1/early Q2?] perf-test results * can we work w/ COPR folks in an advisory capacity? * prob mostly on rpm-team's side * [Q1] finish COPR use-case review and get issues opened and prioritized (where needed) * [Q2+]then, how do we get must-haves implemented given person-hour-constraints? * who would like to actually "do" the perf-testing * can we use this as an onboarding opportunity for folks not already working in pulp_rpm? * how fast is everyone willing/needing to move on this project? Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged bugs: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-needed CI status check * https://github.com/pulp/pulp_rpm/actions/workflows/nightly.yml?query=workflow%3A%22Rpm+Nightly+CI%2FCD%22 ### February 2, 2023 Pulp 3: * DNF team recap * Zstd support being added to createrepo_c, Pulp will need to support it * (we will get it for free on consumption) * will need to do some work to produce metadata using it * Compressed comps will hopefully be pushed back to 9.4 * Pulp PR ready to finish review/merge/backport * New errata field? https://issues.redhat.com/browse/CLOUDDST-13322 Open PRs: * https://github.com/pulp/pulp_rpm/pulls Un-triaged bugs: * https://github.com/pulp/pulp_rpm/issues?q=is%3Aissue+is%3Aopen+label%3ATriage-needed CI status check * https://github.com/pulp/pulp_rpm/actions/workflows/nightly.yml?query=workflow%3A%22Rpm+Nightly+CI%2FCD%22 ###### tags: `RPM`, `Minutes`