[Valid Atom 1.0] This is a valid Atom 1.0 feed.


This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.


  1. <?xml version="1.0" encoding="utf-8"?>
  2. <feed xmlns="" xml:lang="en-us" xml:base="">
  3. <title type="text">e i g h t - c u b e d . c o m</title>
  4. <subtitle type="text">A day in the life of an OpenVMS systems specialist.  Articles and tutorials on Systems Management and Programming for OpenVMS.</subtitle>
  5. <id></id>
  6. <link rel="alternate" type="application/xhtml+xml" href="" />
  7. <link rel="self" type="application/atom+xml" href=""/>
  8. <author>
  9. <name>James F. Duff</name>
  10. <uri></uri>
  12. </author>
  13. <generator uri="" version="3.34">Movable Type</generator>
  14. <icon></icon>
  15. <updated>2016-08-18T04:11:18Z</updated>
  16. <entry>
  17. <title type="text">Are we getting closer to the bug?</title>
  18. <summary type="html" xml:lang="en"><![CDATA[In my previous post which was terrifyingly over six months ago, I again touched on the issue that I described way back in June 2014 about <a href="">directory renames sometimes producing catastrophically incorrect results</a>.  I thought I'd bring you up-to-date with what's happening...]]></summary>
  19. <content type="html"><![CDATA[<p>In my previous post which was terrifyingly over six months ago, I again touched on the issue that I described way back in June 2014 about <a href="">directory renames sometimes producing catastrophically incorrect results</a>.  I thought I'd bring you up-to-date with what's happening...</p>
  21. <p>Shortly after I published the update in late June 2015, Engineering got in touch with me to note that RMS has a process wide directory path cache, which gets invalidated on every directory remove operations (delete or rename).  Cache invalidation is based on a directory sequence number contained in the <abbr title="Unit Control Block">UCB</abbr> of the disk involved.  They suggested running some <abbr title="System Dump Analyser">SDA</abbr> commands to see if, when the problem occurred, the field was not being updated.</p>]]></content>
  22. <category term="/openvms" scheme="" label="OpenVMS" />
  23. <id></id>
  24. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  25. <published>2016-01-14T00:24:06Z</published>
  26. <updated>2016-08-18T04:11:18Z</updated>
  27. </entry>
  28. <entry>
  29. <title type="text">Still rename weirdness</title>
  30. <summary type="html" xml:lang="en">Long time between posts. My job has got very quiet due to my company aiming to replace the in-house written...</summary>
  31. <content type="html"><![CDATA[<p>Long time between posts.  My job has got very quiet due to my company aiming to replace the in-house written system running on VMS with an off-the-shelf <abbr title="Enterprise Resource Planning">ERP</abbr> system.  With the inherent stability of the system running on VMS, I haven't had much to write about.</p>
  33. <p>However, I wrote <a href="">an article</a> over a year ago concerning a rare issue where a series of directory renames gets "confused".  This issue has hit us twice in the last three days.</p>
  35. <p>Perhaps now that the old team reassembled for VSI is back together, someone will be able to solve this.</p>]]></content>
  36. <category term="/openvms" scheme="" label="OpenVMS" />
  37. <id></id>
  38. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  39. <published>2015-06-26T18:10:45Z</published>
  40. <updated>2015-08-06T01:50:27Z</updated>
  41. </entry>
  42. <entry>
  43. <title type="text">HP World in Sydney</title>
  44. <summary type="html" xml:lang="en">HP World Tour is coming to Sydney on the 28th of August.  I&apos;m registered and attending if you anyone wants to catch up face to face.</summary>
  45. <content type="html"><![CDATA[<p>HP World Tour is coming to Sydney on the 28th of August.  I'm registered and attending if you anyone wants to catch up face to face.</p>]]></content>
  46. <category term="/hewlett_packard" scheme="" label="Hewlett Packard" />
  47. <id></id>
  48. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  49. <published>2014-07-23T07:08:02Z</published>
  50. <updated>2014-08-05T09:37:39Z</updated>
  51. </entry>
  52. <entry>
  53. <title type="text">System logical name changes</title>
  54. <summary type="html" xml:lang="en">Here&apos;s a command procedure that run daily, will provide you with a nice email listing additions, deletions, and modifications to the system logical name table.</summary>
  55. <content type="html"><![CDATA[<p>Here's a command procedure that run daily, will provide you with a nice email listing additions, deletions, and modifications to the system logical name table.</p>]]></content>
  56. <category term="/openvms" scheme="" label="OpenVMS" />
  57. <id></id>
  58. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  59. <published>2014-06-16T06:21:00Z</published>
  60. <updated>2014-07-22T13:09:35Z</updated>
  61. </entry>
  62. <entry>
  63. <title type="text">Rename weirdness</title>
  64. <summary type="html" xml:lang="en">Sometimes a directory rename doesn&apos;t?</summary>
  65. <content type="html"><![CDATA[<p>Consider the following directory structure:</p>
  67. <pre>
  69. $ dir my_disk:[top.branch...]
  71. Directory MY_DISK:[top]
  73. branch.DIR;1
  75. Total of 1 file.
  77. Directory MY_DISK:[top.branch]
  79. archive.DIR;1       report1.rep;1       report2.rep;1
  81. Total of 3 files.
  83. Directory MY_DISK:[top.branch.archive]
  85. 20140611.DIR;1      20140612.DIR;1
  87. Total of 2 files.
  89. Grand total of 3 directories, 6 files.
  91. </pre>
  93. <p>During the day, a large number of reports are created in MY_DISK:[TOP.BRANCH].</p>
  95. <p>The goal of the following set of DCL commands is to move these files to a directory called MY_DISK:[TOP.BRANCH.ARCHIVE.20140613]:</p>
  97. <pre>
  98. $ set prot=o:rwed my_disk:[top.branch]archive.dir
  99. $ rename my_disk:[top.branch]archive.dir my_disk:[top]branch_archive.dir
  100. $ set prot=o:rwed my_disk:[top]branch.dir
  101. $ rename my_disk:[top]branch.dir my_disk:[top.branch_archive]20140613.dir
  102. $ create/dir my_disk:[top.branch]
  103. $ rename my_disk:[top]branch_archive.dir my_disk:[top.branch]archive.dir
  104. </pre>
  106. <p>Now imagine there are 80+ BRANCH.DIR directories (with different names of course) and we have that sequence of commands execute in parallel jobs, one for each directory.</p>
  108. <p>The vast majority of the time, this works fine.  However, on the odd occasion, the CREATE/DIR command says that the directory already exists, even though the preceding RENAME has returned a success status.</p>
  110. <p>After the CREATE/DIR, the next RENAME also succeeds, however, right afterwards, the BRANCH.DIR directory has mysteriously gone missing!  The directory is only then recoverable by performing an ANALYZE/DISK/REPAIR.</p>
  112. <p>This is on I64 8.4 with UPDATE-V0800, FIBRE_SCSI-V0500, RMS-V0400, and SYS_V0300.</p>
  114. <p>The underlying ODS-5 disk is a two member shadow set that a SET VOLUME/CACHE=NODATA has been issued against (the disk is 99.9% write) mounted on all nodes of a five member cluster.</p>
  116. <p>I've logged a call with HP against this.</p>
  117. ]]></content>
  118. <category term="/openvms" scheme="" label="OpenVMS" />
  119. <id></id>
  120. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  121. <published>2014-06-13T06:15:46Z</published>
  122. <updated>2014-07-22T13:09:35Z</updated>
  123. </entry>
  124. <entry>
  125. <title type="text">NRPE on OpenVMS</title>
  126. <summary type="html" xml:lang="en">Trials and tribulations of making NRPE work on OpenVMS.</summary>
  127. <content type="html"><![CDATA[<p>I have a pretty extensive <a href="">Nagios</a> setup here, that monitors everything from network links, OpenVMS services, Windows server availability, and Linux.</p>
  129. <p>Because I haven't installed <abbr title="Nagios Remote Plugin Executor">NRPE</abbr> on Windows as I don't manage those boxes, some people in the Windows Team have recently been looking at Microsoft's SCOM product.  I thought I better demo NRPE, at least on OpenVMS.</p>
  131. <p>I got the <a href="">OpenVMS NRPE kit</a>, but this code seems to be fairly old (no IA64 references).  But as all the code was there, it appeared to build just fine on IA64.</p>
  133. <p>Unfortunately, there are a couple of "gotchas" in the kit, both in the documentation, and in the implementation.  First, let's fix a bug in the code that of course only rears its head when you set the DEBUG flag in NRPE.CFG to 1 (which you want to do when you are initially configuring the service).</p>
  135. <p>The bug is in the CUSTOM.C module.  Replace this source:</p>
  137. <pre>
  138. void syslog(int priority, char *message, ...){
  139.        char buffer[MAX_INPUT_BUFFER];
  140.        va_list arguments;
  142.        va_start(arguments, message);
  144.        sprintf(buffer, message, va_arg(arguments, char *));
  145.        printf("%d: %s\n", priority, buffer);
  147.        va_end(arguments);
  148. }
  149. </pre>
  151. <p>With this:</p>
  153. <pre>
  154. void syslog(int priority, char *message, ...){
  155.        char buffer[MAX_INPUT_BUFFER];
  156.        va_list arguments;
  158.        va_start(arguments, message);
  160.        vsprintf(buffer, message, arguments);
  161.        printf("%d: %s\n", priority, buffer);
  163.        va_end(arguments);
  164. }
  165. </pre>
  167. <p>This prevents an access violation if there are no optional arguments (the result of a va_arg on nonexistent arguments is undefined in the C specification).</p>
  169. <p>The other unfortunate bit is a combination of the documentation, that advises you to create logical names containing a dollar sign (which is <a href="">generally not recommended</a>); and omissions in the configuration file.</p>
  171. <p>Because the documentation tells you to create a logical containing a dollar sign, you have to specify command definitions that will be examined for macro substitution with an escaped dollar sign ($$) as the dollar sign is the macro introducer in Nagios.</p>
  173. <p>If you look in the NRPE.CFG file supplied in the kit, you will see this is commands such as</p>
  175. <pre>
  176. command[check_test][email protected]$$
  177. </pre>
  179. <p>But just below this is</p>
  181. <pre>
  182. command[check_cpu][email protected]$ CPU
  183. </pre>
  185. <p>which only supplies a single dollar sign.  Because of this, the macro processor assumes you've carelessly left a trailing dollar sign off and supplies you with one.  The command finally executed is</p>
  187. <pre>
  188. @nrpe$ CPU$
  189. </pre>
  191. <p>which doesn't work.</p>
  193. <p>To fix, simply add the extra dollar sign in the NRPE.CFG file (or better yet, ignore the documentation and don't use a dollar sign in your logical names at all).</p>]]></content>
  194. <category term="/systems_management" scheme="" label="Systems Management" />
  195. <id></id>
  196. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  197. <published>2014-04-30T06:14:11Z</published>
  198. <updated>2014-05-15T07:30:54Z</updated>
  199. </entry>
  200. <entry>
  201. <title type="text">Poor man&apos;s PCA</title>
  202. <summary type="html" xml:lang="en">Description of a solution I came up with to automatically collect program counter information in an executable image, with links to the source code.</summary>
  203. <content type="html"><![CDATA[<p>As part of DECset, HP have a really useful bit of software called the Performance and Coverage Analyzer (PCA).  The program is capable of recording <abbr title="program counter">PC</abbr> information, and then displaying the corresponding lines of source code that the frequently recorded PCs belong to.  Unfortunately, I don't have a license.</p>
  205. <p>So, how do I get a program to record its program counter on a regular basis?  Read on.</p>]]></content>
  206. <category term="/programming" scheme="" label="Programming" />
  207. <id></id>
  208. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  209. <published>2014-03-20T03:59:49Z</published>
  210. <updated>2014-05-06T11:55:00Z</updated>
  211. </entry>
  212. <entry>
  213. <title type="text">Holidays</title>
  214. <summary type="html" xml:lang="en"><![CDATA[Having experienced zero issues due to <a href="">moving production</a> recently, I'm going on holidays.  Expect no updates for at least a month :)]]></summary>
  215. <content type="html"><![CDATA[<p>Having experienced zero issues due to <a href="">moving production</a> recently, I'm going on holidays.  Expect no updates for at least a month :)</p>]]></content>
  216. <category term="/personal" scheme="" label="Personal" />
  217. <id></id>
  218. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  219. <published>2014-02-14T02:47:10Z</published>
  220. <updated>2014-04-08T07:53:17Z</updated>
  221. </entry>
  222. <entry>
  223. <title type="text">Moving production</title>
  224. <summary type="html" xml:lang="en"><![CDATA[After months of setup, we finally successfully relocated the main machines that support our <abbr title="Enterprise Resource Planning">ERP</abbr> application to the new data centre today.]]></summary>
  225. <content type="html"><![CDATA[<p>After months of setup, we finally successfully relocated the main machines that support our <abbr title="Enterprise Resource Planning">ERP</abbr> application to the new data centre today.</p>
  227. <p>We actually attempted this back in October, but we had to roll back after a very strange hardware issue that didn't appear to be a hardware issue.  A mezzanine fibrechannel card reported all in the green, but irregardless of what we tried, failed to recognise the disks.  After fighting this with everything we could think of (array setup, FC switch setup and zoning, Virtual Connect setup, host hardware, first and second level support from HP), and compounded by some poor network support from the CoLo, we rolled back.</p>
  229. <p>When we got back to the original data centre, and after talking to HP third level support, it was realised that the fibrechannel card was showing bizarre numbers for the <abbr title="World Wide Name">WWN</abbr>s.  We deleted the Virtual Connect profile associated with the blade, and recreated it, and while the WWNs now looked appropriate, the card would <em>still</em> not see the drives.  In desperation, we replaced the card, and everything came good.  Everyone breathed a huge sigh of relief.</p>
  231. <p>On reflection, we should have suspected the card was dodgy before we rolled back, as we had HP engineers on site with spares in case anything like this actually happened.  </p>
  233. <p>When we came to do the move again today (this time armed with the offline diagnostics tool, just in case), everything went much more smoothly.  Let's hope we have no bedding down issues when the full production load comes on on Tuesday morning.</p>]]></content>
  234. <category term="/systems_management" scheme="" label="Systems Management" />
  235. <id></id>
  236. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  237. <published>2014-01-26T12:28:15Z</published>
  238. <updated>2014-04-08T07:53:17Z</updated>
  239. </entry>
  240. <entry>
  241. <title type="text">VMS$BUFFER_OBJECT_USER</title>
  242. <summary type="html" xml:lang="en">Unless the VMS$BUFFER_OBJECT_USER identifier has a specific value, system services that require the identifier return with a misleading error.</summary>
  243. <content type="html"><![CDATA[<p>A few pieces of code on this site use buffered objects for fast I/O.  For example, <a href="examples/framework.php?file=sys_fastio.c">this programming example</a>.</p>
  245. <p>Comments in the code note that you must have the VMS$BUFFER_OBJECT_USER identifier granted to your process or the code will fail to run.  This is all nicely documented in various manuals on the documentation set, probably most comprehensively in <a href="">this section of the "Programming Concepts Manual"</a>.</p>
  247. <p>But:</p>
  249. <pre class="code">
  250. <code class="language-dcl">
  251. $ show proc/rights
  253. 10-JAN-2014 13:06:45.09   User: XXX              Process ID:   20202096
  254.                          Node: XXXXXX            Process name: "xxx"
  256. Process rights:
  257. XXX                               resource
  259. REMOTE
  264. System rights:
  267. Soft CPU Affinity: off
  268. $ run test
  269. sys$create_bufobj claims you don't have the VMS$BUFFER_OBJECT_USER identifier!
  270. $
  271. </code>
  272. </pre>]]></content>
  273. <category term="/openvms" scheme="" label="OpenVMS" />
  274. <id></id>
  275. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  276. <published>2014-01-10T02:19:11Z</published>
  277. <updated>2014-03-19T08:44:20Z</updated>
  278. </entry>
  279. <entry>
  280. <title type="text">CPUSPINWAIT crash</title>
  281. <summary type="html" xml:lang="en">A couple of weeks ago, we experienced a CPUSPINWAIT crash.  Initial investigation indicates that the crash occurred in a call to SYS$ICC_ACCEPT() while waiting to get spinlock IOLOCK8.</summary>
  282. <content type="html"><![CDATA[<p>A couple of weeks ago, we experienced a CPUSPINWAIT crash.  Initial investigation indicates that the crash occurred in a call to SYS$ICC_ACCEPT() while waiting to get spinlock IOLOCK8.</p>
  284. <p>Because of the call to Intra-Cluster Communication services, HP initially recommended applying patch VMS84I_IPC-V0200.  But after I pointed out that the release notes for that patch mention "waiting for the SCHED spinlock" and not the IOLOCK8 spinlock, I insisted that further crash analysis be performed.</p>
  286. <p>At the moment, it appears that the crash is a close relation of the one solved by the above patch, but is certainly not the same crash.</p>
  288. <p>Engineering is presently investigating.</p>
  290. <p>Here's the crash footprint:</p>
  292. <pre>
  293. Crash Time:        15-NOV-2013 16:31:10.90
  294. Bugcheck Type:     CPUSPINWAIT, CPU spinwait timer expired
  295. Node:              xxxxxx  (Cluster)
  296. CPU Type:          HP BL860c  (1.59GHz/9.0MB)
  297. VMS Version:       V8.4
  298. Current Process:   BATCH_1008254
  299. Current Image:     DSA34:[EXE]xxxxx.EXE;5
  300. Failing PC:        FFFFFFFF.80263C20    SMP$TIMEOUT_C+00170
  301. Failing PS:        00000000.00000800
  302. Module:            SYSTEM_SYNCHRONIZATION_MIN    (Link Date/Time:  3-SEP-2010 12:46:50.40)
  303. Offset:            00010F20
  305. Boot Time:         21-OCT-2013 09:50:42.00
  306. System Uptime:              25 06:40:28.90
  307. Crash/Primary CPU: 3./0.
  308. System/CPU Type:   4020
  309. Saved Processes:   1056
  310. Pagesize:          8 KByte (8192 bytes)
  311. Physical Memory:   20479 MByte (134742016 PFNs, discontiguous memory)
  312. Dumpfile Pagelets: 5243425 blocks
  313. Dump Flags:        olddump,writecomp,errlogcomp
  314. Dump Type:         compressed,selective,dosd,shared_mem
  315. EXE$GL_FLAGS:      poolpging,init,bugdump,tbchk
  316. Paging Files:      1 Pagefile and 0 Swapfiles installed
  318. Stack Pointers:
  319. KSP = 00000000.7FF43E10   ESP = 00000000.7FF68000   SSP = 00000000.7FFAC000
  320. USP = 00000000.7AB0B960
  322. General Registers:
  323. R0  = 00000000.00000000   GP  = FFFFFFFF.AD8EE800   R2  = 00000000.7FF43E00
  324. R3  = 00000007.57A0E823   R4  = 00000000.00000043   R5  = FFFFFFFF.8C9CB080
  325. R6  = 00000000.885A49B8   R7  = FFFFFFFF.896B2D00   R8  = 00000000.00000000
  326. R9  = 00000000.00000002   R10 = 00000000.8813C470   R11 = FFFFFFFF.8825CC00
  327. SP  = 00000000.00000000   TP  = 00000000.7B30E1C8   R14 = 00000000.00000000
  328. R15 = FFFFFFFF.AD6EE968   R16 = FFFFFFFF.8019A6C0   R17 = 00000000.0000078C
  329. R18 = 00000000.00000000   R19 = 00000000.0000078C   R20 = FFFFFFFF.AD6EE300
  330. R21 = 00000000.7FF43E38   R22 = FFFFFFFF.8825E1A8   R23 = FFFFFFFF.AD022EA0
  331. R24 = 00000000.00000000   AI  = 00000000.00000003   RA  = 00000000.8813A480
  332. PV  = 00000000.0000FBA6   R28 = FFFFFFFF.8A5D6EC0   FP  = 00000000.7FF43EC0
  333. R30 = FFFFFFFF.AD6EE300   R31 = 00000000.00000000
  335. CPUSPINWAIT Bugcheck:
  336. Cause:                  timeout processing IPINT and/or acquiring spinlock
  337. Spinlock name:          IOLOCK8/SCS
  338. Spinlock address:       AD6EE300
  339. Spinlock owner CPU Id:  02
  340. Crash CPU Id:           03
  342. CPU Id    CPUDB       BugCode            State       WorkReq                     Interrupted PC
  343. ------    --------    ---------------    --------    ------------------------    ---------------------------------------
  344.  00      880E2000    CPUSPINWAIT        Run         bugchk
  345.  01      88258C80    CPUSPINWAIT        Stopped     bugchk
  346.  02      8825AC00    CPUEXIT            Stopped     &lt;none&gt;
  347.  03      8825CC00    CPUSPINWAIT        Stopped     &lt;none&gt;
  349. System Registers:
  350. Page Table Base Register (PTBR)                           00000000.0010D950
  351. Processor Base Register (PRBR)                            FFFFFFFF.8825CC00
  352. Privileged Context Block Base (PCBB)                      FFFFFFFF.B0142080
  353. System Control Block Base (SCBB)                          00000000.00000000
  354. Software Interrupt Summary Register (SISR)                00000000.00000180
  355. Address Space Number (ASN)                                00000000.002788F6
  356. AST Summary / AST Enable (ASTSR_ASTEN)                    00000000.0000000F
  357. Floating-Point Enable (FEN)                               00000000.00000001
  358. Interrupt Priority Level (IPL)                            00000000.00000008
  359. Machine Check Error Summary (MCES)                        00000000.00000000
  360. Virtual Page Table Base Register (VPTB)                   00000000.00000000
  362. Failing Instruction:
  363. SMP$TIMEOUT_C+00170:              break.m     100002
  365. Instruction Stream (last 20 instructions):
  366. SMP$TIMEOUT_C+00120:              mov         r8 = r58
  367. SMP$TIMEOUT_C+00121:              mov.i       ar.pfs = r56
  368. SMP$TIMEOUT_C+00122:              nop.b       000000 ;;
  369. SMP$TIMEOUT_C+00130:              nop.m       000000
  370. SMP$TIMEOUT_C+00131:              nop.f       000000
  371. SMP$TIMEOUT_C+00132:              br.ret.sptk.many b0 ;;
  372. SMP$TIMEOUT_C+00140:              add         r19 = 200140, r1
  373. SMP$TIMEOUT_C+00141:              mov         r22 = r17
  374. SMP$TIMEOUT_C+00142:              nop.i       000000 ;;
  375. SMP$TIMEOUT_C+00150:              ld8         r19 = [r19] ;;
  376. SMP$TIMEOUT_C+00151:              or          r19 = 04, r19
  377. SMP$TIMEOUT_C+00152:              nop.i       000000 ;;
  378. SMP$TIMEOUT_C+00160:              nop.m       000000
  379. SMP$TIMEOUT_C+00161:              sxt4        r17 = r19
  380. SMP$TIMEOUT_C+00162:              nop.b       000000 ;;
  381. SMP$TIMEOUT_C+00170:              break.m     100002
  382. SMP$TIMEOUT_C+00171:              mov         r17 = r22
  383. SMP$TIMEOUT_C+00172:              nop.i       000000 ;;
  384. SMP$TIMEOUT_C+00180:              break.m     100003
  385. SMP$TIMEOUT_C+00181:              nop.f       000000
  386. SMP$TIMEOUT_C+00182:              nop.i       000000 ;;
  387. SMP$INIT_SANITY_C:                alloc       r41 = ar.pfs, 11, 00, 00
  388. SMP$INIT_SANITY_C+00001:          add         r15 = 2000B0, r1
  389. SMP$INIT_SANITY_C+00002:          mov         r47 = r7
  390. SMP$INIT_SANITY_C+00010:          mov         r46 = r6 ;;
  391. </pre>]]></content>
  392. <category term="/openvms" scheme="" label="OpenVMS" />
  393. <id></id>
  394. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  395. <published>2013-12-05T01:21:44Z</published>
  396. <updated>2014-01-09T08:38:09Z</updated>
  397. </entry>
  398. <entry>
  399. <title type="text">SYS$ACM changed behaviour?</title>
  400. <summary type="html" xml:lang="en">Has SYS$ACM(W) changed behavior in recent versions of OpenVMS?</summary>
  401. <content type="html"><![CDATA[<p>Hoff posted on C.O.V concerning <a href="!topic/comp.os.vms/2isZplU2FhM">an issue with SYS$ACM(W)</a>.  While I didn't think my example program that demonstrates how to use this system service to change a password would have the issue he was talking about, I thought I better test it anyway.</p>
  403. <p>I didn't experience the issue he raised, but to my utter surprise, the code failed to work at all and returned a CONTACTSYSMGR error message.  On looking in the ACME log, I found a message indicating that the item list did not contain the ACME$_LOGON_TYPE item code.</p>
  405. <p>Which is weird because the manual says (and I quote) "If not specified, the value defaults to the logon type of the calling process".</p>
  407. <p>Well yes, it appears to have done so in the past.  But not any more. I looked though the release notes and can find no reference to this behaviour change.</p>
  409. <p>I really don't like undocumented changes in behaviour.  And to make matters worse, OpenVMS Engineering <em>still</em> haven't fixed the <a href="">documentation feedback form</a> that produces a page not found error when you hit the submit button.</p>]]></content>
  410. <category term="/programming" scheme="" label="Programming" />
  411. <id></id>
  412. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  413. <published>2013-10-25T01:56:41Z</published>
  414. <updated>2013-11-13T06:26:00Z</updated>
  415. </entry>
  416. <entry>
  417. <title type="text">ACLSEARCH X01-07</title>
  418. <summary type="html" xml:lang="en">A new version of ACLSEARCH has been released.  A fix suggested by Tony McGrath has been incorporated to handle long ACLs correctly, and I&apos;ve done some reworking of the &quot;Does this ACE match?&quot; logic.</summary>
  419. <content type="html"><![CDATA[<p>I've just released a new version of ACLSEARCH.  This utility has recently seen extensive use  by Tony McGrath.  Tony has not only been finding issues with my DCL, but he uncovered a really interesting bug in ACLSEARCH.</p>
  421. <p>Turns out that because ACE's can't span headers if they overflow into extension headers, the file system will leave unused space at the end of the ACL area, <em>and describe the unused space as valid</em>.</p>
  423. <p>The difference between two file header variables describe the length of the ACL area: <code>FH2$B_RSOFFSET</code> and <code>FH2$B_ACOFFSET</code>.</p>
  425. <p>Both of these are a count of the number of 16 bit words, so we need to multiply by 2 to obtain the number of bytes for the ACL area.</p>
  427. <p>The interesting bit is that if you take the <code>ACE$B_SIZE</code> values for the (valid) ACEs in the area and add them all up, it may or may not equal the difference of the two header variables.  This was confusing the code, to put it mildly.</p>
  429. <p>Tony came up with a good suggestion that corrected the issue, and the new version incorporates his mods.  I've also reworked some of the more esoteric "does this ACE match?" logic that I'd previously coded, but never personally needed (so I didn't test it very well ;-)</p>]]></content>
  430. <category term="/programming" scheme="" label="Programming" />
  431. <id></id>
  432. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  433. <published>2013-10-01T02:05:58Z</published>
  434. <updated>2013-11-13T06:26:00Z</updated>
  435. </entry>
  436. <entry>
  437. <title type="text">3PAR now fully supported</title>
  438. <summary type="html" xml:lang="en">HP announce full support for 3PAR on IA64 OpenVMS.</summary>
  439. <content type="html"><![CDATA[<p>HP have just announced the full support of 3PAR storage arrays.  The following is supported:</p>
  441. <div class="text-list">
  442. <ul>
  443. <li>HP 3PAR StoreServ 7200</li>
  444. <li>HP 3PAR StoreServ 7400</li>
  445. <li>HP 3PAR StoreServ 7450</li>
  446. <li>HP 3PAR StoreServ 10400</li>
  447. <li>HP 3PAR StoreServ 10800</li>
  448. </ul>
  449. </div>
  450. <p>running OS 3.1.2 MU2 on IA64 OpenVMS 8.3-1H1 and 8.4.</p>
  452. ]]></content>
  453. <category term="/storage_area_networks" scheme="" label="Storage Area Networks" />
  454. <id></id>
  455. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  456. <published>2013-08-30T23:25:58Z</published>
  457. <updated>2013-10-09T02:14:28Z</updated>
  458. </entry>
  459. <entry>
  460. <title type="text">Bespoke dashboard</title>
  461. <summary type="html" xml:lang="en">A description of a little application and infrastructure dashboard I whipped up.</summary>
  462. <content type="html"><![CDATA[<p>Obviously, the central application that my employer runs is still running on OpenVMS (or I'd probably be out of a job).  When a standardised monitoring solution was chosen for implementation here, not a lot of notice was paid to monitoring OpenVMS and consequently, the monitoring solution that was chosen had no operating system specific agent to support the platform.</p>
  464. <p>The monitoring solution does however support SNMP, but when we asked the consultants who were hired to configure the monitoring solution to support a simple dashboard for the central application, it all proved too difficult for them.</p>
  466. <p>Recently, I put a proof of concept dashboard together from a number of tools that I was already using, and a custom MIB to describe some parts of the application.</p>]]></content>
  467. <category term="/systems_management" scheme="" label="Systems Management" />
  468. <id></id>
  469. <link rel="alternate" href="" type="application/xhtml+xml" hreflang="en" />
  470. <published>2013-08-28T01:30:44Z</published>
  471. <updated>2014-02-06T09:56:19Z</updated>
  472. </entry>
  474. </feed>

If you would like to create a banner that links to this page (i.e. this validation result), do the following:

  1. Download the "valid Atom 1.0" banner.

  2. Upload the image to your own server. (This step is important. Please do not link directly to the image on this server.)

  3. Add this HTML to your page (change the image src attribute if necessary):

If you would like to create a text link instead, here is the URL you can use:

Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda