-
Notifications
You must be signed in to change notification settings - Fork 14
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
Install RabbitMQ from conda on arm64 #482
base: awb
Are you sure you want to change the base?
Conversation
@@ -6,11 +6,6 @@ set -x | |||
# Environment. | |||
export SHELL=/bin/bash | |||
|
|||
# Fix https://github.com/aiidalab/aiidalab-docker-stack/issues/225 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This issue has been fixed a long time ago and should not be relevant in the new docker stack.
90fa979
to
54ad202
Compare
@mikibonacci could you please test the full-stack image from this PR on your Mac Arm machine? I am specifically interested to see if rabbitmq works correctly, so if you could install the QeApp and run some quantum espresso calculations that would be great. Thank you! |
Hi @danielhollas ! Thank you for this PR. Not sure why, but I also tried rabbitmq-server==3.13.4 and the issue is still there. I will check more deeply, but it seems that when I use the notebook the memory usage increases from ~500 MB to ~700 MB (instead, with the old image, the usage remains constant at ~500 MB). It is not much, but maybe is sufficient to let the kernel die. This is a screenshot of the stats of the container with the new image: Instead, the container with the old image show this stats: |
@mikibonacci thank you very much for testing and debugging! Very strange, rabbitmq version should not be influencing the notebook in any way. So to understand, the AiiDAlab home page loads, but when you open a second page (app store) the kernel crashes? I'll test locally as well. 8Gb should be plenty. Can I ask how do you launch the container? It's possible that Docker ion Mac by default reduces available memory in the container? |
Exactly, the container runs well as soon as I only open the home page, then if I open the app store I have the issue. I launched the container from the docker desktop interface, but also manually (not with aiidalab-launch), and for both the cases (new and old image). After running the command So maybe is not even a rabbitmq problem. I am not sure that Docker on Mac will reduces memory by default: I increased from 4 to 6 GB the memory per container - 8 is the total memory of my laptop - but nothing changed for the kernel. |
I can reproduce this on my computer, so this is not ARM specific, and probably comes from the new version of RabbitMQ. When I run |
Here's the error I see when running
Article about RabbitMQ feature flags: |
Looks like there might be multiple issues:
|
I have filled a bug report about the appstore crashing: aiidalab/aiidalab#442 This issue is also present on @mikibonacci I've rebased this PR and now the AppStore should not be crashing. But in any case, you can also install QEApp via command line with |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @danielhollas , I tested for relax + band structure calculation and everything was fine. For me it can be merged. Thanks!
@@ -7,13 +7,13 @@ | |||
"default": "15" | |||
}, | |||
"RMQ_VERSION": { | |||
"default": "3.9.13" | |||
"default": "3.13.5" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @danielhollas, you mentioned once you want to bring this up to aiida team, I was on holiday that week. @superstar54 told me you were there at the meeting and mentioned this. Is there going to be some tests add for the different version of RMQ?
RUN mamba create -p /opt/conda/envs/aiida-core-services --yes \ | ||
postgresql=${PGSQL_VERSION} \ | ||
rabbitmq-server=${RMQ_VERSION} && \ | ||
mamba clean --all -f -y && \ | ||
fix-permissions "${CONDA_DIR}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks all good, I don't have too much to test. Since it only affect arm64, I'll trust @mikibonacci's tests.
Thank you for testing @mikibonacci. Unfortunately, this cannot be merged yet, since it seems that when updating the image in an existing deployment that used the older RMQ version, the RMQ server fails to start, see my previous message with a link about rmq upgrades. We need to figure out how to upgrade safely first. |
For the update, if we can assure daemon is off is that safe to delete old RMQ configs in home entirely and start from newly installed one? |
Yeah, that was my thought as well, but I am not sure what will happen if for example user had some calculations running, and then turned off the container. If we then delete RMQ config, can this lose some messages? What would be the effect of that? I don't understand the details well enough, maybe something to be brought up at aiida-core meeting, maybe Seb would have a better idea. |
e1002ef
to
ac2362a
Compare
After a fair amount of work, we have finally arrived: rabbitmq arm64 build is now available on conda-forge! This let's us simplify the build considerably.
EDIT: Staged on top of #483, we should deploy these breaking changes together.