 |
|
|
11-05-2019, 11:03 AM
|
#1
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
If a Serial Storage Device drops during recording, Reaper doesn't know it = data loss
[REPRO STEPS]
1. Create a project.
2. Set the record path so that the media is written to an external serial device aka USB drive.
3. Begin recording a track.
4. Once the track is recording, unplug the USB cable (to replicate what occurs if the connection drops on it's own for various reasons).
Expected behavior: Reaper throws an error or otherwise informs the user that the media has failed etc.
Actual behavior: Reaper continues "recording" as if nothing is wrong though the file is no longer accessible. Reaper could record for hours with the user assuming everything is OK.
[DETAILS]
See this post/thread...
https://forum.cockos.com/showpost.ph...1&postcount=33
It appears that while recording is in progress, if the serial drive/device inadvertently blips or disappears after record is pressed, Reaper either doesn't see or ignores the fact that the storage media no longer exists and continues to report to the user that everything is just fine and that the recording is still occurring - but it isn't...
It appears there are a couple of possibilities...
1. Being External the OS (Win) uses IRP_MJ_WRITE, when the drive is no longer present, the return value switches to FILE INVALID and Reaper isn't actually informed that the write failed, possibly due to caching/lazy writes.
2. The same as above but Reaper is informed and it is a missed case.
In all cases, IF Reaper can detect this, it probably should because someone theoretically can (and actually has per other thread), record for hours thinking everything is fine when in reality no data is being written to disk. It's also possible it went somewhere else (memory/page et al), but too much work to investigate further when the devs likely already know the answer.
Can the devs look into this and comment? We are a little concerned with risk of users losing hours of recording since Reaper doesn't give any clues that something went wrong. Even if recording external USB media is a bad idea, would be nice to know if Reaper can detect this.
Confirmed on Windows and Mac (and linux based on clepsydrae's reply below).
__________________
Music is what feelings sound like.
Last edited by karbomusic; 11-09-2019 at 10:16 AM.
|
|
|
11-05-2019, 11:10 AM
|
#2
|
Human being with feelings
Join Date: Nov 2011
Posts: 3,357
|
Just confirmed on linux, too. Same behavior: recording appears to continue without issue.
|
|
|
11-09-2019, 10:12 AM
|
#3
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Bumping since I added repro steps to the first post.
__________________
Music is what feelings sound like.
|
|
|
12-20-2019, 11:36 AM
|
#4
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Bump!
__________________
Music is what feelings sound like.
|
|
|
12-21-2019, 03:13 AM
|
#5
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Bumping also this serious topic.
Devs, please?
|
|
|
01-06-2020, 08:46 AM
|
#6
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
bump.
__________________
Music is what feelings sound like.
|
|
|
01-06-2020, 11:45 PM
|
#7
|
Human being with feelings
Join Date: May 2018
Location: Los Angeles
Posts: 1,686
|
Thanks for posting this. One more thing for my OCD to worry about during recording sessions. A solution to this would definitely add peace of mind and potentially avert disaster.
__________________
Cheers... Andrew K
Reaper v6.80+dev0621 - June 21 2023 • Catalina • Mac Mini 2020 6 core i7 • 64GB RAM • OS: Catalina • 4K monitor • RME RayDAT card with Sync Card and extended Light Pipe.
|
|
|
01-16-2020, 12:23 PM
|
#8
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Hey Devs...
Bumping hoping for a dev comment - I'm pretty resilient myself, but since someone could run in record for hours and lose every minute of that audio without warning, seems important for chiming in.
__________________
Music is what feelings sound like.
|
|
|
01-16-2020, 12:54 PM
|
#9
|
Human being with feelings
Join Date: Sep 2008
Location: Sweden
Posts: 7,179
|
Similar thing happens when rendering to a disk that becomes full. Reaper just keeps on rendering, when the graceful thing would be to stop rendering and inform the user that something went astray.
https://forum.cockos.com/showthread.php?t=221562
https://forum.cockos.com/showthread.php?t=120185
__________________
// MVHMF
I never always did the right thing, but all I did wasn't wrong...
|
|
|
01-17-2020, 09:15 AM
|
#10
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Quote:
Originally Posted by Fabian
|
YES :-(
So another bump. Please...
|
|
|
02-19-2020, 06:26 PM
|
#11
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Bump - cuz data loss - thanks!
__________________
Music is what feelings sound like.
|
|
|
02-29-2020, 07:47 AM
|
#12
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Another bump
|
|
|
06-11-2020, 08:27 PM
|
#13
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Bump, due to potential data loss - thank you!
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 07:49 AM
|
#14
|
Human being with feelings
Join Date: May 2017
Location: Leipzig
Posts: 6,304
|
Bumperony
|
|
|
06-12-2020, 07:52 AM
|
#15
|
Human being with feelings
Join Date: May 2017
Location: Leipzig
Posts: 6,304
|
I would add, that Reaper seems to have issues as well, with recording to a volume that's full.
So if you run out of space, Reaper keeps on recording without writing it, as there's no space available anymore.
This could cause broken recording-files.
Maybe that is linked to the problem above, that Reaper does not check if writing itself is possible at all.
|
|
|
06-12-2020, 07:55 AM
|
#16
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Quote:
Originally Posted by Meo-Ada Mespotine
I would add, that Reaper seems to have issues as well, with recording to a volume that's full.
|
Just an FYI there is a setting to warn you if the disk has less than the amount of space you configure but I'm not sure it is enabled by default?
Edit: it is enabled by default @ 1GB.
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 09:36 AM
|
#17
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Quote:
Originally Posted by karbomusic
Just an FYI there is a setting to warn you if the disk has less than the amount of space you configure but I'm not sure it is enabled by default?
Edit: it is enabled by default @ 1GB.
|
But question is if it checks for the space only at the moment of starting recording..?
I mean, if Reaper finds you have e.g. 1.2GB free space at the time of pressing REC button, so everything is OK, but few minutes later something is triggered in OS or other app and making a big file download, backup, tempfile or whatsoever, then Reaper does not check periodically if there is still some free space (while still performing recording task, or rendering task, or any file saving task in general!!!). Too bad then. It happens with rendering, too
|
|
|
06-12-2020, 09:53 AM
|
#18
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Quote:
Originally Posted by akademie
But question is if it checks for the space only at the moment of starting recording..?
|
Correct, but once recording has started, I assumed trapping the failed return value would still fall under this bug?
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 10:09 AM
|
#19
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Quote:
Originally Posted by karbomusic
Correct, but once recording has started, I assumed trapping the failed return value would still fall under this bug?
|
Yes, I would say.
|
|
|
06-12-2020, 10:17 AM
|
#20
|
Human being with feelings
Join Date: Nov 2011
Posts: 3,357
|
Some discussion on disk space cases here...
IMO we could really use options:
[x] alert when disk fills up while recording
[x] alert on recording stop if disk filled while recording
[x] do not create zero-length items if recording to full disk
|
|
|
06-12-2020, 10:44 AM
|
#21
|
Human being with feelings
Join Date: Sep 2008
Location: Sweden
Posts: 7,179
|
Quote:
Originally Posted by clepsydrae
Some discussion on disk space cases here...
IMO we could really use options:
[x] alert when disk fills up while recording
[x] alert on recording stop if disk filled while recording
[x] do not create zero-length items if recording to full disk
|
I don't see any reason for these to be options. This is just part of graceful exit/degradation. When would anyone not have those turned on?
It is amazing to me that the devs, as great programmens as they apparently are, let this slip by. Could there be some technical reason for not checking the return code of a write operation and gracefully terminate the writing if the write fails?
__________________
// MVHMF
I never always did the right thing, but all I did wasn't wrong...
|
|
|
06-12-2020, 10:57 AM
|
#22
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Quote:
Originally Posted by Fabian
It is amazing to me that the devs, as great programmens as they apparently are, let this slip by. Could there be some technical reason for not checking the return code of a write operation and gracefully terminate the writing if the write fails?
|
Not unless the API call that Reaper calls doesn't return the failure, but based on the procmon in my first post it does at that lower level and I'd expect that to bubble up - but I don't know the Reaper code and there could be another call, that reaper makes that I can't see, which is likely... so there could be other reasons but if so...
A dev comment would be nice so we could inform others, workaround whathaveyou.
There is another investigatory action I could take to help answer, maybe later if I have time.
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 11:01 AM
|
#23
|
Human being with feelings
Join Date: Nov 2011
Posts: 3,357
|
Quote:
Originally Posted by Fabian
When would anyone not have those turned on?
|
Yeah that probably makes more sense. I think I was just being conservative in case devs or users didn't want the pop-ups.
Quote:
Could there be some technical reason for not checking the return code of a write operation and gracefully terminate the writing if the write fails?
|
If it's not just an oversight or something not-yet-implemented, then my only guess is that the philosophy is in the vein of "professional tools let the user hang themselves if they want; let the user handle their own business without nagging them about stuff". But seems more likely that it's just that "warn if disk space < X" is enough to cover most cases so the others haven't been dealt with.
Given the stakes (e.g. lost data) I do hope these features (and the bugs mentioned in this thread) can get implemented/fixed some day soon.
|
|
|
06-12-2020, 11:04 AM
|
#24
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Quote:
Originally Posted by clepsydrae
If it's not just an oversight or something not-yet-implemented, then my only guess is that the philosophy is in the vein of "professional tools let the user hang themselves if they want; let the user handle their own business without nagging them about stuff". But seems more likely that it's just that "warn if disk space < X" is enough to cover most cases so the others haven't been dealt with.
|
I agree likely a missed case, especially since it falls out of the testing most would think of doing while testing in a dev environment. Actually, most of the debugging I do in the real world, is catching things people don't think to test when running test cases on code - then customers hit it.
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 11:18 AM
|
#25
|
Administrator
Join Date: Jan 2005
Location: NYC
Posts: 15,346
|
We should definitely notify, I agree, this is overdue. We'll be adding this in the next cycle (with an option to stop audio processing if this occurs in order to draw attention to the issue).
|
|
|
06-12-2020, 11:23 AM
|
#26
|
Human being with feelings
Join Date: Nov 2011
Posts: 3,357
|
Awesome, thanks!
|
|
|
06-12-2020, 12:16 PM
|
#27
|
Human being with feelings
Join Date: May 2009
Posts: 29,177
|
Yip, Yip, Yippieeeee.
Thanks Justin!
Edit: Once a pre-release build lands, someone let me know if I miss so I can add (fixed) to the title.
__________________
Music is what feelings sound like.
|
|
|
06-12-2020, 12:17 PM
|
#28
|
Human being with feelings
Join Date: Mar 2007
Posts: 3,685
|
Nice, thanx.
|
|
|
06-12-2020, 12:56 PM
|
#29
|
Human being with feelings
Join Date: Sep 2008
Location: Sweden
Posts: 7,179
|
Quote:
Originally Posted by Justin
We should definitely notify, I agree, this is overdue. We'll be adding this in the next cycle (with an option to stop audio processing if this occurs in order to draw attention to the issue).
|
Great!
Thanks.
__________________
// MVHMF
I never always did the right thing, but all I did wasn't wrong...
|
|
|
06-12-2020, 03:12 PM
|
#30
|
Human being with feelings
Join Date: May 2017
Location: Leipzig
Posts: 6,304
|
Awesome!
|
|
|
06-19-2020, 02:07 PM
|
#31
|
Human being with feelings
Join Date: May 2017
Location: Leipzig
Posts: 6,304
|
Quote:
Originally Posted by karbomusic
Yip, Yip, Yippieeeee.
Thanks Justin!
Edit: Once a pre-release build lands, someone let me know if I miss so I can add (fixed) to the title.
|
It is now added.
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 12:25 AM.
|