Skip to content

export_dataset timeout behavior isn't clear  #29

@jamesrkg

Description

@jamesrkg

The default progress timeout is 30 seconds, which is often not long enough. It's therefore easy to hit a TaskProgressTimeoutError even though the export is continuing in the background and may well succeed. If/when it does information about the file's location is no longer accessible to the user (without them preparing to catch that information ahead of time). The default timeout should be (much) longer and an easier way to get at the progress and location urls would make it easier to work with.

Part of the confusion here imo is the way shoji.wait_progress works.

def wait_progress(r, session, progress_tracker=None, entity=None):

progress_tracker=None here is not the same as giving a custom tracker created with progress_tracker = DefaultProgressTracking(None).

The former results in the default timeout (30) because of this:

if progress_tracker is None:
    progress_tracker = session.progress_tracking

Whereas the latter means there is no timeout, despite both being the result of using None.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions