[Info-vax] Re; Spiralog, RMS Journaling (was Re: FREESPADRIFT)

David Froble davef at tsoft-inc.com
Sun Jun 19 22:55:28 EDT 2016


Stephen Hoffman wrote:
> On 2016-06-19 02:35:16 +0000, David Froble said:
> 
>> I would suggest "what does it matter?"
>>
>> It's not like some other file is going to use the unused portion of 
>> some disk block, or, as suggested, unused part of 4096 bytes ....
> 
> If I'm mapping the user data into memory, having its size is useful.  
> Otherwise, I slog through RMS records or such.

Agreed.  Wasn't thinking about things like that.  And I've never done that, so 
it's understandable I would not have considered it.

> If I'm messing with disk allocations and more directly managing storage 
> — something I'd prefer to avoid, but that can arise on OpenVMS and other 
> systems — then the total size of the file including all user data and 
> all of its overhead and/or pre-allocation and/or metadata is of interest.

Agreed.

> This is akin to UTF-8, where you might be looking for the numbers of 
> glyphs in the string, or for the size of the required memory buffer to 
> store the string.

Don't have such experience, but you're correct.

> Many OpenVMS apps simply don't have the concept of mapping the entire 
> file into memory, they assume datasets far larger than available memory 
> and/or comparatively weak and slow paging I/O support, and for those 
> apps the total data size wasn't really a factor.   They're written to 
> deal with records.   (This is also where the overhead of dealing with 
> zillions of small hunks via RMS — and not a few and larger hunks — can 
> become a run-time performance-limiting factor.)  For apps that map whole 
> files or that map masses of data into memory, the user dataset size 
> (modulo any virtual memory allocation granularity in play) tends to 
> matter more, unless those apps are implementing their own paging — as 
> various databases do.
> 
> Defining data structures and allowing the run-time system to pack and 
> unpack records for the app is a concept that largely doesn't exist on 
> OpenVMS.  You have to roll your own (glue) code to do that.

Yep, did that long ago ....

Still works well, but, I would not recommend it vs today's database products.

You give good examples, I've just never seen any of those examples.



More information about the Info-vax mailing list