-
Notifications
You must be signed in to change notification settings - Fork 42
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
added flux adaptor v0.31.0 #395
base: develop
Are you sure you want to change the base?
Conversation
@bhatiaharsh -- Thanks for filing this PR; since you made a new file, I can't tell if anything is actually different in the adapter compared to |
okay. i just copied the file, since i thought you're grabbing the appropriate module out. i think the new file is not needed. when you get a chance, would you please add the minimal needed here? |
@bhatiaharsh -- does the adapter work when specifying One thing that I had been intending to do is to make the Flux adapters more version range focused, or to outright try and detect what version was in the environment. But that would have to be a future todo item. |
So, looking at the flux factory this range selection looks easy to implement on the dispatch side at least (though sounds like detecting flux version could be trouble?). Question there is are the existing versions amenable to that such that we could change to ranges bracketed by the existing adapters plus a >= 0.26, or do we need something more like exact versions for the old ones ( < 0.26 ) and use the ranges only going forward from 0.26? |
the the only reason i went in to make this change was that when maestro creates the submit script, it adds the wrong version (0.26), because that seems to be hardcoded in. if there was a way to pull out the correct version, then these adapters would be more generic. ideally, the factory would pick the correct adapter based on the flux version. |
The number at the top of the script is reflective of the backend adapter key that was used to generate and submit the script. That's so that there's a record of what was used for debug if something goes wrong. There would be something like that with the ranged versioning most likely since we'd want to be able to root cause issues on the right adapter. This conversation is giving me ideas on how to best handle this issue, but as Jeremy said the ideal would be to detect the version which means that Flux has to be in the environment with the right Python bindings. If I'm recalling correctly, @jwhite242 was running into some issues with that on LC machines (and that was the reason for going with a purely Spack installed version of Flux + getting latest functionality). |
Yeah, until this gets resolved (flux-framework/flux-core#2145) I think we do have to just continue building it fresh every time to ensure it's talking to the same python as maestro, or make a cli based version like with the other adapters if that ui is stable enough yet. Even with that though, that would be useful for provenance/debugging if we can get the actual version dumped into the generated files. |
it does look like something is broken. just documenting the log here until i figure out more detail. @FrankD412 will recognize this mummi logging.
|
@bhatiaharsh -- do you happen to know if the job you're requesting to cancel is the failed job? I seem to recall that we try and cancel it anyway because the workflow checks for a dropped file. If that's the case, then it's likely cancelling a job that's been marked as failed. |
@bhatiaharsh Just want to follow up on this -- was this resolved? |
The current version of maestro (1.1.9) does not work with flux 0.43.0 (running on corona). The following change is needed to the state method in FluxInterface_0260 to make it work: maestrowf/interfaces/script/_flux/flux0_26_0.py
|
Thanks for sorting that out. I'll start rolling that up into an updated version of the adapter and get a patch out in the next couple days. @Jmast: Do you need a release pushed up to pypi for this asap or do you just work on the develop branch and don't care much about that? |
We are working from released versions of maestro, so
It would be very helpful If you could roll this out ASAP to pypi.
Thanks,
-- Jeff
…On Thu, Oct 13, 2022 at 11:00 AM Jeremy White ***@***.***> wrote:
The current version of maestro (1.1.9) does not work with flux 0.43.0
(running on corona).
The following change is needed to the state method in FluxInterface_0260
to make it work:
maestrowf/interfaces/script/_flux/flux0_26_0.py
@staticmethod
def state(state):
if state == "D":
return State.PENDING
elif state == "S":
return State.QUEUED
elif state == "R":
return State.RUNNING
elif state == "C":
return State.FINISHING
elif state == "CD":
return State.FINISHED
elif state == "F":
return State.FAILED
elif state == "CA":
return State.CANCELLED
elif state == "TO":
return State.TIMEDOUT
else:
LOGGER.error(f"Unhandled state: {state}")
return State.UNKNOWN
Thanks for sorting that out. I'll start rolling that up into an updated
version of the adapter and get a patch out in the next couple days. @Jmast
<https://github.com/Jmast>: Do you need a release pushed up to pypi for
this asap or do you just work on the develop branch and don't care much
about that?
—
Reply to this email directly, view it on GitHub
<#395 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AATXDIAIMGTRYRWR2JXCH53WDA53HANCNFSM5WDBWJ7A>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
simply followed the existing style and strategy to expand to a new version. are we going to need a new file for each version?