Re: Server Process "Frozen"-ish

2017-10-25 Thread David Adams via 4D_Tech
On Thu, Oct 26, 2017 at 7:45 AM, Timothy Penner via 4D_Tech <
4d_tech@lists.4d.com> wrote:

Thanks for chiming in. Given the number and nature of the people reporting
this bug, it's clearly a real bug. Can you give us some insight into what
efforts 4D is making internally to track this down and fix it? The way I
interpret your remarks is "We're waiting for customers to figure out what
the problem is." Is that a mis-characterization or even a totally off-base
reading of your message?

Is there an *active* effort within to track down this particular problem?

Thanks.
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: v15 R(X) documentation

2017-10-25 Thread Keisuke Miyako via 4D_Tech
R releases in the broader sense refer to the channel, not a specific "version", 
which are sometimes called snapshots. today the current R release is 16R4 but 
in a few months the same link will take you to 16R5 pages. past R release 
documents are archived at livedoc.4d.com, but the principle is that you don't 
deploy an R release unless you have plans to keep it updated



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

4D Write Pro - Exporting / Saving to other file formats (e.g., .rtf or .doc)

2017-10-25 Thread Michael McCall via 4D_Tech
We used to use 4D Write to create standalone RTF formatted reports which could 
then easily be opened and edited in Microsoft Word. 

We have just begun to look at 4D Write Pro. The closest command I could find to 
doing something like this in 4D Write Pro was WP Export Document but it does 
not appear to allow you to export a document in a format which could be 
immediately editing in Microsoft Word.

Am I correct about that or just missing something obvious?

Thanks,
Mike McCall

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

v15 R(X) documentation

2017-10-25 Thread Lee Hinde via 4D_Tech
When I option click on a 4D command in v15 I get taken to a web page on that 
topic, for the v15 family.

When I do the same thing in v15R5, I get taken, sometimes, to 16v2 docs. But 
sometimes I end up, after much redirecting, to a random page.

Is there a right way to do this? Are the v15 R docs online?





**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Tim Nevels via 4D_Tech
On Oct 25, 2017, at 3:45 PM, Timothy Penner  wrote:

> I just want to add that one of the main benefits of the Forums 
> (http://forums.4d.com) is that it is also used by the 4D Engineers and they 
> do monitor, read, and participate in the discussions. So posting on the 
> forums could give you the opportunity to discuss this directly with the 
> Engineers. This participation is one of the main reasons why Feature Requests 
> are handled on the forums (as described here: http://kb.4d.com/assetid=76725).

Hi Tim,

I know it, I know it. But me and so many other 4D Developers are old dogs. And 
you what they say, “hard to teach an old dog new tricks”. Particularly when the 
bones 4D Forums offer taste so terrible. In other words. It’s just to darn easy 
to deal with the iNUG email setup, and it is a big pain-in-the-ass to deal with 
how the 4D Forums work. Takes nine million clicks to view everything and to 
find anything. Here you just glance at emails and you get all the info you 
want. 

You want people to use the 4D Forums, make it taste so good we won’t want to 
use old fashion emails any longer. 

Here’s a radical idea, create an email interface/adapter for the 4D Forums so 
you don’t have to use that horrid web interface. You just send specially 
formatted emails and it inserts them into the 4D Forums. And when someone 
replies on the 4D Forums it send out an email. Then there would be no excuse to 
not participate in the 4D Forums. Too bad nobody in France is smart enough or 
motivated enough to do something like that. :)

>> Somebody needs to forward this email chain to 4D engineering. Hopefully Tim 
>> Penner can do this and get 4D engineering motivated to stop waiting for a 
>> demo database that reproduces this problem and have somebody go do a code 
>> review looking for something that doesn’t look quite right.
> 
> I wish it were that simple. I see some theories about what's causing it but I 
> don’t think anyone has nailed down a concrete explanation or reproducible 
> test that could be used in a bug report. Sorry, but I cannot file a bug 
> report for something this vague. Although, to be clear, I have tried running 
> some tests to see if I can provoke the issue and I never saw it (so 
> technically if a bug was filed with the information we currently have it 
> could be marked as 'verified and non-reproducible' by tech support).

I totally understand that. I just want to help in any way I can to get this 
resolved. Right now I have no v16 users. I was planning to do an upgrade but 
this put a stop to that. No way. I’m steering clear of upgrading to v16 until I 
hear that this problem has been fixed. And that’s what I tell anyone that asks 
me about upgrading to v16. If you don’t use Stored Procedure, go ahead, but if 
you do you are asking for trouble. If it is affecting Jeff and Cannon, it could 
effect anyone. This is not a 4D developer coding error, this is a 4D bug!

I’m a big user of Stored Procedure and I don’t need the headache of them acting 
up when everything is completely stable now. And it’s a bug I can’t even 
implement a work around for, other than to manually monitor all server every 
single day and executing RESUME PROCESS commands manually when I detect an 
issue. I’ve got work to do. I’m not going to become a server babysitter. 

And the last thing I want is calls from clients saying “that 4D upgrade you 
installed is sure causing problems, why don’t you fix it”. And my only reply 
is, “I can’t, live with it”. 

I’m sure you understand that. 

Tim


Tim Nevels
Innovative Solutions
785-749-3444
timnev...@mac.com


**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

RE: Server Process "Frozen"-ish

2017-10-25 Thread Timothy Penner via 4D_Tech
Hi Tim,

> This is how a programming forum is supposed to work. People contributing 
> ideas and sharing experiences. I think we are getting close to nailing down 
> where 4D engineers need to look to solve this problem.
>

I just want to add that one of the main benefits of the Forums 
(http://forums.4d.com) is that it is also used by the 4D Engineers and they do 
monitor, read, and participate in the discussions. So posting on the forums 
could give you the opportunity to discuss this directly with the Engineers. 
This participation is one of the main reasons why Feature Requests are handled 
on the forums (as described here: http://kb.4d.com/assetid=76725).

> Somebody needs to forward this email chain to 4D engineering. Hopefully Tim 
> Penner can do this and get 4D engineering motivated to stop waiting for a 
> demo database that reproduces this problem and have somebody go do a code 
> review looking for something that doesn’t look quite right.
>

I wish it were that simple. I see some theories about what's causing it but I 
don’t think anyone has nailed down a concrete explanation or reproducible test 
that could be used in a bug report. Sorry, but I cannot file a bug report for 
something this vague. Although, to be clear, I have tried running some tests to 
see if I can provoke the issue and I never saw it (so technically if a bug was 
filed with the information we currently have it could be marked as 'verified 
and non-reproducible' by tech support).

It is great to see confirmation that using the Runtime Explorer allows the DB 
Admin to issue the command RESUME PROCESS; this gives me hope that we are on 
the right track and for the time being we have a way of kicking the process 
back into gear. I will continue monitoring this thread for additional clues but 
at this time I still don't have enough information to reproduce the issue and 
ultimately file a bug report.

For anyone following along and actively looking for this problem, hopefully you 
are also using the Information Component to log reports on a regular basis 
(default 5 minute interval) so that if the issue does arise you have a set of 
reports that depict the period of uptime for the database. There may be a clue 
in these reports (for example, an item in the attention section warning you of 
an issue). At the very least the reports would include the amount of uptime for 
the computer, which could be used to help understand at which point of uptime 
this problem is happening (assuming it is related to uptime).

-Tim



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread John Baughman via 4D_Tech


> On Oct 25, 2017, at 6:55 AM, Tim Nevels via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
>> Anyway, I'm wondering if the problem is when either Tickcount, Milliseconds 
>> or another internal 4D time measure overflows into negative territory.  I 
>> have no idea internally what measure 4D uses for DELAY PROCESS, nor what 
>> data type they use internally for it, but what if they aren't taking account 
>> of the overflow when the measure value goes from a large positive number to 
>> a large negative.
>> 
>> That could explain the large time period before the problem reoccurs??

I am not sure that this is in any way related, but a after upgrading a client 
to v15 I started having an occasional problem with a stored procedure. I cannot 
remember now exactly what the problem was but I solved it by letting the 
process die after starting a new process with the same method and delaying the 
new process as soon as it starts… 

Process A does it thing starts Process B and dies
Process B is delayed. After delay Process B does it’s thing starts 
Process A and dies.
Repeat…

This has worked without any problem since.

John



John Baughman
Kailua, Hawaii
(808) 262-0328
john...@hawaii.rr.com





**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

BUG in ST Get content type?

2017-10-25 Thread Piotr Chabot Stadhouders via 4D_Tech
Hi,

4D v16R4

I use the "loop example" to get all expressions in a WP area
However, when the first "character" of the text in the area is an expression, 
this expression is skipped (not seen)
It seems that when I call  $type:=ST Get content 
type*;"WParea";$start;$end;$startBlock;$endBlock) for the first time, with
$start:=ST Start text
$end:=ST End text

It returns $type=3, with $startBlock=1 and $endBlock=2, while it should return 
in my opinion $type=2 (i.e. expression type)

Does anybody think, as I do, this is a bug? Or am I missing something.

Gr,

Piotr

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Tim Nevels via 4D_Tech
On Oct 25, 2017, at 11:38 AM, Keith White wrote:

> Wondered if you saw my guess/conjecture previously posted on this subject 
> (not that it's much help !)...:-
> 
> OK, so we think this is due to DELAY PROCESS.
> 
> The change to DELAY PROCESS somewhere in 4D v15 was to change from a Longint 
> to Real.  But the problems didn't start until v16, I think that's right.
> 
> Anyway, I'm wondering if the problem is when either Tickcount, Milliseconds 
> or another internal 4D time measure overflows into negative territory.  I 
> have no idea internally what measure 4D uses for DELAY PROCESS, nor what data 
> type they use internally for it, but what if they aren't taking account of 
> the overflow when the measure value goes from a large positive number to a 
> large negative.
> 
> That could explain the large time period before the problem reoccurs??
> 
> Just throwing an idea out there.  We've only just jumped from v13 to v16R4, 
> which means we don't have v16 out in production land yet, so we haven't yet 
> seen this problem occur.

I think you are on to something Keith. I had the exact same thoughts about this 
problem. A change from tick count to millisecond and the change from C_LONGINT 
values in DELAY PROCESS to C_REAL. Probably also related to internal scheduling 
system changes connected to support preemptive processes now. They had to do 
some major low level programming changes to make all of this work.

This is how a programming forum is supposed to work. People contributing ideas 
and sharing experiences. I think we are getting close to nailing down where 4D 
engineers need to look to solve this problem. 

Somebody needs to forward this email chain to 4D engineering. Hopefully Tim 
Penner can do this and get 4D engineering motivated to stop waiting for a demo 
database that reproduces this problem and have somebody go do a code review 
looking for something that doesn’t look quite right. 

Tim


Tim Nevels
Innovative Solutions
785-749-3444
timnev...@mac.com


**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread BTB-Gmail via 4D_Tech
I went to another machine and found out some more info.  This appears to be a 
random problem which makes it difficult to reproduce and track down.

Here is what I can summarize on the problem:

1) There isn’t a direct correlation to the Server UI window becoming 
unresponsive vs the delay process issue.  In some cases it correlates but in 
others it does not
2) Not sure there is a correlation to machine up time.  I’ve seen the problem 
occur on a machine that was up 158 days; not occur on a machine that was up 86 
days and did occur on a machine that was up 59 days
3) Not sure there is a correlation to database up time.  Different up times on 
different database - same results
4) I can confirm that I only see it between 4Dv15R5 and 4Dv16.0
5) My processes that just stop responding on all of the databases on all of the 
machines stopped responding on 10/15/17.  The databases have different up times 
when this occurs.

and for one more bit of randomness:

I have 2 server processes that do house keeping chores.  These are the 
processes I delay.  In all of the databases I’ve looked at so far, both 
processes stop on the same day.  in fact, all of the databases running on the 
machine stop on the same day - all except for 1 database.  In this database one 
of the processes stopped on 10/15/17 but the other one is still running.  Talk 
about random.  Riddle me that batman.

crap

Thanks!

David Conley
By The Book, Inc.
Office: 815-234-7530
Direct Line: 815-406-5502
Fax: 815-234-7532
http://www.bythebook.com




> On Oct 25, 2017, at 10:24 AM, BTB-David via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Interesting.  I did some more digging and here is what I’ve found.
> 
> I have 13 Macs that run up to 10 databases on each machine of differing 4D 
> versions  (usually 4Dv13.4, 4Dv15R5 and 4Dv16.0) - all are 32 bit.  I focused 
> on 2.
> 
> Machine 1 - uptime 158 days
> 
> I have 10 databases running on this machine.  3 are running using 4D v13.4, 2 
> are running v15R5 and the other 5 are running v16.0.
> 
> The ones running v13.4 are not having this issue.  All of the other ones are.
> 
> Machine 2 - uptime 86 days
> 
> I have 9 databases running on this machine.  3 are running 4Dv13.4 and 6 are 
> running 4Dv16.0.
> 
> None of the 4Dv13.4 databases have the problem.   None of the 4Dv16.0 
> databases on this machine have experienced this problem.
> 
> 
> Jeff: I can confirm that the 4D Server UI monitor for graphs does stop 
> updating when this occurs.  On Machine 1, the only one that is working now is 
> the one I manually resumed the processes for.  On machine 2, all of the 
> graphs are working just fine.
> 








This email was sent to 4d_tech@lists.4d.com (mailto:4d_tech@lists.4d.com)
unsubscribe from this list 
(http://emailclicks.bythebook.com/track/unsub.php?u=30055319=8243fbea94074a0abf7670925c43bc20.6uKpduIsjJ%2FEqVQ1r%2BdLr66Tu1w%3D=https%3A%2F%2Fmandrillapp.com%2Funsub%3Fmd_email%3D4d_tech%2540lists.4d.com)
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: The connection for this process has been disrupted or the connection could not be established

2017-10-25 Thread Douglas von Roeder via 4D_Tech
Arnaud:

I would say it is "a" way to use a Semaphore and the idea that it is a
limit is the way that I've always understood it.

The fact that it's a gobal semaphore means that it controls access to the
code that follows and the scope of that is for all machines connected to
the server. The semaphore doesn't mean that other methods cannot run. That
is a function of "cooperative multitasking" and, now that we can run code
pre-emotively, developers will have to have a more clear understanding of
(and better control of) what runs, when.

I'm making a narrow distinction there but I think it's a valid one.

--
Douglas von Roeder
949-336-2902

On Wed, Oct 25, 2017 at 9:15 AM, Arnaud de Montard via 4D_Tech <
4d_tech@lists.4d.com> wrote:

>
> > Le 25 oct. 2017 à 17:55, Douglas von Roeder via 4D_Tech <
> 4d_tech@lists.4d.com> a écrit :
> >
> > Arnaud:
> >
> > My understanding is that, given that 4D's scheduler has been "cooperative
> > multitasking" for virtually all of its history, the Idle command
> instructs
> > the current process to yield time to other processes. Without the
> While…End
> > while loop and the Idle command, the current process would hit the
> > Semaphore command and processing would stop until 300 ticks had passed.
> > That process would not yield CPU, causing all processing to stop.
>
> Yes, but when I look at examples in the Semaphore function, only the 1
> (the oldest?) uses while+idle. And I remember Olivier Deschanels saying
> during a training that the second parameter was made to limit the delay.
> Now, is it "a" way to delay, "the" way, when to mix both? That's what I'd
> like to know. And more specifically with a global semaphore, as in David's
> situation.
>
> --
> Arnaud de Montard
>
>
>
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
>
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: The connection for this process has been disrupted or the connection could not be established

2017-10-25 Thread Arnaud de Montard via 4D_Tech

> Le 25 oct. 2017 à 17:55, Douglas von Roeder via 4D_Tech 
> <4d_tech@lists.4d.com> a écrit :
> 
> Arnaud:
> 
> My understanding is that, given that 4D's scheduler has been "cooperative
> multitasking" for virtually all of its history, the Idle command instructs
> the current process to yield time to other processes. Without the While…End
> while loop and the Idle command, the current process would hit the
> Semaphore command and processing would stop until 300 ticks had passed.
> That process would not yield CPU, causing all processing to stop.

Yes, but when I look at examples in the Semaphore function, only the 1 (the 
oldest?) uses while+idle. And I remember Olivier Deschanels saying during a 
training that the second parameter was made to limit the delay. Now, is it "a" 
way to delay, "the" way, when to mix both? That's what I'd like to know. And 
more specifically with a global semaphore, as in David's situation. 

-- 
Arnaud de Montard 



**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: The connection for this process has been disrupted or the connection could not be established

2017-10-25 Thread Douglas von Roeder via 4D_Tech
Arnaud:

My understanding is that, given that 4D's scheduler has been "cooperative
multitasking" for virtually all of its history, the Idle command instructs
the current process to yield time to other processes. Without the While…End
while loop and the Idle command, the current process would hit the
Semaphore command and processing would stop until 300 ticks had passed.
That process would not yield CPU, causing all processing to stop.

That's how I've come to understand the issue over the years and I'd love to
see someone with actual knowledge of the  issue weigh in.


--
Douglas von Roeder
949-336-2902

On Wed, Oct 25, 2017 at 8:40 AM, Arnaud de Montard via 4D_Tech <
4d_tech@lists.4d.com> wrote:

>
> > Le 25 oct. 2017 à 04:27, David Ringsmuth via 4D_Tech <
> 4d_tech@lists.4d.com> a écrit :
> >
> > The “Semaphore” function is crashing 4D Remote’s connection to 4D Server.
> >
> > While(Semaphore("MySemaphore";300)) // ←- this line crashes
> > // more coding here
> >  End while
>
> The doc "about semaphore" they say "Here is typical code for using a
> semaphore":
>   While(Semaphore("MySemaphore";300))
> IDLE
>   End while
> I never understood why we still need a While since the second parameter is
> available…
>
> I'd try those:
> - add IDLE or DELAY PROCESS after While
> - play with the waiting time (second parameter - no idea of what the max
> can be)
> - remove the while and raise the up the waiting time
> and call 4D if it still crashes…
>
> --
> Arnaud de Montard
>
>
> **
> 4D Internet Users Group (4D iNUG)
> FAQ:  http://lists.4d.com/faqnug.html
> Archive:  http://lists.4d.com/archives.html
> Options: http://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **
>
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: The connection for this process has been disrupted or the connection could not be established

2017-10-25 Thread Arnaud de Montard via 4D_Tech

> Le 25 oct. 2017 à 04:27, David Ringsmuth via 4D_Tech <4d_tech@lists.4d.com> a 
> écrit :
> 
> The “Semaphore” function is crashing 4D Remote’s connection to 4D Server.
> 
> While(Semaphore("MySemaphore";300)) // ←- this line crashes
> // more coding here
>  End while

The doc "about semaphore" they say "Here is typical code for using a semaphore":
  While(Semaphore("MySemaphore";300))
IDLE
  End while
I never understood why we still need a While since the second parameter is 
available… 

I'd try those: 
- add IDLE or DELAY PROCESS after While
- play with the waiting time (second parameter - no idea of what the max can be)
- remove the while and raise the up the waiting time 
and call 4D if it still crashes… 

-- 
Arnaud de Montard 


**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread BTB-David via 4D_Tech
Interesting.  I did some more digging and here is what I’ve found.

I have 13 Macs that run up to 10 databases on each machine of differing 4D 
versions  (usually 4Dv13.4, 4Dv15R5 and 4Dv16.0) - all are 32 bit.  I focused 
on 2.

Machine 1 - uptime 158 days

I have 10 databases running on this machine.  3 are running using 4D v13.4, 2 
are running v15R5 and the other 5 are running v16.0.

The ones running v13.4 are not having this issue.  All of the other ones are.
 
Machine 2 - uptime 86 days

I have 9 databases running on this machine.  3 are running 4Dv13.4 and 6 are 
running 4Dv16.0.

None of the 4Dv13.4 databases have the problem.   None of the 4Dv16.0 databases 
on this machine have experienced this problem.


Jeff: I can confirm that the 4D Server UI monitor for graphs does stop updating 
when this occurs.  On Machine 1, the only one that is working now is the one I 
manually resumed the processes for.  On machine 2, all of the graphs are 
working just fine.

The code dealing with these server processes has been running just fine for 
many, many years.

Thanks!

David Conley
By The Book, Inc.
Office: 815-234-7530
Direct Line: 815-406-5502
Fax: 815-234-7532
http://www.bythebook.com




> On Oct 25, 2017, at 9:37 AM, Cannon Smith via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Hi Keith,
> 
> Yes, that’s why I was curious about the machine up time. It would be curious 
> if it was close to 24.86 days, for example.
> 








This email was sent to 4d_tech@lists.4d.com (mailto:4d_tech@lists.4d.com)
unsubscribe from this list 
(http://emailclicks.bythebook.com/track/unsub.php?u=30055319=9677e92f5f6e4a8c99f800ea10e5b871.6uKpduIsjJ%2FEqVQ1r%2BdLr66Tu1w%3D=https%3A%2F%2Fmandrillapp.com%2Funsub%3Fmd_email%3D4d_tech%2540lists.4d.com)
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Jeffrey Kain via 4D_Tech
Did you also see the 4D Server UI stop updating? I'm referring to the server 
monitor user interface that graphs the CPU time, etc.

When this has happened to our mirror servers, those graphs stop updating. The 
server can still be manipulated, but those graphs don't update and the stored 
procedure has stopped.

--
Jeffrey Kain
jeffrey.k...@gmail.com


> On Oct 25, 2017, at 10:34 AM, Keith White via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> OK, so we think this is due to DELAY PROCESS.
> 
> The change to DELAY PROCESS somewhere in 4D v15 was to change from a Longint 
> to Real.  But the problems didn't start until v16, I think that's right.
> 
> Anyway, I'm wondering if the problem is when either Tickcount, Milliseconds 
> or another internal 4D time measure overflows into negative territory.  I 
> have no idea internally what measure 4D uses for DELAY PROCESS, nor what data 
> type they use internally for it, but what if they aren't taking account of 
> the overflow when the measure value goes from a large positive number to a 
> large negative.

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Cannon Smith via 4D_Tech
Hi Keith,

Yes, that’s why I was curious about the machine up time. It would be curious if 
it was close to 24.86 days, for example.

--
Cannon.Smith
Synergy Farm Solutions Inc.
Hill Spring, AB Canada
403-626-3236




> On Oct 25, 2017, at 8:34 AM, Keith White via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> Wondered if you saw my guess/conjecture previously posted on this subject 
> (not that it's much help !)...:-

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Keith White via 4D_Tech
Hi David and Canon

Wondered if you saw my guess/conjecture previously posted on this subject (not 
that it's much help !)...:-



OK, so we think this is due to DELAY PROCESS.

The change to DELAY PROCESS somewhere in 4D v15 was to change from a Longint to 
Real.  But the problems didn't start until v16, I think that's right.

Anyway, I'm wondering if the problem is when either Tickcount, Milliseconds or 
another internal 4D time measure overflows into negative territory.  I have no 
idea internally what measure 4D uses for DELAY PROCESS, nor what data type they 
use internally for it, but what if they aren't taking account of the overflow 
when the measure value goes from a large positive number to a large negative.

That could explain the large time period before the problem reoccurs??

Just throwing an idea out there.  We've only just jumped from v13 to v16R4, 
which means we don't have v16 out in production land yet, so we haven't yet 
seen this problem occur.

Best regards

Keith White
Synergist Express Ltd, UK.
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread Cannon Smith via 4D_Tech
Hi David,

Good to have more information—thanks! I’m curious, do you know what the machine 
up time was when it stalled?

Thanks.

--
Cannon.Smith
Synergy Farm Solutions Inc.
Hill Spring, AB Canada
403-626-3236




> On Oct 25, 2017, at 7:57 AM, BTB-David via 4D_Tech <4d_tech@lists.4d.com> 
> wrote:
> 
> I can confirm that this is caused by the delay process.  In fact, all of my 
> server processes that use delay process stopped on the same day.  They had 
> different levels of delay times set.

**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Server Process "Frozen"-ish

2017-10-25 Thread BTB-David via 4D_Tech
I can confirm that this is caused by the delay process.  In fact, all of my 
server processes that use delay process stopped on the same day.  They had 
different levels of delay times set.

As per your suggestion, I went into Runtime Explorer on the Server and typed 
resume process (pid) and they worked again.  I will check tomorrow to see if 
the processes run more than one day after manually using resume.

I am running 16.0 Build 16.209177.  Server is running on Mac.

I will create a test database and see if I can re-create and will open a 
support case for this issue.


Thanks!

David Conley
By The Book, Inc.
Office: 815-234-7530
Direct Line: 815-406-5502
Fax: 815-234-7532
http://www.bythebook.com




> On Oct 18, 2017, at 7:33 PM, Timothy Penner via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Hi Cannon,
> 
> If I am reading this correctly, you have a process that was delayed using 
> DELAY PROCESS and it should have already woken up after 1 second but it was 
> still delayed several hours later - is that right?
> 
> Not sure if this will help you at all, but if you can locate the process 
> number for the process (let's assume it is process #10) and then issue RESUME 
> PROCESS(10) does it actually wake up or does it stay delayed?
> 
> You can obtain the process number from the Admin Window or the Runtime 
> Explorer.
> 
> You can issue commands from the Runtime Explorer by adding a new expression 
> and typing the command into the expression. For example, typing RESUME 
> PROCESS(10) into the Runtime Explorer will resume the process with id 10.
> 
> To be clear - I don’t think this will help find the root cause of the 
> problem, but I do think it could help in understanding what state the process 
> is actually in.
> 
> If this issue is simply DELAY PROCESS not waking up, I wonder if someone 
> could build a quick and simple database that demonstrates and tests that? 
> Maybe having a process that delays itself and updates a variable with the 
> current time, and another process checking the variable to confirm a certain 
> amount of time has elapsed. Then if the elapse time between updates falls 
> outside of the expected range then the bug has been hit? Has anyone tried 
> that to confirm this?
> 








This email was sent to 4d_tech@lists.4d.com (mailto:4d_tech@lists.4d.com)
unsubscribe from this list 
(http://emailclicks.bythebook.com/track/unsub.php?u=30055319=8c2a09f8dc174d07aebcb70e893613ce.6uKpduIsjJ%2FEqVQ1r%2BdLr66Tu1w%3D=https%3A%2F%2Fmandrillapp.com%2Funsub%3Fmd_email%3D4d_tech%2540lists.4d.com)
**
4D Internet Users Group (4D iNUG)
FAQ:  http://lists.4d.com/faqnug.html
Archive:  http://lists.4d.com/archives.html
Options: http://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Primary Key in 4Dv15

2017-10-25 Thread Magnus Torell via 4D_Tech
Hello Ronnie,

I agree with "Roll your own".
I just added new PK fields with the only purpose for journaling
and nothing else so far. With following code You can convert
a database.

I do it in 2 steps. Very first time I create a new datafile and let the
structure
add the fields. This should be done with v14 or 15. After that you can open
any
datafile (v11, 12, 13) with that structure file and conversion will be done
automatically.
I implemented 2 methods. First method I call from On Startup and On Startup
Server.

SYS_PrimaryKey_v14


  // 
  // User name (OS): Magnus Torell
  // Date and time: 14-12-29, 01:01:43
  // 
  // Method: SYS_PrimaryKey_v14
  // Description
  // Method is tested and has to be run as follows:

  // Open the structure in v14 with an EMPTY datafile
  // This will convert the structure and add primary keys to all tables
  // Done

  // Now any other Valentis/MultiControl database in v11, v12, v13 can be
just opened and all PKs will be filled and indexed
  // None of the automatic conversion dialogs should show up since the
structure is already converted and PKs added
  // Upon opening of databases first you confirm that the will be updated to
v14.
  // Then the data will automatically be filled with PK values (UUID) and
  // Finally the new fields will be indexed
  // Either before or after the indexing the PKs will be validated by v14
mechanism
  // DON'T forget to enable journaling after conversion is done.
  // This method could just lie around till a reasonable amount of time.
  // Maybe could be adjusted to If (Application version == "14@")
  // Parameters
  // 

  // NB TRIGGERS. Each save will take longer time if triggers are on.
  // In the triggers may be calls to interprocess vars that is not yet
initialized Be careful.
  // For writer there is a ◊FileArray{}{} which is not yet initialized here
in beginning in On StartUp.
  // Noted by: Magnus Torell (15-10-31)
  // Followed up on this TRIGGER Part and did not understand why triggers
should be off.
  // OK Maybe faster, but no harm seemed to be happening


C_TEXT($statement_t;$tableName_t)
C_LONGINT($curTable_l;$numTables_l)
C_BOOLEAN($b_RunSQL)

If (Application version>="14@")

$b_RunSQL:=True
C_LONGINT($fields_max)
C_LONGINT($field_number)
$curTable_l:=1  // Table 1 = Object
$fields_max:=Get last field number(Table($curTable_l))
$pk_fieldname_t:="pk_"+String($curTable_l;"")  //New syntax for 
primary
keys: "pk_" where  stands for table number in format ""
For ($field_number;1;$fields_max)
If (Is field number valid($curTable_l;$field_number))
$fieldname:=Field name($curTable_l;$field_number)
If ($fieldname=$pk_fieldname_t)  //Check if there 
already exists a field
with syntax "pk_"
$b_RunSQL:=False
End if 
End if 
End for 

If ($b_RunSQL)  // ie. we have not found field pk_0001 in first table
(Object table)
$numTables_l:=Get last table number
For ($curTable_l;1;$numTables_l)
SYS_PrimaryKey_Create ($curTable_l)
End for 
End if 
End if 




and second method

SYS_PrimaryKey_Create


  // 
  // User name (OS): Magnus Torell
  // Date and time: 15-07-02, 19:56:28
  // 
  // Method: SYS_PrimaryKey_Create
  // Description
  // 
  //
  // Parameters
  // 

C_LONGINT($curTable_l;$1)
C_TEXT($statement_t;$tableName_t)
C_LONGINT($curTable_l;$numTables_l)
C_BOOLEAN($b_RunSQL)

$curTable_l:=$1


$statement_t:=""
If (Is table number valid($curTable_l))

$b_RunSQL:=True
C_LONGINT($fields_max)
C_LONGINT($field_number)
$fields_max:=Get last field number(Table($curTable_l))
$pk_fieldname_t:="pk_"+String($curTable_l;"")  //New syntax for 
primary
keys: "pk_" where  stands for table number in format ""
For ($field_number;1;$fields_max)
If (Is field number valid($curTable_l;$field_number))
$fieldname:=Field name($curTable_l;$field_number)
If ($fieldname=$pk_fieldname_t)  //Check if there 
already exists a field
with syntax "pk_"
$b_RunSQL:=False
End if 

End if 
End for 

If ($b_RunSQL)  //If there is no field already created
$tableName_t:=Table name($curTable_l)
$statement_t:=$statement_t+"ALTER TABLE ["+$tableName_t+"] "