sandrock@uxc.cso.uiuc.edu (02/10/88)
It seems that if I access a data file with records larger than 4096 bytes from a FORTRAN program via DECnet (i.e. FAL) that the RMS error "Record too large for user's buffer" is returned. This only happens when the access is via DECnet; local access of course works fine. I tried increasing various quotas for the DECnet proxy account (i.e. my own account in this case), but still no difference. The DECnet manuals shed no light on this limitation that I have been able to find, so I am appealing to any VMS whizzes on the net for the answer. Please email directly, and I will summarize to the net if appropriate. Regards, Mark Sandrock Internet: sandrock@uxc.cso.uiuc.edu Bitnet: sandrock@uiucscs Phone: 217-244-0560
mitch@batcomputer.tn.cornell.edu (Mitch Collinsworth) (02/13/88)
In article <195600003@uxc.cso.uiuc.edu> sandrock@uxc.cso.uiuc.edu writes:
It seems that if I access a data file with records larger than 4096
bytes from a FORTRAN program via DECnet (i.e. FAL) that the RMS error
"Record too large for user's buffer" is returned. This only happens
when the access is via DECnet; local access of course works fine.
I tried increasing various quotas for the DECnet proxy account (i.e.
my own account in this case), but still no difference.
The DECnet manuals shed no light on this limitation that I have
been able to find, so I am appealing to any VMS whizzes on the net
for the answer.
Please email directly, and I will summarize to the net if appropriate.
Please post if you have any information concerning this. I am experiencing
the same trouble.
-Mitch Collinsworth
mitch@tcgould.tn.cornell.edu
sandrock@uxc.cso.uiuc.edu (02/17/88)
The solution it turns out is trivial. The dynamic SYSGEN parameter RMS_DFNBC (Default Network Block Count) places an upper limit on the recordsize that can be transfered over DECnet. The default value on VMS systems here seems to be 8 blocks, giving a max recordsize of 4096 bytes. This value can be set on either a system-wide or process-wide basis by means of the DCL command: SET RMS_DEFAULT /NETWORK=nn [/SYSTEM]. In our case, we had 16,300 byte records in a database, and therefore I added the command to our startup, with nn=32 and all is well. Regards, Mark Sandrock
LEICHTER@VENUS.YCC.YALE.EDU ("Jerry Leichter ", LEICHTER-JERRY@CS.YALE.EDU) (02/20/88)
In article <195600003@uxc.cso.uiuc.edu> sandrock@uxc.cso.uiuc.edu writes: It seems that if I access a data file with records larger than 4096 bytes from a FORTRAN program via DECnet (i.e. FAL) that the RMS error "Record too large for user's buffer" is returned. This only happens when the access is via DECnet; local access of course works fine.... Please post if you have any information concerning this. I am experiencing the same trouble. RTFM (but see below)! From the RMS Reference Manual, Section 5.22 (documenta- tion of the FAB$W_MRS - Maximum Record Size - field): For DECnet remote file access, the maximum record size is set by using the /NETWORK_BLOCK_COUNT=n qualifier to the SET RMS_DEFAULT command. DECnet remote file access can have record sizes as large as RMS supports. [N.B., this discussion appears after a table of maximum record sizes for different file organizations and record formats.] The default number of blocks is equal to the SYSGEN parameter RMS_DFNBC, the default for which is 8 blocks (4096 bytes).... I'll admit I started off looking in the wrong manual - the Guide To Network- ing. It pointed me to the Guide To File Applications, which then pointed me rather quickly to where, in hindsight, I should clearly have looked to begin with. -- Jerry