-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PV generator getstat permission denied error #1148
Comments
IIRC, the generated image is in RAM. Correct me if I am wrong @pford |
@ajm-asiaa just wondering, is it connected to a specific image cube? |
It is not. I have tried several image cubes and I get the same error for each one. |
and those same image cubes work ok on other installations? (e.g. on desktop) |
Yes, they do. |
@kswang1029 is correct, the PV image exists as an ImageInterface object in memory. After this new image is created, Frame::CloseCachedImage calls FileLoader::CloseImageIfUpdated on the source image, not the PV image. In the backend, whenever access to the image is no longer needed (for example finished reading the data to compute stats), the calling routine calls CloseImageIfUpdated. This function checks the image's modify time using getstat, so that if the user leaves an image open in CARTA, re-creates it in a different way then reopens it, the image is updated in CARTA. The casacore data manager does not detect the change if the table columns are the same and the data is the same shape. |
The getstat call is in casacore::File::modifyTime() |
@ajm-asiaa you showed me some other time that the backend console log shows two different time stamps with different timezones differ by 8h (guessing one is UTC and the other is Taipei time). The log from casacore seems to be different from CARTA. Could it be the root cause? @pford does casacore have a “timezone” concept when logging? |
|
@kswang1029 I get UTC timestamps in casacore and carta-backend logging (in my dev build) |
This is a peculiar example 🤔️ |
Thinking some more about the The source image should have a filename and |
It turns out the filename is blank for a generated image. Perhaps casacore::File resolves a blank filename with path to the current directory? The getstat call is bypassed for gz compressed images and LEL images; I will add generated images with no filename to this bypass. |
nice catch @pford 👍 I think that's exactly what's happening. It's trying to check |
Describe the bug
On the carta-controller implementation of CARTA v3.0.0-beta.3 at ASIAA, we can not generate a PV image.
Once the progress bar completes, no PV image appears. Looking at the log files, everything seems to be normal except for one error:
File::getstat error on .: Permission denied
.To Reproduce
Unfortunately, I can not find a way to reproduce the error outside of our carta-controller implementation, and only ASIAA members can access it. But I'll just mentions the steps here.
File::getstat error on .: Permission denied
.Expected behavior
The PV image should appear.
Platform info:
Additional context
It seems to be carta-backend related rather than carta-controller specific, but it could be the way we authenticate the users and somehow they don't have write permissions to a certain folder. If that is the case, it might come up again in archive implementations of CARTA. So I'm mainly wondering where the "getstat" "permission denied" error is coming from.
@pford Do you know if the PV generator writes temporary files somewhere, and if so, where is it?
The text was updated successfully, but these errors were encountered: