[Info-vax] Large mailboxes
Phillip Helbig undress to reply
helbig at asclothestro.multivax.de
Mon Nov 30 15:33:55 EST 2020
In article <rq3auv$kka$5 at dont-email.me>,
=?UTF-8?Q?Jan-Erik_S=c3=b6derholm?= <jan-erik.soderholm at telia.com>
writes:
Maybe quote fewer lines if you write just one line in your post?
And reading that one line, nomen est omen!
> Den 2020-11-30 kl. 18:25, skrev Marc Van Dyck:
> > After serious thinking Marc Van Dyck wrote :
> >
> >> Yes I will do that next monday and report the results here.
> >
> > OK, as promised, I tested. I does not work.
> >
> > I ran the procedure below. I tested it interactively with a small
> > amount of messages, and then submitted it in batch, so as to have a log
> > file, with 1.000.000 messages.
> >
> > $Â Â Â Â Â Â SET NOVERIFY
> > $Â Â Â Â Â Â total = P1
> > $Â Â Â Â Â Â disp_mem = P2
> > $Â Â Â Â Â Â disp_count = P3
> > $Â Â Â Â Â Â MBX /CREATE /MES = 100 /POSITIONS = 'total' /PERM mvd$test1
> > $Â Â Â Â Â Â count = 0
> > $Â Â Â Â Â Â text = "This is message number "
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Start Writing at ''F$TIME()'..."
> > $Â Â Â Â Â Â SHOW MEMORY /POOL
> > $snd:
> > $Â Â Â Â Â Â count = count + 1
> > $Â Â Â Â Â Â IF ((count/disp_count)*disp_count) .EQ. count THEN WRITE SYS$OUTPUT
> > "''F$TIME()' - messages sent : ''count'"
> > $Â Â Â Â Â Â IF ((count/disp_mem)*disp_mem) .EQ. count THEN SHOW MEMORY /POOL
> > $Â Â Â Â Â Â message = "''text'''count'"
> > $Â Â Â Â Â Â MBX /SEND /SYMBOL = message /NOLOG mvd$test1
> > $Â Â Â Â Â Â IF count .LT. total THEN GOTO snd
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Finished writing ''total' messages"
> > $Â Â Â Â Â Â count = 0
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Start Reading at ''F$TIME()'..."
> > $rec:
> > $Â Â Â Â Â Â count = count + 1
> > $Â Â Â Â Â Â MBX /RECEIVE /END = done mvd$test1 message
> > $Â Â Â Â Â Â IF F$INTEGER (message - text) .NE. count THEN GOTO ERROR
> > $Â Â Â Â Â Â IF ((count/disp_count)*disp_count) .EQ. count THEN WRITE SYS$OUTPUT
> > "''F$TIME()' - messages read : ''count'"
> > $Â Â Â Â Â Â IF ((count/disp_mem)*disp_mem) .EQ. count THEN SHOW MEMORY /POOL
> > $Â Â Â Â Â Â GOTO rec
> > $error:
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Error encountered at ''F$TIME()'"
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Last message read = ''message' - counter = ''count'"
> > $done:
> > $Â Â Â Â Â Â SHOW MEMORY /POOL
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Finished reading ''total' messages at ''F$TIME()'"
> > $Â Â Â Â Â Â WRITE SYS$OUTPUT "Don't forget to execute MBX /DELETE mvd$test1"
> > $Â Â Â Â Â Â EXIT
> >
> > I wonât post the whole log file here, itâs too large. But here the
> > begin and the end of the writing phase. The system happily accepts the
> > 1.000.000 messages, and one can see the free nonpaged dynamic memory
> > decrease while the messages are sent:
> >
> > Start Writing at 30-NOV-2020 16:23:06.06...
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 16:23
> > ââDynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 356.07Â Â Â Â Â Â 34.54
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.20Â Â Â Â Â Â 67.82
> > 30-NOV-2020 16:23:09.95 - messages sent : 1000
> > 30-NOV-2020 16:23:13.44 - messages sent : 2000
> > 30-NOV-2020 16:23:17.10 - messages sent : 3000
> > 30-NOV-2020 16:23:20.49 - messages sent : 4000
> > 30-NOV-2020 16:23:24.08 - messages sent : 5000
> > 30-NOV-2020 16:23:27.61 - messages sent : 6000
> > 30-NOV-2020 16:23:31.24 - messages sent : 7000
> > 30-NOV-2020 16:23:34.94 - messages sent : 8000
> > 30-NOV-2020 16:23:38.65 - messages sent : 9000
> > 30-NOV-2020 16:23:42.18 - messages sent : 10000
> > Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 16:23
> > ââDynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 354.85Â Â Â Â Â Â 35.76
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.21Â Â Â Â Â Â 67.81
> > 30-NOV-2020 16:23:46.24 - messages sent : 11000
> >
> > âŠ
> >
> > 30-NOV-2020 17:26:18.05 - messages sent : 990000
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:26
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 235.22Â Â Â Â Â 155.39
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 110.46Â Â Â Â Â Â 66.56
> > 30-NOV-2020 17:26:22.07 - messages sent : 991000
> > 30-NOV-2020 17:26:25.99 - messages sent : 992000
> > 30-NOV-2020 17:26:29.73 - messages sent : 993000
> > 30-NOV-2020 17:26:34.16 - messages sent : 994000
> > 30-NOV-2020 17:26:38.16 - messages sent : 995000
> > 30-NOV-2020 17:26:41.70 - messages sent : 996000
> > 30-NOV-2020 17:26:45.81 - messages sent : 997000
> > 30-NOV-2020 17:26:50.05 - messages sent : 998000
> > 30-NOV-2020 17:26:54.14 - messages sent : 999000
> > 30-NOV-2020 17:26:57.83 - messages sent : 1000000
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:26
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 234.00Â Â Â Â Â 156.62
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 110.36Â Â Â Â Â Â 66.66
> > Finished writing 1000000 messages
> >
> > But, when messages are read, an end of file marker is received
> > after some 16.000 messages, probably the first time the message count
> > goes through zero:
> >
> > Start Reading at 30-NOV-2020 17:26:57.85...
> > 30-NOV-2020 17:27:01.89 - messages read : 1000
> > 30-NOV-2020 17:27:06.46 - messages read : 2000
> > 30-NOV-2020 17:27:10.24 - messages read : 3000
> > 30-NOV-2020 17:27:13.98 - messages read : 4000
> > 30-NOV-2020 17:27:18.13 - messages read : 5000
> > 30-NOV-2020 17:27:21.89 - messages read : 6000
> > 30-NOV-2020 17:27:26.35 - messages read : 7000
> > 30-NOV-2020 17:27:30.68 - messages read : 8000
> > 30-NOV-2020 17:27:34.73 - messages read : 9000
> > 30-NOV-2020 17:27:39.10 - messages read : 10000
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:27
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 235.18Â Â Â Â Â 155.43
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.03Â Â Â Â Â Â 68.00
> > 30-NOV-2020 17:27:42.79 - messages read : 11000
> > 30-NOV-2020 17:27:46.92 - messages read : 12000
> > 30-NOV-2020 17:27:50.76 - messages read : 13000
> > 30-NOV-2020 17:27:54.35 - messages read : 14000
> > 30-NOV-2020 17:27:58.51 - messages read : 15000
> > 30-NOV-2020 17:28:02.39 - messages read : 16000
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:28
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 236.03Â Â Â Â Â 154.58
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.98     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.02Â Â Â Â Â Â 68.00
> > Finished reading 1000000 messages at 30-NOV-2020 17:28:06.05
> > Don't forget to execute MBX /DELETE mvd$test1
> > Â VANDYCKÂ Â Â Â Â job terminated at 30-NOV-2020 17:28
> >
> > The mailbox is indeed indicated as empty, but one can see that its
> > deletion still frees up a lot of nonpaged dynamic memory, a clear
> > indication that the mailbox was not really empty :
> >
> > ROCK> mbx/info mvd$test1
> > Current status of mailbox named MVD$TEST1 :
> >
> > Physical name      : _MBA459:
> > Owner UICÂ Â Â Â Â Â Â Â Â Â : [000001,000034]
> > UIC Protection mask : (S:RWPL,O:RWPL,G:RWPL,W:RWPL)
> > Message size       :  100
> > Processes attached :    0
> > Pending messages   :    0
> >
> > ROCK>
> > ROCK> show mem/pool
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:35
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 236.06Â Â Â Â Â 154.56
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.99     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.12Â Â Â Â Â Â 67.90
> > ROCK> mbx/att mvd$test1
> > ROCK> mbx/del mvd$test1
> > ROCK> show mem/pool
> > Â Â Â Â Â Â Â Â Â Â Â Â System Memory Resources on 30-NOV-2020 17:35
> >
> > Dynamic Memory Usage:             Total       Free     In Use
> > Â Nonpaged Dynamic Memory (MB)Â Â Â 390.62Â Â Â Â Â 356.05Â Â Â Â Â Â 34.57
> >  Bus Addressable Memory (MB)     1.49       1.35       0.13
> >  Paged Dynamic Memory   (MB)   390.62     256.99     133.63
> > Â Lock Manager Dyn Memory (MB)Â Â Â 177.03Â Â Â Â Â 109.12Â Â Â Â Â Â 67.90
> >
> > So it is clear that sending more than 64k messages to a mailbox cannot
> > be trusted and should therefore be avoided. I think it should be stated
> > explicitly in the documentation.
>
> As long as sopmeone reads them, it should be OK... :-)
>
More information about the Info-vax
mailing list