Active Threads | Active Posts | Unanswered Today | Since Yesterday | This Week
Program Development Jump to new posts
Re: XTREE: hide if no data Jack McGregor 30 Apr 24 08:52 PM
Oh well. I thought maybe I was in line for a kickback, or perhaps some kind of bidirectional pop-up ad promotion? (It's easy to imagine A-Shell developers starting at our HH topic in the AshRef and clicking on the HH Madeira pop-up ad; it might be a bit more challenging to lure wine shoppers over to XTREE. But they'll be glad they did!)
7 65 Read More
Program Development Jump to new posts
Re: Compiler error Jack McGregor 25 Apr 24 03:27 PM
Here's a beta release of the update that fixes this problem:

ash-7.0.1757.5-el7-upd.tz
ash70notes.txt

And although it's not related to the compiler issue and not specific to this version, this update of the ashnet library is recommended:

libashnet.so.1.14.194-el7.tz
19 102 Read More
Program Development Jump to new posts
Re: ++include'once compile performance question Jack McGregor 24 Apr 24 09:11 PM
For what it's worth, along with the fix for the ++IFDEF <structname> issue (discussed here), I've added the following stats to the end of the LSX file in the hopes of perhaps making it easier to identify compiler performance issues, or at least quantify them. (This is from your prccstdsp program compiled under Windows) ...
Code
Performance Statistics *:
======================================================
Phase 0 (/p, /px prescan):        3.2812 secs
Shake out unused routines (/px):  0.0312 secs (3614 kept, 7717 dropped)
Phase 1 (main compilation):       2.8906 secs
Phase 2 (emit RUN code):          0.1406 secs
Total elapsed time:               16.4653 secs

Labels/Functions: 99984 searches, 312.5000 ms
Symbol Definitions: 1150955 searches, 4218.7500 ms
Variable Definitions: 261632 searches, 937.5000 ms
Structure Definitions: 15041 searches, 0.0000 ms

* Total elapsed time should be accurate. All other time values are based on
  the Windows kernel + user CPU clock counters, theoretically measuring
  CPU rather than elapsed time, but may not be precise enough to measure
  individual searches accurately.

As the asterisked note indicates, unfortunately, measuring the time used in routines that take almost no time per call, but which get called tens of thousands of times, potentially adding up to real time, is not very reliable when the time for a single call isn't significantly longer than the clock resolution. The Windows CPU clocks use 100-nanosecond units, but it's not clear whether the actual resolution is that fine, or whether, for example, each search for a structure name in the structure definition index takes significantly less than that, thus making it look like the 15041 searches took no time at all. Also, the total CPU time for the 4 search routines itemized is very close to the total CPU time for the entire compilation, which is ridiculous, because there's a lot of other code in the compilation that wasn't being separately itemized. So that strongly implies that whether or not a routine gets properly measured is a bit like Russian Roulette (either it gets off for free because the clock didn't change, or it gets hit with a big charge, most of which should have gone against prior routines.

Another detail which stands out is that the initial pre-scan (Phase 0) actually took longer than the main compilation (Phase 1), which surprised me. Partly that may be because the pre-scan had to look at 3 times as many routines as the main scan. And partly it may be because the pre-scan is having to build these various index trees, offloading some of the work from the main scan (which mostly then was doing a lot of searches of those trees). Or maybe there is some inefficiency there which needs to be squeezed out. But here we can't blame the clock resolution because it's measuring once at the start and once at the end of each phase (which are plenty long enough to make the clock resolution a non issue).

Another surprising result is that the total elapsed time is so much more than the CPU time. That suggests that the OS devoted almost 2/3 of its time to other background processes. (Not entirely out of the question, especially with Windows, but still a bit surprising.)

Anyway, I'll probably post the update later tonight or tomorrow, but now that you have your workaround, and considering how apparently rare it is for the original problem to actually be triggered, it's not clear there's any urgency.
3 38 Read More
Program Development Jump to new posts
Re: B64ENC Limit John Andreasen 23 Apr 24 05:44 PM
OK, that is great. Thank you Jack
7 44 Read More
Program Development Jump to new posts
Re: FTPDLX -> FTP2 Jack McGregor 23 Apr 24 05:54 AM
I found another FTP2 bug related to the XFTPF_RENAME, XFTPF_DEL and XFTPF_RMVEXT opcodes; the fix is in 1757.4 ...

ash-7.0.1757.4-el7-upd.tz
ash70notes.txt
5 45 Read More
Program Development Jump to new posts
Re: Demonstation Mode issue Frank 22 Apr 24 02:46 PM
Thanks for the headsup!
2 27 Read More
Program Development Jump to new posts
Re: GDI on Linux Jack McGregor 17 Apr 24 09:54 PM
I haven’t actually tried it but have my doubts. First, it requires not just any device context but specifically a printer driver. And in the case of PDF, our implementation requires ActivX, which I am led to believe is not really supported. The PDFX driver is also rather finicky about wanting a user (rather than server) context.
2 34 Read More
Program Development Jump to new posts
Re: XTREE issue after 1756.7 Jack McGregor 16 Apr 24 10:16 PM
Sadly, 1756.7 was the version that fixed a previous issue you had reported. But because it happened in parallel with some several other changes, it didn't get released separately until 1757.0. So it sounds like along with several fixes, we got a couple of unwanted Easter Eggs.

I'll try to reproduce those problems here and will let you know if I need your help.
1 23 Read More
ASQL Jump to new posts
Re: MySQL connector Windows Jack McGregor 11 Apr 24 11:07 PM
I got the ODBC connector working on the Windows Server 2022 also. The issue there was that you had apparently installed the 8.3 version of the ODBC connector, but that version doesn't include the 32 bit connector. (That's why it didn't show up in the list of Data Sources.) I reinstalled the 8.0.36 version and now I was able to create the Data Source and connect to it from A-Shell. And I didn't need to run as administrator either. (So it's still a mystery what that issue is on the other machine.)

What remains is to get the A-Shell native MySQL connectors working. The problem there is that I haven't produced the '8' version of libashmysql (libashmysql8.dll) for Windows yet, and the existing libashmysql.dll appears not to be compatible with the MySQL 8 connector. You can probably get around that by downloading an older version, but I'm not sure which version you need. It makes more sense for me to create the libashmysql8.dll (which we do already have for Linux). However, you can probably do everything you want with the ODBC interface. (In fact, since you're already familiar with it, it might actually make more sense. XCALL SQL should work pretty much the same with either connector, but there are subtle differences that might snag you if switching between them.)
11 118 Read More
Environment - Windows Jump to new posts
Re: Demonstation Mode issue Jack McGregor 10 Apr 24 05:52 PM
Agreed. Ty and I have come up with a couple of solutions. He's going to email you to let you decide the best approach.
40 769 Read More
ASQL Jump to new posts
Re: libashodbc Jorge Tavares - UmZero 09 Apr 24 04:33 PM
Hi Jack,
Also the CRYPTO dlls fail to load and, I didn't found anything related to this in the Windows Event Viewer.
Yes, I've configured in the 32 bit connector and if I open the 64 bit connector, it's also there but I can't edit it.
20 510 Read More
Powered by UBB.threads™ PHP Forum Software 7.7.3