go to post Robert Cemper · Oct 15, 2022 Just as described here you need to check the already used connections.
go to post Robert Cemper · Oct 15, 2022 and code quality will struggle with it and dislike it because you use name in write, but you don't set it explicitly but don't care much about:it doesn't understand %-variables and global variable scopesand $$$macros with code inside, and ... and ... and
go to post Robert Cemper · Oct 14, 2022 to get control over your situation you have 2 key methods: $SYSTEM.License.MaxConnections() returns the maximum number of connections a user can make while consuming one license unit. $SYSTEM.License.ConnectionCount() returns the number of connections currently associated with the given UserIdentifier. The range of return values is normally 0 through MAXCONNECTIONS. If the value exceeds MAXCONNECTIONS then more than the allowable number of concurrent connections were attempted for a given ID and the system has transitioned to a mode of one connection per license for this UserIdentifier. So you have to check if your user has exhausted its available connections and block him.It's anyhow quite interesting how these users are able to trigger so many connections.
go to post Robert Cemper · Oct 14, 2022 This is intentional behavior.If the routine you changed calls some subroutine it is kept "on the stack"This is a requirement to have a save return and continuation after the call. The new version only becomes active after you have left the previous one by QUIT or RETURN.simpler: if it is gone from the return path.
go to post Robert Cemper · Oct 13, 2022 I share your suggestion! When I started with Docker I was highly skeptical after many years with VMware starting before their first release.It was a hard exercise and I took quite a while digging through docs and helps.My main problem was that everything was so generic and not at all specific to IRIS (or Caché). Meanwhile, it became so common to me that I stopped running reviews on packages without docker.Docker allowed me to have a "clean desk" after testing.In addition. I saw through this activity so many valid variations thatI doubt to decide how to start and where.On the other hand, I see in OEX ~450 tested and working examples (a dozen PR still pending) Following these examples and trying to understand what will be achievedcould be good food for training designers.
go to post Robert Cemper · Oct 11, 2022 You may have only 1 command: in each buildthe 2nd overwrites the first iris: image: intersystemsdc/iris-community:latest command: --check-caps false container_name: tls-ssl-iris networks: app_net: ipv4_address: 172.16.238.20 volumes: - ./iris-config-files:/opt/config-files # Mount certificates files. - ./certificates/CA_Server.cer:/usr/irissys/mgr/CA_Server.cer - ./certificates/iris_server.cer:/usr/irissys/mgr/iris_server.cer - ./certificates/iris_server.key:/usr/irissys/mgr/iris_server.key hostname: iris # Load the IRIS configuration file ./iris-config-files/iris-config.json command: ["-a","sh /opt/config-files/configureIris.sh"] this worked as multi-line command: - -a - sh /opt/config-files/configureIris.sh - --check-caps false BUT command: ["-a","sh /opt/config-files/configureIris.sh","--check-caps false"] works as well
go to post Robert Cemper · Oct 11, 2022 nothing prevents you to load this script at runtime from server. <script src="myscripts.js"></script> from w3schools.com https://www.w3schools.com/tags/att_script_src.asp So you are outside your Caché
go to post Robert Cemper · Oct 8, 2022 I do the same exercise in my package GlobalToJSON-ePython-pure it should be basically sufficient to replace the JSON packing + writing by print(...)see >>> def node(nd,nxt,fil):
go to post Robert Cemper · Oct 8, 2022 in my various examples I took these strategies: try to run the Py code in PY shell in a REAL terminal or docker command line console error messages directly from the shell are much more useful insert temporary print(...) statements at suspicious points what I see by COS <THROW> is often more obfuscation than a hint to my experience, your 'KeyError' indicates that you try to get a valuefrom a non-existing global or subscript. in COS it would be <UNDEF>
go to post Robert Cemper · Oct 6, 2022 in my package GlobalToJSON-ePython-pureI developed this workaround: #; simulate $data() for existence and content def Ddata(gref): val = None _d = 11 #; check for subscripts o=gref.order([]) if o == None: _d -= 10 try: val=gref.get([]) except KeyError: #; no value @ top node _d -= 1 return [_d,val]
go to post Robert Cemper · Oct 4, 2022 NIce you share a picture of a PDP11 ! a few of my heroes: Prof. Heinz Zemanek one of my teachers at university Terry Ragon Neil Pappalardo --- I know also some handicapped developers.BUT: I find it highly insensitive and inadequate to drop their names in this forum
go to post Robert Cemper · Oct 4, 2022 Vikings Dr.Shivago Metropolis (F.Lang ,1925/26) Gone with the Wind (1939) Convoy
go to post Robert Cemper · Oct 4, 2022 mountain climbing long distance walking practicing foreign languages studying astrophysics, cosmology, nucelar physics, anthropology, geology
go to post Robert Cemper · Oct 4, 2022 Any sport that requires mental concentration. eg. mountain climbing, And I mean REAL climbing, not just moving your body somehow across nature.
go to post Robert Cemper · Oct 4, 2022 first I check the logical qualification - e.g. playing chess next check the skills in estimating results of simple mathematical calculations or simple mechanical ckecks or puzzle strategies (without paper and pencil) next, I observe the operation of their mobile phone and ask for explanations the very last might be t take a look into suggestions like yours With 2 very successful sons in software, internet, and project engineering (49yrs. + 36yrs.)I have a valid benchmark for my strategy.
go to post Robert Cemper · Oct 4, 2022 A real software developer doesn't care about the hardware or operating system.Specific hardware is a subject for gamers.
go to post Robert Cemper · Sep 28, 2022 I enjoy to solve what was declared to be IMPOSSIBLE before.I dislike it if it turns out that issue was just a fake and nobody cares about my creations.
go to post Robert Cemper · Sep 26, 2022 Not of importance but interesting observation anyhow.$ZPI differs in the last 3 digits .$ZPI is right according to Wiki write "3.141592653589793116 PY",!,$ZPI_" IRIS",! 3.141592653589793116 PY 3.141592653589793238 IRIS
go to post Robert Cemper · Sep 25, 2022 --progress plain This is essential information.Without it the building log just runs though with no chance for a rollbackand iris.script allows a lot of temporary debugging info.