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

Bump qhub-dask version to 0.4.3 #1341

Merged
merged 4 commits into from
Jun 30, 2022
Merged

Conversation

peytondmurray
Copy link
Contributor

@peytondmurray peytondmurray commented Jun 22, 2022

Closes #1296

Changes introduced in this PR:

  • Bumped qhub-dask to version 0.4.3, which includes distributed==2022.04.2 and dask-gateway==2022.4.0

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds a feature)
  • Breaking change (fix or feature that would cause existing features to not work as expected)
  • Documentation Update
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Build related changes
  • Other (please describe): Enhancement

Testing

Requires testing

  • Yes
  • No

In case you checked yes, did you write tests?

  • Yes
  • No

Github workflows for testing new versions of qhub-dask before they get released to conda-forge will be addressing in #1339. Until then, testing was carried out on an existing qhub deployment, see the discussion at conda-forge/qhub-dask-feedstock#14 for more information.

Documentation

Does your contribution include breaking changes or deprecations?
If so have you updated the documentation?

  • Yes, docstrings
  • Yes, main documentation
  • Yes, deprecation notices

@peytondmurray peytondmurray marked this pull request as ready for review June 22, 2022 19:53
@viniciusdc
Copy link
Contributor

viniciusdc commented Jun 22, 2022

OK. Some steps here:

  • We need to wait until the new version of qhub-dask is available for downloading (its already on conda, but CF needs some time 1~3h to update the indexes). Until there, the envs will install the previous version
  • Once that's done, re-trigger the docker build in this above PR to create a new quansight/qhub-dask-worker:bump-qhub-dask-version-0.4.3 that should then content the new package version -- which might be the reason the Minikube tests are failing now:
 > [dask-worker  9/11] RUN /opt/scripts/install-conda-environment.sh /opt/dask-worker/environment.yaml 'false':
#30 25.90 
#30 25.90 Encountered problems while solving:
#30 25.90   - nothing provides requested qhub-dask 0.4.3
  • If the above passes and the image is downloadable, you can pass that in the qhub-config.yaml fo the deployment you want to update (Quansight/Quansight-beta):
profiles:
  dask_worker:
    "Small Worker":
      worker_cores_limit: 1
      worker_cores: 1
      worker_memory_limit: 1G
      worker_memory: 1G
      image: "quansight/qhub-dask-worker:bump..."

you can create a copy of the above profile like "dask-worker-updated" if you don't want to affect the global environment;

@peytondmurray peytondmurray force-pushed the bump-qhub-dask-version-0.4.3 branch from 5ef4270 to f7b31d8 Compare June 22, 2022 21:09
@iameskild iameskild added this to the Release v0.4.3 milestone Jun 23, 2022
@peytondmurray
Copy link
Contributor Author

Merging is delayed because qhub-dask 0.4.3 must either choose to

  1. Drop support for Python 3.7, allowing us to use distributed==2022.4.2 and dask-gateway==2022.4.0, or
  2. Keep support for Python 3.7, and be restricted to distributed==2022.2.0 and dask-gateway==0.9.0

See conda-forge/qhub-dask-feedstock#15

@trallard
Copy link
Member

Action plan - drop 3.7 -> push to QHub beta and see how that works out

Copy link
Contributor

@viniciusdc viniciusdc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've tested this, and everything seems to be working -- will check again on Monday to be sure.

@viniciusdc
Copy link
Contributor

viniciusdc commented Jun 28, 2022

/home/conda/filesystem/hash-dask/lib/python3.9/site-packages/distributed/client.py:1288:
 VersionMismatchWarning: Mismatched versions found
+-------------+-----------+-----------+---------+
| Package     | client    | scheduler | workers |
+-------------+-----------+-----------+---------+
| blosc       | MISSING   | None      | None    |
| dask        | 2022.04.2 | 2021.07.2 | None    |
| distributed | 2022.4.2  | 2021.07.2 | None    |
| lz4         | 4.0.0     | None      | None    |
+-------------+-----------+-----------+---------+
  warnings.warn(version_module.VersionMismatchWarning(msg[0]["warning"]))

