catalyst / moodle-tool_objectfs

Object file storage system for Moodle
https://moodle.org/plugins/tool_objectfs
88 stars 72 forks source link

If there is any issues putting objects then these should be reflected in the Check API #557

Open brendanheywood opened 1 year ago

brendanheywood commented 1 year ago

ERROR: copy /var/lib/sitedata/filedir/17/51/xxxx to s3://sitedata-xxx-moodle/17/51/xxxxx: Error executing "PutObject" on "https://sitedata-xxxx-moodle.s3.ap-southeast-2.amazonaws.com/17/51/xxxx"; AWS HTTP error: Client error: PUT https://sitedata-xxxx-moodle.s3.ap-southeast-2.amazonaws.com/17/51/xxxx resulted in a 403 Forbidden response: <?xml version="1.0" encoding="UTF-8"?>

AccessDeniedAccess Deniedxxxxx (truncated...) AccessDenied (client): Access Denied - AccessDeniedAccess Deniedxxxxxxxxxxxx Generally if there is an issue like this then it is likely that none of the subsequent PutObject will work either, but on the off change that it was a temp glitch then lets be forgorgiving and capture how many errors there are. If there is constant errors and none are working then it should exit with a fail delay and that will turn up in the check api. If there is a small rate of errors then ideally the task itself keeps running and those errors end up in the check api in some other way
brendanheywood commented 1 year ago

If it cannot put an object, it should try and read from it and see if it is already there, and if so just gracefully recover