You are not logged in.
Pages: 1
Offline
Try update your sqlite3*.obj, Armand updated sqlite engine some days ago.
Offline
@Junior/RO:
I've done it. This bug has been there since version 1.15.
I had already been posted in this forum, and I'll have to wait for another user who will report it too, but until now no one did.
I think this only happens on my computer.
I do not know, what information is required from my computer to be able to overcome this problem, while I have not been able to use TSynLog.
I ever use madExcept. if it is indeed useful, I will try to use it, and report back here.
Offline
@coblongpamor:
> I'll have to wait for another user who will report it too
You did http://synopse.info/forum/viewtopic.php?id=660 :-)
The same in Delphi 2009
Last edited by TLama (2012-04-01 19:59:00)
Offline
I've compiled the main demo in Delphi 7 under Windows 7 (this is my main dev platform), and there is no problem.
You may have some deprecated files around in your search path.
I can't access to the screenshot (corporate firewall policy).
Could you step into the debugger and find the Delphi source code line which fails running when compiled with Delphi 2009?
You can also compile TestSQL3.dpr regression test, enabling the logs in SQLite3SelfTests.pas:
procedure SQLite3ConsoleTests;
begin
AllocConsole;
// will create around 280 MB of log file, if executed
if TRUE then // this will ENABLE LOGs
with TSQLLog.Family do begin
Level := LOG_VERBOSE;
....
Then extract and post here the block where the GPF occurs.
Offline
heare is the result when i run TestSQL3.Dpr with Logs Enabled.
Synopse mORMot Framework Automated tests
------------------------------------------
1. Synopse libraries
1.1. Low level common:
- System copy record: 22 assertions passed 180us
- TDynArray: 519,427 assertions passed 170.73ms
- TDynArrayHashed: 1,200,023 assertions passed 162.34ms
- Fast string compare: 7 assertions passed 109us
- IdemPropName: 10 assertions passed 139us
- Url encoding: 105 assertions passed 1.02ms
- IsMatch: 599 assertions passed 243us
- Soundex: 29 assertions passed 102us
- Numerical conversions: 776,256 assertions passed 250.67ms
- Curr64: 20,039 assertions passed 1.77ms
- CamelCase: 5 assertions passed 89us
- Bits: 4,614 assertions passed 123us
- Ini files: 7,004 assertions passed 34.78ms
- Unicode - Utf8: 61,082 assertions passed 1.03s
- Iso8601 date and time: 24,000 assertions passed 4.84ms
- Url decoding: 1,100 assertions passed 339us
- TSynTable: 873 assertions passed 2.91ms
- TSynCache: 404 assertions passed 793us
- TSynFilter: 1,005 assertions passed 2.55ms
- TSynValidate: 677 assertions passed 737us
- TSynLogFile: 42 assertions passed 695us
Total failed: 0 / 2,617,323 - Low level common PASSED 1.67s
1.2. Low level types:
- RTTI: 34 assertions passed 622us
- Url encoding: 200 assertions passed 706us
- Encode decode JSON: 127,190 assertions passed 89.82ms
Total failed: 0 / 127,424 - Low level types PASSED 92.25ms
1.3. Big table:
- TSynBigTable: 19,250 assertions passed 176.64ms
- TSynBigTableString: 16,228 assertions passed 36.09ms
- TSynBigTableMetaData: 384,060 assertions passed 1.16s
- TSynBigTableRecord: 452,185 assertions passed 2.82s
Total failed: 0 / 871,723 - Big table PASSED 4.20s
1.4. Cryptographic routines:
- Adler32: 1 assertion passed 714us
- MD5: 1 assertion passed 660us
- SHA1: 5 assertions passed 642us
- SHA256: 5 assertions passed 683us
- AES256: 6,372 assertions passed 175.72ms
- Base64: 11,994 assertions passed 82.74ms
Total failed: 0 / 18,378 - Cryptographic routines PASSED 262.66ms
1.5. Compression:
- In memory compression: 12 assertions passed 197.91ms
- Gzip format: 19 assertions passed 385.17ms
- Zip format: 36 assertions passed 679.98ms
- SynLZO: 3,006 assertions passed 86.19ms
- SynLZ: 13,016 assertions passed 291.49ms
Total failed: 0 / 16,089 - Compression PASSED 1.64s
1.6. Synopse PDF:
- TPdfDocument: 4 assertions passed 45.22ms
- TPdfDocumentGDI: 6 assertions passed 9.95ms
Total failed: 0 / 10 - Synopse PDF PASSED 56.09ms
2. mORMot
2.1. Basic classes:
- TSQLRecord: 47 assertions passed 627us
- TSQLRecordSigned: 200 assertions passed 5.96ms
- TSQLModel: 3 assertions passed 687us
Total failed: 0 / 250 - Basic classes PASSED 8.20ms
2.2. File based:
- Database direct access: 10,136 assertions passed 2.02s
- Virtual table direct access: 12 assertions passed 183.67ms
- TSQLTableJSON: 19,030 assertions passed 453.54ms
! Exception ECommunicationException raised with messsage:
The system cannot find the file specifiedct to server "Test"
Synopse framework used: 1.16
SQlite3 engine used: 3.7.11
Generated with: Delphi 7 compiler
Time elapsed for all tests: 155.96s
Tests performed at 02/04/2012 15:12:59
Total assertions failed for all test suits: 0 / 3,651,197
! Some tests FAILED: please correct the code.
Done - Press ENTER to Exit
here is the line of SQLite3Commons unit (line 17908)
if Pipe=Invalid_Handle_Value then begin // server must exist
if (aModel<>nil) and (aModel.Owner=self) then
aModel.Free; // avoid memory leak
raise ECommunicationException.CreateFmt(
'%s can''t connect to server "%s"'#13'via "%s":'#13'%s',
[ClassName,ApplicationName,fPipeName,SysErrorMessage(GetLastError)]);
end;
this is exception message extracted from Log file
D:\Bali Pedia Projects\mORMot\SQLite3\TestSQL3.exe 0.0.0.0 (2012-04-02 15:10:22)
Host=localhost User=user CPU=2*0-6-5894 OS=6.2=6.0.6002 Wow64=0 Freq=2078154
TSQLLog 1.16 2012-04-02T15:10:23
....
....
0000000013474E0D EXC ECommunicationException ("TSQLRestClientURINamedPipe can't connect to server \"Test\"\rvia \"\\\\.\\pipe\\Sqlite3_Test\":\rThe system cannot find the file specified") at 004D4808 stack trace 00405969 00405A44 00402A9B 749CBB10 7642DCE2 00404EA7 76FD64B4 749CD211 0041DF5F 0041DC9B 0040446E 004D423B 0040621D 004D0B33 004EC9B4 00431D18 005158C5 00515BCD 7642ED6C 76FF377B
00000000134AFB4D EXC ECommunicationException ("TSQLRestClientURINamedPipe can't connect to server \"Test\"\rvia \"\\\\.\\pipe\\Sqlite3_Test\":\rThe system cannot find the file specified") at 004D4808 stack trace 005158C5 00515BCD 7642ED6C 76FF377B 76FF374E
but, this only occurs during the first run.
during the next run, all the tests passed.
thanks
Offline
You may have some deprecated files around in your search path.
my path hierarchy of the mORMot framework is
..\mORMot
\SQLite3
\Sample
...
\MainDemo
...
\LVCL
\SynProject
and the search path of MainDemo Project is:
..\..\..\Lib\FastMM496\FastMM
..\..\SQLite3
..\..
thank again
Offline
@TLama
But, i think, this is not the same issue.
Offline
You seem to have the latest source code and .obj available, and your search path seems correct.
Sounds like a configuration issue to the named pipe access policy, when compiled with Delphi 2009.
It is very strange that it fails first, then that all tests passed later on.
It sounds like http://synopse.info/forum/viewtopic.php?id=177 which occurred in some configurations.
It is a random issue, which did not occur for me.
Could you try the changed set at http://synopse.info/forum/viewtopic.php?pid=996#p996
That is, put "nil" instead of security attributes:
aPipe := CreateNamedPipe(pointer(fPipeName),
PIPE_ACCESS_DUPLEX,
PIPE_TYPE_BYTE or PIPE_READMODE_BYTE or PIPE_WAIT,
PIPE_UNLIMITED_INSTANCES, 0, 0, 0, nil{@fPipeSecurityAttributes});
But there is something strange in the security handling of Windows for named pipes.
Offline
i have change the @fPipeSecurityAttributes to nil, then run Test again, and all test passed.
then i set back @fPipeSecurityAttributes, then run test again, and all test passed.
i do that, more than one time.
then i open and run the MainDemo Project, then i try to edit record, then AV accured again,
without break on any line, just show the CPU process. pressing F9 key not help.
then i disable the
{.$define EXTRACTALLRESOURCES}
in FileMain.pas with compiled sucses.
but if i run the project, immediately EOSError class occured with message:
System Error. Code: 12029
and debuger break on end of procedure TWinHTTP.InternalSendRequest(..) in the SynCrtSock unit.
procedure TWinHTTP.InternalSendRequest(const aData: TSockData);
var L: integer;
begin
L := length(aData);
if not WinHttpSendRequest(fRequest, nil, 0, pointer(aData), L, L, 0) or
not WinHttpReceiveResponse(fRequest,nil) then
RaiseLastOSError;
end;
then i enabled it back
{$define EXTRACTALLRESOURCES}
and i error occored while compiling with message
Undeclared identifier: 'ExtractAllResources'
i've downloaded the latest version of SQLite3i18n unit.
Offline
You have to BUILD the project, not only COMPILE it, when you change a global conditional.
In case of an AV, close the CPU view, then press F7 or view the call stack. You'll find out why line made the error.
Offline
You have to BUILD the project, not only COMPILE it, when you change a global conditional.
i understand and i did it, but error as described above still happen;
In case of an AV, close the CPU view, then press F7 or view the call stack. You'll find out why line made the error.
Now, I can not run maindemo.dpr, because the error that occurred at the beginning, just as I described above.
I'll try to run another project.
Offline
No. PUREPASCAL Conditional Define still still disable in synopse.inc.
Offline
Yes, i also tried to enabling
{$define PUREPASCAL}
as you suggest.
but
System Error. Code 12029
still occured.
Offline
"System Error. Code 12029" sounds like a firewall issue for me.
You do not have the HTTP server working as expected.
is this because of antivirus? i use avg antivirus, i'll try to disable it.
But,
I just downloaded again all the files in the folder maindemo of the source code repository.
I put it in a new folder named maindemo1.
and the system error code 12029 does not appear anymore.
i just run, and then close immediately, not yet create a new data.
Offline
I just tried to add a new record on maindemo I just downloaded, there is no error message appears.
but the grid displays strange characters like this.
then immediately I tried to add a new record again, and system error appears as follows:
and stop here, after pressing Ok button.
TWinHTTP.InternalSendRequest procedure (const ADATA: TSockData);
var L: integer;
begin
L: = length (Adata);
if not WinHttpSendRequest (fRequest, nil, 0, pointer (ADATA), L, L, 0) or
not WinHttpReceiveResponse (fRequest, nil) then
RaiseLastOSError;
end; //line break here
pressing the F8 key, arriving on this line (line 3810) in SynCrtSock
InternalCloseRequest;
I press and hold the F8 key, until the AV like this
pressing the F7, F8, F9, Shift + F7, Shift + F8, AV appears again and again.
so I press the Ctrl + F2.
Offline
I'm still unable to see your pictures (proxy blocking policy).
About code 12002, this is a HTTP Client-Server error (something like Server not responding).
So there is something wrong with your HTTP connection.
There is a problem with the current implementation of the grid display, when you have one or two rows only within.
I'll fix it ASAP.
Offline
About code 12002, this is a HTTP Client-Server error (something like Server not responding).
So there is something wrong with your HTTP connection.
so, what must i do to fix it?
There is a problem with the current implementation of the grid display, when you have one or two rows only within.
I'll fix it ASAP.
Thank you, i'll waiting for it.
Offline
There is a problem with the current implementation of the grid display, when you have one or two rows only within.
I'll fix it ASAP.
while you improve the implementation of the grid view, please check it thoroughly.
because, when I test, the error does not only occur in one or two records, but sometimes it can be more than 2 records.
Also deleting record without a check mark, the data still appear, but if we press the refresh button.
deleting one or more record with check mark is still problematic.
thank you.
Offline
I've identified and fixed an issue of unhandled buffer in TSQLTableJSON.UpdateFrom().
This was the cause of unexpected characters in grid display, which may occur randomly (even with more than 2 records).
See http://synopse.info/fossil/info/fc65a0c9a2
I've also fixed the UI refresh issues on deletion.
See http://synopse.info/fossil/info/4c881e5bce
Offline
thank you. i'll try it.
Offline
so far, the AV and the odd character has not appeared again.
Thank you.
Offline
. i'm more happy than you about it.
thank you for this wonderful framework, and keep it open source. I'm obsessed with this framework, but UI is an important issue for me. although you have to include it, but it takes time for me to learn. slowly and with your support is very good, I'm sure I could master it later.
and of course I believe this framework will be more perfect
thank you....
Offline
Today failed to run TestSQL3, MainDemo also not working, TestSQL3 exception information is as follows:
--------------------------------------------------------------
2. mORMot
2.1. File based:
! Exception ESQLite3Exception raised with messsage:
! unrecognized token: "'a鐚?, 1791, 1872);"
--------------------------------------------------------------
Offline
We were not able to reproduce the problem.
Both TestSQL3 and MainDemo works as expected on our side.
Are you sure your .obj are the latest available from http://synopse.info/files/sqlite3obj.7z ? Are you not mixing sources or obj?
Could you find out what's wrong? What is the call stack when the exception is triggered on your side? Which version of Delphi are you using?
Offline
Pages: 1