Re: Syntax Error in a Compiled Database

2021-09-09 Thread Kirk Brooks via 4D_Tech
Eric,
Sounds like some sort of run time error. Most likely caused when some
unexpected data type is attempting to be read into an array (one of the
arrays managed by a pointer and gets the warning). Running interpreted 4D
is very robust as fixing these sort of data type errors but running
compiled it throws an error instead. This is why you won't catch it
interpreted.

If it's consistently happening in a particular method then add more error
checking to that method until you figure out what's going on.

If it's happening in different methods are these methods managing writing
to arrays directly? If so can you write a method to manage that write
operation and use this method in all the places the arrays are written to?
The idea is to get the code that's likely to throw the error in one place.

Once you figure out what this edge case is you can decide the best way to
either protect against it or manage the incoming data to prevent it.

On Thu, Sep 9, 2021 at 9:06 AM Eric Asadoorian via 4D_Tech <
4d_tech@lists.4d.com> wrote:

> Hello.
>
> Environment is v17.5 64-Bit in either OS X Sierra or Mojave (latest
> versions).  The database application does not experience much in the way of
> user interaction.  It is mainly responding to requests over TCP.  It runs
> 24/7.
>
> Compiler presents no errors, several warnings, but nothing new that hasn't
> been seen before in earlier versions (v16, v15, back to v13).  Warnings are
> mostly of the sort where pointers are used for arrays and it isn't clear if
> the data types will be correct at runtime.  These methods run often and
> have not presented a problem.
>
> Application can run for anywhere from 6 days to several weeks and no
> issues.  Then a runtime error will pop up citing Error 48 (I believe that
> it says Syntax Error when looking at detail in Application Process, but not
> sure, I will need to take a screenshot next time).
>
> This has occurred randomly without any real repeatable activity that I can
> surmise.  I decided to let the application run in interpreted mode hoping
> that the error will surface and I can identify the offending code in the
> debugger.  So far, nearly 2 weeks in and no error.  Therefore, I am
> reaching the conclusion that this error will likely only show up in a
> compiled database.
>
> I did not think a Syntax Error could occur in a compiled database.  I am
> guessing that it is related to a text value being passed to a 4D command
> that would not be known in advance.  However, I can't find anything that is
> in error.  I checked New Process, Execute on Server, and semaphore related
> commands thus far.
>
> Where would be a good place to start looking?  Has anyone had such an
> experience before?  Is there a way to identify more clearly what code is
> executing when the error appears?
>
> Thank you,
> Eric Asadoorian
>
> **
> 4D Internet Users Group (4D iNUG)
> New Forum: https://discuss.4D.com
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **



-- 
Kirk Brooks
San Francisco, CA
==
**
4D Internet Users Group (4D iNUG)
New Forum: https://discuss.4D.com
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**

Re: Syntax Error in a Compiled Database

2021-09-09 Thread Eric Asadoorian via 4D_Tech
I should have mentioned that.  I do have an ON ERR CALL running.  When in 
interpreted mode, it catches errors.  This does not seem to be occurring when 
compiled.  I would think that in the least it should present no standard error 
dialog due to the ON ERR CALL handling method.

I will try to temporarily upgrade to 17R6 and see what happens.  Thanks for 
your input.

On Sep 9, 2021, at 2:19 PM, John DeSoi via 4D_Tech wrote:

> I would setup an error handling method (ON ERR CALL) and use GET LAST ERROR 
> STACK and see if it provides more information. If you could update to at 
> least 17R6, you could use the Get call chain command to see exactly where the 
> error is.
> 
>> On Sep 9, 2021, at 11:05 AM, Eric Asadoorian via 4D_Tech 
>> <4d_tech@lists.4d.com> wrote:
>> 
>> Where would be a good place to start looking?  Has anyone had such an 
>> experience before?  Is there a way to identify more clearly what code is 
>> executing when the error appears?
> 
> **
> 4D Internet Users Group (4D iNUG)
> New Forum: https://discuss.4D.com
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **

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

Re: Syntax Error in a Compiled Database

2021-09-09 Thread John DeSoi via 4D_Tech
I would setup an error handling method (ON ERR CALL) and use GET LAST ERROR 
STACK and see if it provides more information. If you could update to at least 
17R6, you could use the Get call chain command to see exactly where the error 
is.

> On Sep 9, 2021, at 11:05 AM, Eric Asadoorian via 4D_Tech 
> <4d_tech@lists.4d.com> wrote:
> 
> Where would be a good place to start looking?  Has anyone had such an 
> experience before?  Is there a way to identify more clearly what code is 
> executing when the error appears?

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

Syntax Error in a Compiled Database

2021-09-09 Thread Eric Asadoorian via 4D_Tech
Hello.

Environment is v17.5 64-Bit in either OS X Sierra or Mojave (latest versions).  
The database application does not experience much in the way of user 
interaction.  It is mainly responding to requests over TCP.  It runs 24/7.

Compiler presents no errors, several warnings, but nothing new that hasn't been 
seen before in earlier versions (v16, v15, back to v13).  Warnings are mostly 
of the sort where pointers are used for arrays and it isn't clear if the data 
types will be correct at runtime.  These methods run often and have not 
presented a problem.

Application can run for anywhere from 6 days to several weeks and no issues.  
Then a runtime error will pop up citing Error 48 (I believe that it says Syntax 
Error when looking at detail in Application Process, but not sure, I will need 
to take a screenshot next time).

This has occurred randomly without any real repeatable activity that I can 
surmise.  I decided to let the application run in interpreted mode hoping that 
the error will surface and I can identify the offending code in the debugger.  
So far, nearly 2 weeks in and no error.  Therefore, I am reaching the 
conclusion that this error will likely only show up in a compiled database.

I did not think a Syntax Error could occur in a compiled database.  I am 
guessing that it is related to a text value being passed to a 4D command that 
would not be known in advance.  However, I can't find anything that is in 
error.  I checked New Process, Execute on Server, and semaphore related 
commands thus far.

Where would be a good place to start looking?  Has anyone had such an 
experience before?  Is there a way to identify more clearly what code is 
executing when the error appears?

Thank you,
Eric Asadoorian

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