The closed set of error_code values that collect_content() and pie_cat() can return, with the pipeline stage each belongs to and whether it is worth retrying.

fetch_error_codes()

Value

A tibble with columns code, stage, retryable and description.

Details

Shared strings retain their meaning in piedomains. R-specific acquisition failures and retry-policy exceptions are recorded in the versioned contract.

See also

fetch_report() to summarise an actual run, source_vintage() for the provenance of the static label sources.

Examples

fetch_error_codes()
#> # A tibble: 32 × 4
#>    code             stage    retryable description                              
#>    <chr>            <chr>    <lgl>     <chr>                                    
#>  1 invalid_domain   validate FALSE     Not a fetchable http(s) host.            
#>  2 robots_blocked   validate FALSE     Disallowed by the host's robots.txt.     
#>  3 private_address  validate FALSE     Host resolves to a non-global address.   
#>  4 dns_error        fetch    TRUE      Host did not resolve.                    
#>  5 connection_error fetch    TRUE      Connection refused or reset.             
#>  6 timeout          fetch    TRUE      Request exceeded the timeout.            
#>  7 http_error       fetch    FALSE     A non-successful HTTP response requiring…
#>  8 http_not_found   fetch    FALSE     The requested resource was not found or …
#>  9 http_unavailable fetch    TRUE      Transient HTTP failure or rate limit.    
#> 10 redirect_error   fetch    FALSE     A redirect did not provide a usable dest…
#> # ℹ 22 more rows

# which failures are worth trying again?
subset(fetch_error_codes(), retryable)
#> # A tibble: 11 × 4
#>    code                 stage retryable description                             
#>    <chr>                <chr> <lgl>     <chr>                                   
#>  1 dns_error            fetch TRUE      Host did not resolve.                   
#>  2 connection_error     fetch TRUE      Connection refused or reset.            
#>  3 timeout              fetch TRUE      Request exceeded the timeout.           
#>  4 http_unavailable     fetch TRUE      Transient HTTP failure or rate limit.   
#>  5 robots_unavailable   fetch TRUE      Robots rules could not be retrieved.    
#>  6 archive_unavailable  fetch TRUE      The archive service could not complete …
#>  7 archive_rate_limited fetch TRUE      The archive rate-limited the request.   
#>  8 service_unavailable  infer TRUE      Classification service asleep or down.  
#>  9 rate_limited         infer TRUE      Classification service rate-limited us. 
#> 10 service_error        infer TRUE      Classification service returned an erro…
#> 11 batch_pending        infer TRUE      Batch job submitted; results not yet av…