It seems that the current scheduler is still using an outdated version, @costrouc how do we pass over the `cluster-image var to the gateway deployments? (I was able to find for worker/gateway, but not sure about the above), is it in here:

c.KubeClusterConfig.image = (
    f"{config['cluster-image']['name']}:{config['cluster-image']['tag']}"

Also, I found config for dask that we can use as well, is this worth it?

  # backend nested configuration relates to the scheduler and worker resources
  # created for DaskCluster k8s resources by the controller.
  backend:
    # The image to use for both schedulers and workers.
    image:
      name: ghcr.io/dask/dask-gateway
      tag: "set-by-chartpress"
      pullPolicy: IfNotPresent

@trallard trallard added area: integration/Dask Issues related to Dask on QHub area: dependencies 📦 All things dependencies status: in progress 🏗 This task is currently being worked on type: maintenance 🛠 Day-to-day maintenance tasks labels Jun 30, 2022
@trallard
Copy link
Member

@costrouc can you please follow up on this issue?

@viniciusdc
Copy link
Contributor

viniciusdc commented Jun 30, 2022

Oh, silly me! I was using the wrong environment for testing. Thanks, @costrouc and @peytondmurray, all seem okay now 😄

Just to keep a record of the test here:
image

the version outputs:

client = cluster.get_client()
client.get_versions()

{'scheduler': {'host': {'python': '3.9.13.final.0',
   'python-bits': 64,
   'OS': 'Linux',
   'OS-release': '5.10.90+',
   'machine': 'x86_64',
   'processor': 'x86_64',
   'byteorder': 'little',
   'LC_ALL': 'None',
   'LANG': 'None'},
  'packages': {'python': '3.9.13.final.0',
   'dask': '2022.04.2',
   'distributed': '2022.4.2',
   'msgpack': '1.0.4',
   'cloudpickle': '2.1.0',
   'tornado': '6.1',
   'toolz': '0.11.2',
   'numpy': '1.23.0',
   'pandas': '1.4.3',
   'lz4': '4.0.0'}},
 'workers': {'tls://10.48.1.24:40695': {'host': {'python': '3.9.13.final.0',
    'python-bits': 64,
    'OS': 'Linux',
    'OS-release': '5.10.90+',
    'machine': 'x86_64',
    'processor': 'x86_64',
    'byteorder': 'little',
    'LC_ALL': 'None',
    'LANG': 'None'},
   'packages': {'python': '3.9.13.final.0',
    'dask': '2022.04.2',
    'distributed': '2022.4.2',
    'msgpack': '1.0.4',
    'cloudpickle': '2.1.0',
    'tornado': '6.1',
    'toolz': '0.11.2',
    'numpy': '1.23.0',
    'pandas': '1.4.3',
    'lz4': '4.0.0'}}},
 'client': {'host': {'python': '3.9.13.final.0',
   'python-bits': 64,
   'OS': 'Linux',
   'OS-release': '5.10.90+',
   'machine': 'x86_64',
   'processor': 'x86_64',
   'byteorder': 'little',
   'LC_ALL': 'C.UTF-8',
   'LANG': 'C.UTF-8'},
  'packages': {'python': '3.9.13.final.0',
   'dask': '2022.04.2',
   'distributed': '2022.4.2',
   'msgpack': '1.0.4',
   'cloudpickle': '2.1.0',
   'tornado': '6.1',
   'toolz': '0.11.2',
   'numpy': '1.23.0',
   'pandas': '1.4.3',
   'lz4': '4.0.0'}}}

Copy link
Contributor

@viniciusdc viniciusdc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, next is updating the docs and closing the PR open for qhub-dask to undo the latest changes.

@peytondmurray peytondmurray changed the title [WIP] Bump qhub-dask version to 0.4.3 Bump qhub-dask version to 0.4.3 Jun 30, 2022
@peytondmurray peytondmurray merged commit 444ef7c into main Jun 30, 2022
@peytondmurray peytondmurray deleted the bump-qhub-dask-version-0.4.3 branch June 30, 2022 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: dependencies 📦 All things dependencies area: integration/Dask Issues related to Dask on QHub status: in progress 🏗 This task is currently being worked on type: maintenance 🛠 Day-to-day maintenance tasks
Projects
Development

Successfully merging this pull request may close these issues.

[ENH] - Upgrade Dask-Gateway to v2022.04
4 participants