Hi all - I am using the latest version of a self-h...
# prefect-ui
t
Hi all - I am using the latest version of a self-hosted prefect web server, and I have noticed that when trying to click a task run from the
Task Run
tab in a
Flow Run
... Nothing happens. Normally it would task me to a UI page of a specific task run, and as it runs the logs specific to that task are shown. At the moment it is just sitting there, doing nothing. I have tried across a couple of different browsers, but the same result. I am not seeing anything too obvious in the debugger panel either.
c
Hey Tim. Any errors in the devtools console? I’ll try and reproduce here in a bit
t
I must admit I am stumbling around a little with this side of the stack. I will check the console now.
Yes, When I click a task run I get these messages.
Copy code
TypeError: right-hand side of 'in' should be an object, got undefined
    Uoe <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    sL <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    q <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
index-HS7BEnlJ.js:27:21681
Copy code
TypeError: right-hand side of 'in' should be an object, got undefined
    Uoe <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    sL <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    q <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
index-HS7BEnlJ.js:27:21681
Uncaught (in promise) TypeError: i.transform is null
    addChild <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:659>
    g <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1309>
    W <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1309>
    y <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1309>
    Z <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1309>
8 index-HS7BEnlJ.js:659:27742
The second error
i.transform is null
seems to be happening as I switch tabs when in a flow run. The first error
right-hand side of 'in'
seems to be happening whenever I click on a running task run that I want to see the specifics of
I am about to head off for the evening. I will check in tomorrow if there are any questions / concerns from your side.
c
thanks for that info, I'll try and reproduce. Is it specifically running tasks? Or all tasks
So fare I've been unable to reproduce this. And scanning recent changes didn't reveal anything suspicious. If you can provide a minimal reproduction that would be great
t
Ir seems to be for all tasks regardless of their state. Odd. I had someone else on a separate machine access the UI and they reported the same issue.
FWIW I set the server up in a completely new conda environment running python 3.12. I only point that out as I don't know what dependencies are being installed
Trying to play with this a little more. When I right click -> copy link of a task run in a flow (a completed one at that) I get a link like this: http://jones.it.abcabc.com:4200/task-runs/task-run/dabf6a7e-dc6e-4d60-8563-08ad8d7d018c Whenever I reload I get the following error in the firefox console:
Copy code
This page is in Quirks Mode. Page layout may be impacted. For Standards Mode use "<!DOCTYPE html>". index-HS7BEnlJ.js
TypeError: h is undefined
    sL <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    promise callback*sL/< <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    runWithContext <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:19>
    D <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    Ae <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    promise callback*Qoe/Ae/< <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    Ae <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    q <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    promise callback*q <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    B <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    N <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    install <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:27>
    use <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:19>
    WXt <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1314>
    <anonymous> <http://jones.it.csiro.au:4200/assets/index-HS7BEnlJ.js:1314>
index-HS7BEnlJ.js:27:21681
And the UI remains in this state
c
@Tim Galvin we haven't been able to reproduce this. When you find an error in the devtools console, each line of the stack trace is a link to the source that errored. Can you click on the first link in the stacktrace and send me a screenshot of the offending code? Its going to be minified and odd looking. But it devtools should highlight the exact place the error happened. Also, you mentioned firefox. Have you tried any other browsers? Curious if that makes a difference.
t
Hi Craig - I can get that cut out to you shortly. I was in a radio quiet zone for one of our radio telescopes in Australia's outback! It means no internet on anything other than an ethernet cable. I am writing new pipeslines with Prefect for this instrument 🙂 I have tried this in chrome as well and I get the same issue. I am also seeing it on other systems
I believe this is it:
c
Interesting, looks like its erroring inside an npm dependency which is generally pretty stable. I wonder if you're being effected by this issue. Though you said you had a fresh install which doesn't make sense.
t
Any thoughts on perhaps testing this? I am unfamiliar with Java and npm type deployments. Is there a way to roll back to earlier versions of their packages through a different python / prefect installation? Indeed, I create a fresh conda environment running python3.12. The issue is becoming a little more critical for us here - if there is anything I can do to help gather information please let me know. I really appreciate the help!
c
@Tim Galvin there are two updates that will be included in todays release that I'm hoping will help here. 1. That ui upgrade PR I mentioned 2. Another PR that enables source maps by default. I tried again today to reproduce this with no luck. To attempt to reproduce I followed these steps 1. Created a new conda environment using python 3.12 2.
pip install -U prefect
to get the latest prefect (2.16.6) 3. Served the following flow
Copy code
@task
def my_task() -> None:
  pass

@flow
def my_flow() -> None:
  my_task()
  pass

if __name__ == "__main__":
    my_flow.serve(__file__)
4. Created a run of the flow via the ui 5. Navigated to that run in the ui 6. Navigated to the tasks tab 7. Clicked on the task 8. Was taken to the task page successfully. If you can provide a minimum test case that reproduces the issue you're seeing that would be helpful. Perhaps there is some slight difference in your setup compared to mine.
t
Thanks Craig - I wil follow these steps in the coming day or two to see if I can reproduce. Again, I really appreciate all the help. I do not like being someone that causes problems. Is it ok if I ping you outside of this thread?
c
Tim no problem at all. Sorry this isn’t working for you. Feel free to DM me 👍
t
Hi Criag -- I got it working by creating a new conda environment and installing python 3.11 as the base python instead of 3.12. Everything else is the same -- same launch script in the same directory
c
Interesting, I wouldn't expect anything python related to effect how the ui is built. But I'm glad you got it working! I'll keep an eye out for anyone having a similar issue and hopefully we can get to the root cause.
t
In all of this as well I also removed the prefect home folder. I wonder if something is in there...
👀 1