- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: VMS 7.3-2 giving error with too many symbols o...
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 01:58 AM
01-09-2006 01:58 AM
Has anyone else seen this problem?
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 02:16 AM
01-09-2006 02:16 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Could it be that you have an abnormally large no. of files in the directory ? a back log to clear ? I guess your routine creates one or many symbols per file match and from the DCL warning, you run out of room.
Perhaps some symbols are left lying around and not re-used and you accumalate lots over time.
Upon failure or infrequently you could add a $ SHOW SYM/LOCAL/ALL (/GLOBAL) may shed some light.
Have you up to date on patching ?
Kind Regards
John.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 02:28 AM
01-09-2006 02:28 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 02:43 AM
01-09-2006 02:43 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
CLISYMTBL is a dynamic system parameter: change it for testing to a higher value, logout/login and see if the situation changes.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 02:46 AM
01-09-2006 02:46 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 03:06 AM
01-09-2006 03:06 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
That is half a MByte space for symbol definitions.
Maybe test the space by using the following procedure:
$ n=1000
$ if p1.nes."" then n=f$integer(p1)
$ i=0
$ on warning then goto done
$loop:
$ testsym'i'="This is testsym''i'"
$ i = i+1
$ if i .lt. n then goto loop
$done:
$ write sys$output "End at testsym",i
Adapt the testsym symbol name and string to the length You use in Your procedure to see the number of symbols You can produce.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 03:56 AM
01-09-2006 03:56 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Could you include SHOW SYMBOL * in the DCL as a debugging aid to see what symbols there are?
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 04:31 AM
01-09-2006 04:31 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
If you determine that this isn't a coding bug that is resulting in the symbol table overflow, and you don't mind living in the land of the unsupported, then you could use either the DELTA debugger or a small program to raise the roof a bit higher than SYSGEN permits (the system stores SYSGEN's CLISYMTBL value at the location exe$gl_clitabl).
$ create clisymtbl_2048.mar
.psect code exe,nowrt,shr,long
.entry clisymtbl_2048,^m<>
$cmkrnl_s routin=sysgen_plus ; jump into kernel mode
ret
.call_entry label=sysgen_plus
movab g^exe$sigtoret,(fp) ; establish exception handler
movl #2048,exe$gl_clitabl ; set clisymtbl to 2048
movl #1, r0
ret
.end clisymtbl_2048
^Z
$ macro clisymtbl_2048
$ link/sysexe clisymtbl_2048
$ analyze/system
SDA> eva @exe$gl_clitabl
Hex = 00000000.000002EE Decimal = 750 PSBRB$K_RINGBUFFER_RECORDS
SDA> spawn run clisymtbl_2048
SDA> eva @exe$gl_clitabl
Hex = 00000000.00000800 Decimal = 2048 ABLK$Q_ADRQ_Q_HD
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 04:38 AM
01-09-2006 04:38 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 04:58 AM
01-09-2006 04:58 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Maybe SHOW PROC/MEMORY can give you a clue?
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 05:12 AM
01-09-2006 05:12 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
I've talked with HP and they are wondering if the symbol name that I'm using for the results from f$search in the loop searching thru a directory is not being released from the symbol table and therefore creating a new symbol everytime rather than replacing what was there already.
I'm unclear how show proc/mem will help. Is there a way to look at what is in the symbol table for a particular process?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 06:52 AM
01-09-2006 06:52 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Does your F$SEARCH loop always run to completion? (ie: you get a null string returned). What is the exact file specification? Does it contain a search list logical name? Are you using search streams?
I'd also be searching for unbalanced IF-THEN-ELSE-ENDIF or SUBROUTINE-ENDSUBROUTINE blocks.
SHOW PROC/MEM shows the process dynamic memory area. It contains symbols and other DCL context. Filling it up with other stuff consumes space for new symbols. Don't forget each command level has its own symbol table. How deep is the procedure? See F$ENVIRONMENT("DEPTH"). Recursion can be accidental.
Something else to check - SHOW RMS. Look for any non-zero values other than "MULTI-BLOCK-COUNT" and "NETWORK BLOCK COUNT". In particular a non-zero value for "Sequential Disk" will cause process permanent files (ie: anything OPENed from DCL) to consume process pool space.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 08:06 AM
01-09-2006 08:06 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Yes, it appears that the f$search will run to completion and give the null string. It will find files as they are populated and follow-through with the null string when it has looked at all of them - just as designed. Occasionally, we see the command file=f$search("nodetemp_rpt:*.*;*") generate the $status value of %x00038138 indicating a symbol table overflow.
We are using the logical nodetemp_rpt in the file spec for the f$search command. It is not in a search list.
We have other f$search's in the command procedure that look for specific file names. At one point we put a stream identifier on the f$search but we still get the symbol overflow error.
All of the IF-THEN structures look like they are matched up appropriately.
The SHOW RMS command does not show any of the non-zero values other than those you mentioned should be non-zero.
I'm having the application person clean up some of the symbols in the command procedure that are not necessary for the loop. We will resubmit the detached process after she is finished with the changes. I have a feeling that will just prolong the problem.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 08:18 AM
01-09-2006 08:18 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Trimming symbols from a "reasonably sized" procedure should not be necessary.
This may be an obscure bug in your procedure, but it's beginning to sound like you've found something wrong in DCL (maybe a result of the extended DCL work added in V7.3-2).
Please log a case with your local customer support centre to analyze your procedure.
Note that the last thing you want to do is extend the time before failure. It may be more prudent to CREATE a large number of symbols in your procedure prologue to induce the problem faster, (minutes instead of days) then start to carve up the logic to isolate the cause.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 08:18 AM
01-09-2006 08:18 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
I have had some times where I was staring at code and couldn't figure out what was wrong, but DCL_CHECK narrowed it down quickly.
Robert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-09-2006 08:21 AM
01-09-2006 08:21 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Thanks for your input.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-10-2006 01:37 PM
01-10-2006 01:37 PM
Re: VMS 7.3-2 giving error with too many symbols on f$search
We are running 7.3-2 and have directories with over 100,000s files. Lots of f$search() being performed all the item. You may have discovered and interesting problem.
Tom
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-10-2006 06:43 PM
01-10-2006 06:43 PM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Not in all cases context was cancelled when using f$context not until the end.
As Hein suggest, I did a show proc/mem and watched the "free space" value. If it drops below 5000 I give an alarm and I know something is wrong that needs investigating.
Or may be the procedure is generating symbols. Try sh symb * to see if unexpected symbols are seen.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-10-2006 08:21 PM
01-10-2006 08:21 PM
Re: VMS 7.3-2 giving error with too many symbols on f$search
SHOW SYMBOL may reveal something, but the same space is also used to store LABEL info.
That is not so easily visible, but, if you have some dynamic label activity, that also may keep growing.
Extremely simplified reproducer:
.
$ cnt = cnt + 1
$lab_'cnt':
.
$ goto lab_'cnt
.
If cnt grows to big values, you are pretty much guaranteed to hit the ceiling sometime!
Hth
Proost.
Have one on me.
jpe
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-10-2006 09:00 PM
01-10-2006 09:00 PM
Re: VMS 7.3-2 giving error with too many symbols on f$search
I would suspect that too but just tested it. Free space doesn't decrease (7.3). But I get the message "no room for symbol definition" when reaching count 6540.
???
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-10-2006 10:51 PM
01-10-2006 10:51 PM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Did the test on 6.2 1h3 with the same result.
Was it only VMS 5.5 ?
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-11-2006 01:49 AM
01-11-2006 01:49 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
When I run thru this procedure on a 7.3-2 system with clisymtbl set to 512, it runs thru the loop 61 times. On a 7.3-2 system with clisymtbl set to 1024, it runs thru the loop 124 times. I've been running the procedure all a.m. on a 7.3-1 box and have yet to get an error:
$ set noon
$ set ver
$ counter = 0
$ myPath := "csd$user:[csmlf.test]"
$!
$Holdit:
$ counter = counter + 1
$ delay := 'f$trnlnm("DELAY_LOGICAL")'
$ if delay .eqs. "" then delay:=00:00:02
$ wait 'DELAY'
$!
$ if f$trnlnm("DIRECTORY_RD1") .nes. "" then @CSD$USER:[CSMLF]NOPROC1.COM
$ sv$status = $status
$ show symbol sv$status
$ if sv$status .eqs. "%X00038138" then goto exitt
$!
$ if f$trnlnm("PGM$DEBUG") .eq. debug then goto seek
$ sv$status = $status
$ show symbol sv$status
$ if sv$status .eqs. "%X00038138" then goto exitt
$!
$Seek:
$ show time
$ dir/date/sec 'mypath'*.*;*
$ file==f$search("''myPath'*.*;*",1)
$ sv$status = $status
$ show symbol sv$status
$ if sv$status .eqs. "%X00038138" then goto exitt
$ sho sym file
$ if file .eqs. "" then goto bottom
$!
$ @CSD$USER:[CSMLF]NOPROC2 'file'
$!
$Bottom:
$ goto Holdit
$exitt:
$ write sys$output "number times thru loop ''counter'"
$ exit(sv$status)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-11-2006 02:31 AM
01-11-2006 02:31 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-11-2006 02:40 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-11-2006 02:42 AM
01-11-2006 02:42 AM
Re: VMS 7.3-2 giving error with too many symbols on f$search
Purely Personal Opinion