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

glusterfs: 3.10.2 -> 3.12.0 #29062

Closed
wants to merge 6 commits into from
Closed

glusterfs: 3.10.2 -> 3.12.0 #29062

wants to merge 6 commits into from

Conversation

nh2
Copy link
Contributor

@nh2 nh2 commented Sep 6, 2017

Glusterfs 3.12 is the latest stable release.

Changes to the nix files:

  • The patch glusterfs-fix-unsubstituted-autoconf-macros was deleted
    because the issue was fixed upstream:
    https://bugzilla.redhat.com/show_bug.cgi?id=1450588
  • The glusterd-ganesha.c part of glusterfs-use-PATH-instead-of-hardcodes
    was detleted because glusterd-ganesha.c was removed upstream
    without replacement that has the relevant hardcoded paths.
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • Linux
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

I have also tested this upgrade with my own glusterfs-on-nixos cluster setup, an open-source equivalent of which is available at https://github.com/nh2/nixops-gluster-example/.
Normal 3-cluster replicated operation and geo-replication seem to work as expected and as in 3.10.2.

CC @bachp @7c6f434c @fduraffourg @Mic92 @FRidh @wkennington @proger (other committers to glusterfs on nix)

@nh2
Copy link
Contributor Author

nh2 commented Sep 6, 2017

I would also like to have this change in 17.09, please let me know if I need to open a separate PR for that.

@nh2
Copy link
Contributor Author

nh2 commented Sep 8, 2017

Please don't merge this before #29071.

Merge #29071 first.

Because the paches in there will have to be updated for gluster 3.12.

I'd appreciate a quick merge of #29071 in order to give me some more time to get 3.12 in for NixOS 17.09 :)

@joachifm
Copy link
Contributor

@nh2 can this be merged now?

@nh2
Copy link
Contributor Author

nh2 commented Sep 21, 2017

@joachifm I need to rebase (I think some patches will have conflicts) and re-test first, but I hope to manage it before end of the month for the 17.09 release.

…get.

This introduces dependency cycles.

A network file system to be running is not required for a network
connection to be available.

NixOS@19759cf#commitcomment-22044519
Prevents glustereventsd failing at startup in case it starts
before glusterd has started (whose `preStart` would also
create the needed directory).
This is a better default for NixOS because it ensures that config
changes happen fully when NixOS users expect it.
Changes:

* The patch `glusterfs-fix-unsubstituted-autoconf-macros` was deleted
  because the issue was fixed upstream:
  https://bugzilla.redhat.com/show_bug.cgi?id=1450588
* The `glusterd-ganesha.c` part of `glusterfs-use-PATH-instead-of-hardcodes`
  was detleted because `glusterd-ganesha.c` was removed upstream
  without replacement that has the relevant hardcoded paths.
@nh2
Copy link
Contributor Author

nh2 commented Sep 27, 2017

Quick summary: Please merge #29868 first and afterwards merge this.


I have rebased this PR on top of #29868.

This PR should wait until #29868 is merged (so that the number of commits is reduced back to 1).

I have tested the 3.10.2 -> 3.12.1 upgrade with my example nixops deployment at https://github.com/nh2/nixops-gluster-example that anybody should be able to reproduce. Specifically, when cherry-picking the commit in this PR on top of the nixpkgs I link in the README, I could perform the upgrade.

The results suggested that a simple nixops deploy upgraded the gluster cluster successfully.

The only thing that didn't advance automatically to the new version was the geo-replication session.
This is because gluster unfortunately hardcodes the paths to various binaries into a config file at the time the session is created, namely into /var/lib/glusterd/geo-replication/NAME/gsyncd.conf. I upgraded the georep session with

nixops ssh-for-each -d gluster-test "perl -p -i -e 's/758q3xl9bfyg20x39nc6zrgnh52q1k75-glusterfs-3.10.2/wprv5aypnrz1nsc1r1ppr4g0bmhc0bgb-glusterfs-3.12.1/g' /var/lib/glusterd/geo-replication/distfs_10.0.1.1_distfs-georep/gsyncd.conf"

and this is also how I would recommend other NixOS glusterfs-geo-replication users to upgrade their georep sessions (though I doubt that there are any apart from me currently).

@joachifm
Copy link
Contributor

This PR didn't apply cleanly so I just dropped everything except the last commit, assuming the changes in the other PR take precedence.

@nh2
Copy link
Contributor Author

nh2 commented Sep 30, 2017

@joachifm Yes, thas was correct, thanks.

All changes before the last commit were already merged with #29868.

nh2 added a commit to nh2/nixpkgs that referenced this pull request Oct 3, 2017
Changes:

* The patch `glusterfs-fix-unsubstituted-autoconf-macros` was deleted
  because the issue was fixed upstream:
  https://bugzilla.redhat.com/show_bug.cgi?id=1450588
* The `glusterd-ganesha.c` part of `glusterfs-use-PATH-instead-of-hardcodes`
  was detleted because `glusterd-ganesha.c` was removed upstream
  without replacement that has the relevant hardcoded paths.

Closes NixOS#29062

(cherry picked from commit 8f40840)
fpletz pushed a commit that referenced this pull request Oct 14, 2017
Changes:

* The patch `glusterfs-fix-unsubstituted-autoconf-macros` was deleted
  because the issue was fixed upstream:
  https://bugzilla.redhat.com/show_bug.cgi?id=1450588
* The `glusterd-ganesha.c` part of `glusterfs-use-PATH-instead-of-hardcodes`
  was detleted because `glusterd-ganesha.c` was removed upstream
  without replacement that has the relevant hardcoded paths.

Closes #29062

(cherry picked from commit 8f40840)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants