Open-EO / openeo-web-editor

An interactive and easy to use web-based editor for the OpenEO API.
https://editor.openeo.org
Apache License 2.0
12 stars 17 forks source link

Batch job overview issues #234

Closed soxofaan closed 2 years ago

soxofaan commented 2 years ago

A couple of batch job overview issues: Screenshot from 2022-02-01 12-28-01

First column (titled "batch job"): by default it has a value like #6C5F2C. After pressing the i button, it gets the real batch job title. At some point I think I've seen it resetting back to the #6C5F2C format (however I don't know how to reproduce this). Because I known the API, I know where this behavior comes from, but I think it is a bit weird.

The "last update" column is "n/a" by default, but I guess it can be filled in always (e.g. with the "submitted" date).

The date format is month/day/year (I'm not sure if this is because of my browser or something related), I think it would be good to ignore locale settings and just hard-code for the YYYY/MM/DD format everywhere/always.

The "delete" button is quite easy to hit accidentally, e.g. if you miss the "play" button and there is no confirmation step or undo.

m-mohr commented 2 years ago

First column (titled "batch job"): by default it has a value like #6C5F2C. [...] #6C5F2C is not the real id of the batch job, but apparently the last 6 characters. Mixing 2 version of ids is not ideal I think (e.g. for support)

Yeah, the original IDs are sometimes very long and distort the view. Some back-ends always have the same "beginning" thus we decided to go with the "end" part of the ID to have something you can at least somehow distinguish. I don't really have a better solution right now that lets me at least somewhat distinguish jobs in the overview. Any ideas?

After pressing the i button, it gets the real batch job title.

I'd recommend that a back-end implementation should return the title in the overview list for a better user experience. That would probably help identify the right jobs for all clients.

At some point I think I've seen it resetting back to the #6C5F2C format (however I don't know how to reproduce this).

Hmm... I think this might happen if one of the refresh calls fails or returns an incomplete list at some point or something else invalidates a "full job" object internally. A repro would probably help to find a better solution.

  • I assume that pressing the i button is a read-only operation, but it feels like I'm changing the title.

Yes, it's read-only, but it of course loads additional data. As said above, I think this should be improved on the back-end side and the title should always be part of the overview ist.

  • There is also the feature "Double-click to change the value", which is weird to do on the id of the batch job.

Yes, but I assume it's better than just deactivating if no title was given initially? Then it could be confusing that it works for some and not for others.

The "last update" column is "n/a" by default, but I guess it can be filled in always (e.g. with the "submitted" date).

What's the benefit of duplicating this information?

The date format is month/day/year (I'm not sure if this is because of my browser or something related), I think it would be good to ignore locale settings and just hard-code for the YYYY/MM/DD format everywhere/always.

It's based on the browser settings, yes. And I think that's better than choosing an arbitrary format as it's very much ambiguous. Your proposed format is not used and confusing in Germany for example. But the German format DD.MM.YYYY on the other hand is confusing for others. Some even use YYYY/DD/MM and some YYYY/MM/DD, which is the most confusing thing with dates if numbers are <= 12. So my best guess is to rely on what the user has configured, I think. Also, removing the time may also be undesirable.

The "delete" button is quite easy to hit accidentally, e.g. if you miss the "play" button and there is no confirmation step or undo.

Indeed, I should add a confirmation step for delete operations.

soxofaan commented 2 years ago

I don't really have a better solution right now that lets me at least somewhat distinguish jobs in the overview. Any ideas?

Because you use job id as fallback for title, I would give it a bit different styling: e.g. a bit grayed out, or in monospace font

You could also make it more explicit that you are shortening the id by putting a ..., e.g. #...6CF543, or even including the prefix: #D45C98...6CF523 (because that is a more logical choice: I just had a colleague that assumed it was prefix and didn't find the job he was looking for)

At some point I think I've seen it resetting back to the #6C5F2C format (however I don't know how to reproduce this).

I had it a couple of times again, and I think it was after I switched tabs and a couple of job metadata updated happened in between.

Yes, but I assume it's better than just deactivating if no title was given initially? Then it could be confusing that it works for some and not for others.

I wonder how useful the "Double-click to change the value" feature is in the first place in that table view, because you don't see a lot of information about the job (process graph, spatial/temporal extents, ...) that could help with creating a better title. I think it makes sense in the full overview after pressing the "i" button, or a dedicated edit popup, but it feels overkill on the batch job table.

The "last update" column is "n/a" by default, but I guess it can be filled in always (e.g. with the "submitted" date). What's the benefit of duplicating this information?

Well, using "submitted" date was actually bad suggestion. The thing is that the "n/a" (not available) looks like something is wrong: there should be a "last update" timestamp available, because you got job metadata in the first place (e.g the status in the other column)

m-mohr commented 2 years ago

Good idea regarding the IDs, we could indeed so something like #ABCD...1234.

I had it a couple of times again, and I think it was after I switched tabs

Is that Browser tabs or tabs in the Web Editor (i.e. Jobs/Services/Files)?

The thing is that the "n/a" (not available) looks like something is wrong: there should be a "last update" timestamp available

So then I'd expect the back-end to deliver such a timestamp in the corresponding field. The Web Editor is simply showing what the back-end is reporting.

So I have the following ToDos:

soxofaan commented 2 years ago

Is that Browser tabs or tabs in the Web Editor

I meant browser tabs. But I just saw it happening while the page had focus (I think: I was pressing the "i" button of one job and the title of another one changed back to id)

The Web Editor is simply showing what the back-end is reporting.

Aha, I was assuming that the web editor determined that "last update" timestamp (in the sense of "timestamp of the status poll"), but apparently that is the "Date and time of the last status change" as reported by back-end

m-mohr commented 2 years ago

Does that work for you?

image

The editor now also asks whether you really want to delete (or cancel) a job/service/file/process.

image

Check why tables are updating - I guess it's due to updates that are coming in from list requests that override the Job object.

I found the issue, but it's not trivial to solve so will take a bit more time.

soxofaan commented 2 years ago

yes, looks much better :+1:

m-mohr commented 2 years ago

The updating issue for jobs, services and UDP should be fixed, please let me know if you still have issues @soxofaan