<ILLEGAL VALUE> when trying to call $ZF("GETFILE") on OpenVMS

Per the information at http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=... I am trying to use a call to $ZF("GETFILE") to obtain information about an OpenVMS file. But I get an <ILLEGAL VALUE> error.

For example:

w $zf("GETFILE",filename,"UIC")

reports:

<ILLEGAL VALUE>

My filename variable contains the full path and name of a file that I own. I hold the %All role in Cache.

This is 2012.1.5 on OpenVMS/IA64  V8.4

Any ideas what's going wrong?

  • 0
  • 0
  • 171
  • 3
  • 1

Answers

I can't reproduce this in a 2016.2 instance I have handy:

USER>s filename="DKA0:[QD.CACHEJCWG2.MGR.USER]CACHE.DAT"

USER>w $zf("GETFILE",filename,"UIC")                    
[1,1]

Can you get the output of $zu(56,2) after the error? Anything unusual about your filename?

Thanks for looking John. Since raising the question here I have opened a WRC ticket. The WRC agent's initial test on an Alpha platform didn't recreate the problem, so they're now going to try on an Integrity instance using the exact build I'm seeing it on.

WRC should take good care of you then. It occurs to me that when a call-out function returns an error, you should see a FUNCTION error. An ILLEGAL VALUE error suggests that $zf could not find the "GETFILE" entry. Is there any chance that you're using a kernel with a modified czf.c?

Good point Jon. It does appear that the site I saw this happen on could be using a custom CZF.EXE, in which case perhaps GETFILE was omitted from its source CZF.C