Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kafka: remove old versions #105781

Merged
merged 1 commit into from Dec 22, 2020
Merged

Conversation

phile314
Copy link
Contributor

@phile314 phile314 commented Dec 3, 2020

Motivation for this change

Remove ancient kafka versions.

Things done

Removed old versions. I tried to verify that the nixos tests still succeed, but for me they fail both on this branch and current master.

  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@SuperSandro2000
Copy link
Member

What is the usually procedure for such things? Wouldn't this cause eval errors if somone is still using one of these versions? Maybe we should add aliases which throws an error instead? Not sure.

@phile314
Copy link
Contributor Author

phile314 commented Dec 3, 2020

Yes, this will definitely cause eval errors if someone is using those. However, nobody should be running such ancient software so I consider this a good thing.

Having aliases is probably quite dangerous because one needs to perform some manual steps when upgrading.

@RaghavSood
Copy link
Member

Result of nixpkgs-review pr 105781 run on x86_64-linux 1

@SuperSandro2000
Copy link
Member

Having aliases is probably quite dangerous because one needs to perform some manual steps when upgrading.

I would still prefer if we add aliases for those and warn about the upgrade steps.

@phile314
Copy link
Contributor Author

phile314 commented Dec 12, 2020

I am strongly against aliasing the old versions. I do think aliasing would make it very easy to shoot oneself in the foot. Let's say someone updates to a newer NixOS version but doesn't read the release notes too carefully. If he deploys the new version, this will silently upgrade Kafka and very likely cause downtime to the Kafka cluster. As Kafka is often used as highly-available message broker and as essential part of distributed systems, this needs to be avoided at all costs.

I see two feasible options:

  1. Remove the old versions without aliases.

  2. Keep the old versions.

If we go with 2, we probably should mark all old versions as insecure as I highly doubt that Apache provides security updates for e.g. version 0.9 (released 2015).

I think there is also precedent for having to manually update the package name, specifically postgresql. They are also somewhat similar as both Postgresql and Kafka usually require manual steps when performing upgrades between major versions and that they both often are critical services.

@SuperSandro2000
Copy link
Member

I mean adding aliases that throw an error that we removed the package rather than redirecting to a later version. This is nicer as it tells the end user what changed rather than failing to evaluate their config.

@phile314
Copy link
Contributor Author

Ah sorry, I completely misunderstood 😄

I added a simple error message about having to upgrade.

@SuperSandro2000
Copy link
Member

@phile314 I think the eval error is fixed in master. Could you rebase? Otherwise the PR looks good to me.

@SuperSandro2000
Copy link
Member

@ofborg eval

@SuperSandro2000 SuperSandro2000 merged commit ca8343d into NixOS:master Dec 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants