#1 2013-12-08 04:26:47

mingda
Member
Registered: 2013-01-04
Posts: 121

First time, run TestSQL3.exe without IDE will always has Exception

First time, run TestSQL3.exe without IDE will always has EInterfaceFactoryException Exception,

Step:

1). download from http://synopse.info/fossil/info/79f5becba8 (2013-12-07)
2). Extract to a directory
3). Extract sqlite3obj.7z to SQLite3 subdirectory
4). Use IDE open TestSQL3.dpr, Build Project
5). Run without Debugging or Shift+Ctrl+F9

always generate below exception, second time run will ok, the exception will disappear.
(To reappearance, it is import to Extract to a new empty directory and first time run TestSQL3.exe without debug)
use DelphiXE

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  11.79ms
  - Service initialization: 133 assertions passed  17.90ms
  - Direct call: 608,487 assertions passed  56.42ms
  - Server side: 608,506 assertions passed  43.84ms

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.ComplexCall interface call: : {
"ErrorCode":500,
"ErrorText":"Exception EAccessViolation: Access violation at address 00462F9E in
 module 'TestSQL3.exe'. Read of address 0017D000"
}


Synopse framework used: 1.18
SQlite3 engine used: 3.8.1
Generated with: Delphi XE compiler

Time elapsed for all tests: 91.49s
Tests performed at 2013-12-8 11:51:21

Total assertions failed for all test suits:  11 / 8,425,513
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

Thanks!

Last edited by mingda (2013-12-08 04:29:38)

Offline

#2 2013-12-08 14:38:00

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,661
Website

Re: First time, run TestSQL3.exe without IDE will always has Exception

I was not able to reproduce it with Delphi XE4 (I do not have XE installed).

Could you enable in the project options:
1) Compiling: Stack Frames = TRUE
2) Linking: Map File = DETAILED

Then you should have the stack trace and faulty source code line numbers in the log file which will be created.

Offline

#3 2013-12-09 01:12:16

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

Update to 2013-12-08 test(http://synopse.info/fossil/info/542954f2cf):

below is the full console output:

   Synopse mORMot Framework Automated tests
  ------------------------------------------


1. Synopse libraries

 1.1. Low level common:
  - System copy record: 22 assertions passed  6.50ms
  - TDynArray: 1,027,702 assertions passed  453.83ms
  - TDynArrayHashed: 1,200,629 assertions passed  400.88ms
  - TObjectListHashed: 999,891 assertions passed  1.03s
  - Fast string compare: 7 assertions passed  258us
!  - IdemPropName: 1 / 24 FAILED  59.38ms
  - Url encoding: 105 assertions passed  2.18ms
  - IsMatch: 599 assertions passed  789us
!  - Soundex: 1 / 35 FAILED  331us
  - Numerical conversions: 886,980 assertions passed  332.80ms
  - Curr 64: 20,053 assertions passed  3.17ms
  - CamelCase: 11 assertions passed  367us
  - Bits: 4,774 assertions passed  377us
  - Ini files: 7,004 assertions passed  42.07ms
  - UTF8: 66,090 assertions passed  3.10s
  - Iso 8601 date and time: 24,006 assertions passed  8.10ms
  - Url decoding: 1,100 assertions passed  787us
  - Mime types: 19 assertions passed  502us
  - TSynTable: 41 assertions passed  1.67ms
  - TSynCache: 404 assertions passed  738us
  - TSynFilter: 1,005 assertions passed  5.12ms
  - TSynValidate: 677 assertions passed  1.61ms
  - TSynLogFile: 42 assertions passed  2.36ms
  Total failed: 2 / 4,241,220  - Low level common FAILED  5.48s

 1.2. Low level types:
  - RTTI: 46 assertions passed  18.27ms
  - Url encoding: 200 assertions passed  4.37ms
  - Encode decode JSON: 261,172 assertions passed  318.79ms
  Total failed: 0 / 261,418  - Low level types PASSED  346.29ms

 1.3. Big table:
  - TSynBigTable: 19,220 assertions passed  176.58ms
  - TSynBigTableString: 16,280 assertions passed  69.38ms
  - TSynBigTableMetaData: 384,060 assertions passed  3.24s
  - TSynBigTableRecord: 452,185 assertions passed  7.48s
  Total failed: 0 / 871,745  - Big table PASSED  10.98s

 1.4. Synopse PDF:
!  - TPdfDocument: 1 / 2 FAILED  29.15ms
!  - TPdfDocumentGDI: 1 / 3 FAILED  94.74ms
  Total failed: 2 / 5  - Synopse PDF FAILED  132.35ms

 1.5. Cryptographic routines:
  - Adler32: 1 assertion passed  1.43ms
  - MD5: 1 assertion passed  432us
  - SHA1: 5 assertions passed  836us
  - SHA256: 5 assertions passed  802us
  - AES256: 6,372 assertions passed  1.47s
  - RC4: 1 assertion passed  1.14ms
  - Base64: 11,994 assertions passed  707.14ms
  Total failed: 0 / 18,379  - Cryptographic routines PASSED  2.20s

 1.6. Compression:
  - In memory compression: 12 assertions passed  1.57s
  - GZIP format: 19 assertions passed  2.72s
  - ZIP format: 36 assertions passed  5.64s
  - SynLZO: 3,006 assertions passed  313.68ms
  - SynLZ: 29,018 assertions passed  1.27s
  Total failed: 0 / 32,091  - Compression PASSED  11.53s


2. mORMot

 2.1. File based:
  - Database direct access: 10,138 assertions passed  562.40ms
  - Virtual table direct access: 12 assertions passed  3.85ms
  - TSQLTableJSON: 109,072 assertions passed  282.12ms
  - TSQLRestClientDB: 605,151 assertions passed  15.34s
  - Regexp function: 6,016 assertions passed  90.82ms
  Total failed: 0 / 730,389  - File based PASSED  16.28s

 2.2. File based memory map:
  - Database direct access: 10,136 assertions passed  516.87ms
  - Virtual table direct access: 12 assertions passed  3.23ms
  - TSQLTableJSON: 109,072 assertions passed  267.14ms
  - TSQLRestClientDB: 605,150 assertions passed  15.12s
  - Regexp function: 6,016 assertions passed  58.51ms
  Total failed: 0 / 730,386  - File based memory map PASSED  15.97s

 2.3. File based WAL:
  - Database direct access: 10,138 assertions passed  524.74ms
  - Virtual table direct access: 12 assertions passed  2.74ms
  - TSQLTableJSON: 109,072 assertions passed  250.86ms
  - TSQLRestClientDB: 605,151 assertions passed  14.65s
  - Regexp function: 6,016 assertions passed  61.83ms
  Total failed: 0 / 730,389  - File based WAL PASSED  15.50s

 2.4. Memory based:
  - Database direct access: 10,136 assertions passed  537.08ms
  - Virtual table direct access: 12 assertions passed  2.11ms
  - TSQLTableJSON: 109,072 assertions passed  253.06ms
  - TSQLRestClientDB: 673,447 assertions passed  16.30s
  - Regexp function: 6,016 assertions passed  62.56ms
  Total failed: 0 / 798,683  - Memory based PASSED  17.16s

 2.5. Basic classes:
!  - TSQLRecord: 7 / 52 FAILED  1.88ms
  - TSQLRecordSigned: 200 assertions passed  14.23ms
  - TSQLModel: 3 assertions passed  880us
  Total failed: 7 / 255  - Basic classes FAILED  29.31ms

 2.6. Client server access:
  - TSQLHttpServer: 2 assertions passed  54.39ms
     using THttpApiServer
  - TSQLHttpClient: 3 assertions passed  113.69ms
  - Http client keep alive: 3,085 assertions passed  1.13s
     4818 B, first 13.26ms, done 1.06s i.e. 941/s, aver. 1.06ms, 4.4 MB/s
  - Http client multi connect: 3,085 assertions passed  1.12s
     4818 B, first 1.31ms, done 1.07s i.e. 933/s, aver. 1.07ms, 4.3 MB/s
  - Named pipe access: 3,087 assertions passed  1.06s
     4818 B, first 260.23ms, done 563.62ms i.e. 1774/s, aver. 563us, 8.2 MB/s
  - Local window messages: 3,086 assertions passed  93.50ms
     4818 B, first 220us, done 79.34ms i.e. 12603/s, aver. 79us, 58.9 MB/s
  - Direct in process access: 3,054 assertions passed  75.19ms
     4818 B, first 72us, done 61.00ms i.e. 16392/s, aver. 61us, 76.6 MB/s
  Total failed: 0 / 15,402  - Client server access PASSED  3.70s

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  23.54ms
  - Service initialization: 133 assertions passed  11.65ms
  - Direct call: 608,487 assertions passed  71.62ms
  - Server side: 608,506 assertions passed  82.39ms

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.ComplexCall interface call: : {
"ErrorCode":500,
"ErrorText":"Exception EAccessViolation: Access violation at address 00462F4C in
 module 'TestSQL3.exe'. Read of address 00199000"
}


Synopse framework used: 1.18
SQlite3 engine used: 3.8.1
Generated with: Delphi XE compiler

Time elapsed for all tests: 99.66s
Tests performed at 2013-12-9 8:54:08

Total assertions failed for all test suits:  11 / 8,430,362
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

this is the log file content, Stack Frames = TRUE , Map File = DETAILED

20131209 08523061 fail  TTestLowLevelCommon(0157A878) Low level common: IdemPropName "" stack trace API 00207EEC SynSelfTests.TTestLowLevelCommon._IdemPropName (2390) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08523061 fail  TTestLowLevelCommon(0157A878) Low level common: Soundex "" stack trace API 001F967E SynSelfTests.TTestLowLevelCommon.Soundex (1040) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08524555 fail  TTestSynopsePDF(0157ABF8) Synopse PDF: TPdfDocument "" stack trace API 00218EF8 SynSelfTests.TTestSynopsePDF._TPdfDocument (4673) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08524561 fail  TTestSynopsePDF(0157ABF8) Synopse PDF: TPdfDocumentGDI "" stack trace API 0021B200 SynSelfTests.TTestSynopsePDF._TPdfDocumentGDI (4843) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 00214C20 SynSelfTests.TTestBasicClasses._TSQLRecord (4000) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 00214CCA SynSelfTests.TTestBasicClasses._TSQLRecord (4010) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 00214DBF SynSelfTests.TTestBasicClasses._TSQLRecord (4023) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 0021504E SynSelfTests.TTestBasicClasses._TSQLRecord (4042) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 002151CF SynSelfTests.TTestBasicClasses._TSQLRecord (4054) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 0021539D SynSelfTests.TTestBasicClasses._TSQLRecord (4068) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540446 fail  TTestBasicClasses(0157AD48) Basic classes: TSQLRecord "" stack trace API 00215427 SynSelfTests.TTestBasicClasses._TSQLRecord (4069) 0023B863 mORMotSelfTests.SQLite3ConsoleTests (211) 
20131209 08540843 EXCOS EAccessViolation (C0000005) at 00061F4C SynCommons.RawUnicodeToUtf8 (9816)  stack trace API 0008C824 SynCommons.SynRtlUnwind (32472) 00006190 System.@HandleOnException (14162) 
20131209 08540843 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00462F4C in module 'TestSQL3.exe'. Read of address 00199000\"\r\n}") at 0018051E mORMot.RaiseError (32020)  stack trace API 0008C824 SynCommons.SynRtlUnwind (32472) 00006190 System.@HandleOnException (14162) 

this time when run without debug, will alway has exception, run in ide has no exception,
strange things is after run in ide, then run without debug also no exception.
so to reappearance this, first time please not run in ide, then you will can see this.

Offline

#4 2013-12-09 08:00:11

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,661
Website

Re: First time, run TestSQL3.exe without IDE will always has Exception

Are you running a non latin Windows?

Offline

#5 2013-12-09 12:38:07

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

Yes, Windows 2003 Server Chinese version

Offline

#6 2014-01-15 01:49:23

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

Update: Exception now is not alway generate on first run, you need run TestSQL3 some times(about ten times, need run NOT from IDE), you will see exception,

In 2014-01-08 build(http://synopse.info/fossil/info/37cd2be9b3), I run TestSQL3 more than ten times,
in console output don't see any exception, this is very good.

But in today build(2014-01-14), after success run TestSQL3.exe three time(important NOT FROM IDE),
then I again in console output see exception(at 2.7. Service oriented architecture test section):

   Synopse mORMot Framework Automated tests
  ------------------------------------------


1. Synopse libraries

 1.1. Low level common:
  - System copy record: 22 assertions passed  2.59ms
  - TDynArray: 1,027,702 assertions passed  437.63ms
  - TDynArrayHashed: 1,200,629 assertions passed  429.39ms
  - TObjectListHashed: 999,882 assertions passed  1.02s
  - Fast string compare: 7 assertions passed  404us
!  - IdemPropName: 1 / 30 FAILED  9.41ms
  - Url encoding: 105 assertions passed  2.17ms
  - GUID: 9,005 assertions passed  5.31ms
  - IsMatch: 599 assertions passed  572us
!  - Soundex: 1 / 35 FAILED  420us
  - Numerical conversions: 896,407 assertions passed  337.01ms
  - Curr 64: 20,053 assertions passed  3.49ms
  - CamelCase: 11 assertions passed  336us
  - Bits: 4,774 assertions passed  356us
  - Ini files: 7,004 assertions passed  41.64ms
  - UTF8: 78,102 assertions passed  3.00s
  - Iso 8601 date and time: 24,006 assertions passed  9.94ms
  - Url decoding: 1,100 assertions passed  828us
  - Mime types: 20 assertions passed  589us
  - TSynTable: 41 assertions passed  2.37ms
  - TSynCache: 404 assertions passed  648us
  - TSynFilter: 1,005 assertions passed  5.08ms
  - TSynValidate: 677 assertions passed  1.70ms
  - TSynLogFile: 42 assertions passed  2.26ms
  Total failed: 2 / 4,271,662  - Low level common FAILED  5.33s

 1.2. Low level types:
  - RTTI: 52 assertions passed  514us
  - Url encoding: 200 assertions passed  1.53ms
  - Encode decode JSON: 261,851 assertions passed  296.01ms
  - TSynDocumentVariant: 764 assertions passed  101.46ms
  Total failed: 0 / 262,867  - Low level types PASSED  411.02ms

 1.3. Big table:
  - TSynBigTable: 19,191 assertions passed  239.50ms
  - TSynBigTableString: 16,115 assertions passed  70.25ms
  - TSynBigTableMetaData: 384,060 assertions passed  3.15s
  - TSynBigTableRecord: 452,185 assertions passed  7.48s
  Total failed: 0 / 871,551  - Big table PASSED  10.96s

 1.4. Synopse PDF:
!  - TPdfDocument: 1 / 2 FAILED  9.64ms
!  - TPdfDocumentGDI: 1 / 3 FAILED  55.67ms
  Total failed: 2 / 5  - Synopse PDF FAILED  68.84ms

 1.5. Cryptographic routines:
  - Adler32: 1 assertion passed  414us
  - MD5: 1 assertion passed  758us
  - SHA1: 5 assertions passed  626us
  - SHA256: 5 assertions passed  613us
  - AES256: 16,815 assertions passed  1.71s
  - RC4: 1 assertion passed  222us
  - Base64: 11,994 assertions passed  293.62ms
  - CompressShaAes: 1,683 assertions passed  6.90ms
  Total failed: 0 / 30,505  - Cryptographic routines PASSED  2.02s

 1.6. Compression:
  - In memory compression: 12 assertions passed  550.84ms
  - GZIP format: 19 assertions passed  1.04s
  - ZIP format: 36 assertions passed  1.96s
  - SynLZO: 3,006 assertions passed  182.14ms
  - SynLZ: 29,018 assertions passed  1.10s
  Total failed: 0 / 32,091  - Compression PASSED  4.86s


2. mORMot

 2.1. File based:
  - Database direct access: 10,138 assertions passed  459.17ms
  - Virtual table direct access: 12 assertions passed  3.67ms
  - TSQLTableJSON: 109,072 assertions passed  264.83ms
  - TSQLRestClientDB: 605,151 assertions passed  14.72s
  - Regexp function: 6,016 assertions passed  66.39ms
  Total failed: 0 / 730,389  - File based PASSED  15.53s

 2.2. File based memory map:
  - Database direct access: 10,136 assertions passed  452.81ms
  - Virtual table direct access: 12 assertions passed  2.91ms
  - TSQLTableJSON: 109,072 assertions passed  261.22ms
  - TSQLRestClientDB: 605,150 assertions passed  14.78s
  - Regexp function: 6,016 assertions passed  56.56ms
  Total failed: 0 / 730,386  - File based memory map PASSED  15.58s

 2.3. File based WAL:
  - Database direct access: 10,138 assertions passed  488.00ms
  - Virtual table direct access: 12 assertions passed  2.66ms
  - TSQLTableJSON: 109,072 assertions passed  255.78ms
  - TSQLRestClientDB: 605,151 assertions passed  14.69s
  - Regexp function: 6,016 assertions passed  55.27ms
  Total failed: 0 / 730,389  - File based WAL PASSED  15.50s

 2.4. Memory based:
  - Database direct access: 10,136 assertions passed  447.13ms
  - Virtual table direct access: 12 assertions passed  1.98ms
  - TSQLTableJSON: 109,072 assertions passed  251.65ms
  - TSQLRestClientDB: 673,447 assertions passed  16.06s
  - Regexp function: 6,016 assertions passed  56.43ms
  - RTree: 140,000 assertions passed  2.31s
  Total failed: 0 / 938,683  - Memory based PASSED  19.14s

 2.5. Basic classes:
!  - TSQLRecord: 7 / 52 FAILED  1.15ms
  - TSQLRecordSigned: 200 assertions passed  7.67ms
  - TSQLModel: 3 assertions passed  509us
  Total failed: 7 / 255  - Basic classes FAILED  14.07ms

 2.6. Client server access:
  - TSQLHttpServer: 2 assertions passed  25.90ms
     using THttpApiServer
  - TSQLHttpClient: 3 assertions passed  109.26ms
  - Http client keep alive: 3,085 assertions passed  1.51s
     4818 B, first 31.91ms, done 1.39s i.e. 718/s, aver. 1.39ms, 3.3 MB/s
  - Http client multi connect: 3,085 assertions passed  1.37s
     4818 B, first 4.54ms, done 1.24s i.e. 805/s, aver. 1.24ms, 3.7 MB/s
  - Http client encrypted: 3,085 assertions passed  1.33s
     4818 B, first 2.15ms, done 1.27s i.e. 786/s, aver. 1.27ms, 3.6 MB/s
  - Named pipe access: 3,087 assertions passed  1.06s
     4818 B, first 262.63ms, done 569.24ms i.e. 1756/s, aver. 569us, 8.2 MB/s
  - Local window messages: 3,086 assertions passed  100.31ms
     4818 B, first 797us, done 81.35ms i.e. 12291/s, aver. 81us, 57.4 MB/s
  - Direct in process access: 3,054 assertions passed  74.33ms
     4818 B, first 84us, done 62.56ms i.e. 15982/s, aver. 62us, 74.7 MB/s
  Total failed: 0 / 18,487  - Client server access PASSED  5.63s

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  681us
  - Service initialization: 200 assertions passed  5.23ms
  - Direct call: 566,568 assertions passed  60.22ms
  - Server side: 566,587 assertions passed  66.81ms
  - Client side REST: 566,592 assertions passed  1.13s
  - Client side REST result as object: 566,586 assertions passed  1.14s
  - Client side REST synchronized: 566,586 assertions passed  5.72s
  - Client side REST weak authentication: 566,586 assertions passed  1.05s
  - Client side REST custom record layout: 566,586 assertions passed  1.07s
  - Client side JSONRPC: 566,586 assertions passed  1.21s

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.ComplexCall interface call: : {
"ErrorCode":500,
"ErrorText":"Exception EAccessViolation: Access violation at address 00464BA8 in
 module 'TestSQL3.exe'. Read of address 00193000"
}


Synopse framework used: 1.18
SQlite3 engine used: 3.8.2
Generated with: Delphi XE compiler

Time elapsed for all tests: 106.77s
Tests performed at 2014-1-15 9:22:32

Total assertions failed for all test suits:  11 / 8,617,270
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

Turn Project Mapfile to Detailed, this is the log content, run two times, log is same:

20140115 09170441 fail  TTestLowLevelCommon(0116A878) Low level common: IdemPropName "" stack trace API 0021B4B1 SynSelfTests.TTestLowLevelCommon._IdemPropName (2478) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09170442 fail  TTestLowLevelCommon(0116A878) Low level common: Soundex "" stack trace API 0020C75A SynSelfTests.TTestLowLevelCommon.Soundex (1076) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09171928 fail  TTestSynopsePDF(0116AC68) Synopse PDF: TPdfDocument "" stack trace API 00230F8C SynSelfTests.TTestSynopsePDF._TPdfDocument (5142) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09171935 fail  TTestSynopsePDF(0116AC68) Synopse PDF: TPdfDocumentGDI "" stack trace API 00233294 SynSelfTests.TTestSynopsePDF._TPdfDocumentGDI (5312) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022C961 SynSelfTests.TTestBasicClasses._TSQLRecord (4425) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022CA0B SynSelfTests.TTestBasicClasses._TSQLRecord (4435) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022CB00 SynSelfTests.TTestBasicClasses._TSQLRecord (4448) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022CD8F SynSelfTests.TTestBasicClasses._TSQLRecord (4467) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022CF10 SynSelfTests.TTestBasicClasses._TSQLRecord (4479) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022D0DE SynSelfTests.TTestBasicClasses._TSQLRecord (4493) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09183708 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022D168 SynSelfTests.TTestBasicClasses._TSQLRecord (4494) 00255997 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140115 09185326 EXCOS EAccessViolation (C0000005) at 00063BA8 SynCommons.RawUnicodeToUtf8 (10584)  stack trace API 00091A74 SynCommons.SynRtlUnwind (34559) 0000614C System.@HandleOnException 
20140115 09185326 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00464BA8 in module 'TestSQL3.exe'. Read of address 00193000\"\r\n}") at 0018B69A mORMot.RaiseError (32338)  stack trace API 00091A74 SynCommons.SynRtlUnwind (34559) 0000614C System.@HandleOnException 

Can you look at this, build use DelphiXE, thanks!

Offline

#7 2014-01-15 10:25:49

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,661
Website

Re: First time, run TestSQL3.exe without IDE will always has Exception

Those test failures are raised due to the fact that the regression tests were developed on a Latin windows (i.e. using Win1252 code page).
I suppose you are using a Chinese code page, and some hard coded characters in the test cases do not pass.

IMHO this is not a problem of the framework itself, but a problem of the test cases themselves.
We tried to make it as independent as possible, but we do not have any MBCS Windows here, so we are not able to reproduce the problem.

Could you help on this?

Offline

#8 2014-01-15 14:33:53

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

ab wrote:

Could you help on this?

I am happy to do anything, what I need to do?


Another thing, since our OS missing some Western European character sets, in SynSelfTests.pas file

procedure TTestSynopsePDF._TPdfDocument;
...
      for i := 1 to 30 do begin
        Canvas.SetFont('Arial',9+i,[]);
        WS := 'Texte accentue n?+IntToString(i);  <==

this make we can't edit the file, if edit will not compile, can you change this line to:

        WS := 'Texte accentue n'+#$B0+IntToString(i);

thanks!

Offline

#9 2014-01-15 17:51:38

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,661
Website

Re: First time, run TestSQL3.exe without IDE will always has Exception

OK.

I've tried to fix some unexpected failed test cases durnig regression tests, when running on MBCS (e.g. Asian) systems.
See http://synopse.info/fossil/info/b1209db5dc

I hope it will help the tests pass on your system.

Thanks for the feedback!

Offline

#10 2014-01-16 01:44:40

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

thank your quick fix, update to 2014-01-15 build, make a full build and
then run not from ide, very glad to see some failed test has passed, but when
run to section  2.7. Service oriented architecture, there still has exception,
then test stop, so i change project map file to Detailed, then rebuild, then run not from ide,
console output is below:

   Synopse mORMot Framework Automated tests
  ------------------------------------------


1. Synopse libraries

 1.1. Low level common:
  - System copy record: 22 assertions passed  3.14ms
  - TDynArray: 1,027,702 assertions passed  515.72ms
  - TDynArrayHashed: 1,200,629 assertions passed  395.13ms
  - TObjectListHashed: 999,884 assertions passed  948.23ms
  - Fast string compare: 7 assertions passed  334us
  - IdemPropName: 30 assertions passed  1.27ms
  - Url encoding: 105 assertions passed  2.41ms
  - GUID: 9,005 assertions passed  5.95ms
  - IsMatch: 599 assertions passed  828us
  - Soundex: 35 assertions passed  231us
  - Numerical conversions: 895,938 assertions passed  336.35ms
  - Curr 64: 20,053 assertions passed  4.92ms
  - CamelCase: 11 assertions passed  1.07ms
  - Bits: 4,774 assertions passed  1.02ms
  - Ini files: 7,004 assertions passed  85.90ms
  - UTF8: 78,102 assertions passed  2.87s
  - Iso 8601 date and time: 24,006 assertions passed  10.35ms
  - Url decoding: 1,100 assertions passed  1.27ms
  - Mime types: 20 assertions passed  535us
  - TSynTable: 41 assertions passed  3.94ms
  - TSynCache: 404 assertions passed  549us
  - TSynFilter: 1,005 assertions passed  5.02ms
  - TSynValidate: 677 assertions passed  1.47ms
  - TSynLogFile: 42 assertions passed  2.55ms
  Total failed: 0 / 4,271,195  - Low level common PASSED  5.21s

 1.2. Low level types:
  - RTTI: 52 assertions passed  28.59ms
  - Url encoding: 200 assertions passed  12.58ms
  - Encode decode JSON: 261,851 assertions passed  328.30ms
  - TSynDocumentVariant: 817 assertions passed  36.38ms
!  - BSON: 1 / 20,000,015 FAILED  537.44ms
  Total failed: 1 / 20,262,935  - Low level types FAILED  950.92ms

 1.3. Big table:
  - TSynBigTable: 19,280 assertions passed  183.54ms
  - TSynBigTableString: 16,165 assertions passed  68.80ms
  - TSynBigTableMetaData: 384,060 assertions passed  3.24s
  - TSynBigTableRecord: 452,185 assertions passed  8.26s
  Total failed: 0 / 871,690  - Big table PASSED  11.76s

 1.4. Synopse PDF:
!  - TPdfDocument: 1 / 2 FAILED  38.59ms
  - TPdfDocumentGDI: 5 assertions passed  119.69ms
  Total failed: 1 / 7  - Synopse PDF FAILED  162.32ms

 1.5. Cryptographic routines:
  - Adler32: 1 assertion passed  633us
  - MD5: 1 assertion passed  591us
  - SHA1: 5 assertions passed  474us
  - SHA256: 5 assertions passed  356us
  - AES256: 16,815 assertions passed  1.69s
  - RC4: 1 assertion passed  2.32ms
  - Base64: 11,994 assertions passed  281.73ms
  - CompressShaAes: 1,683 assertions passed  7.51ms
  Total failed: 0 / 30,505  - Cryptographic routines PASSED  1.99s

 1.6. Compression:
  - In memory compression: 12 assertions passed  536.97ms
  - GZIP format: 19 assertions passed  1.06s
  - ZIP format: 36 assertions passed  1.93s
  - SynLZO: 3,006 assertions passed  180.08ms
  - SynLZ: 29,018 assertions passed  1.12s
  Total failed: 0 / 32,091  - Compression PASSED  4.85s


2. mORMot

 2.1. File based:
  - Database direct access: 10,138 assertions passed  506.89ms
  - Virtual table direct access: 12 assertions passed  15.66ms
  - TSQLTableJSON: 109,072 assertions passed  279.69ms
  - TSQLRestClientDB: 605,151 assertions passed  14.62s
  - Regexp function: 6,016 assertions passed  54.00ms
  Total failed: 0 / 730,389  - File based PASSED  15.48s

 2.2. File based memory map:
  - Database direct access: 10,136 assertions passed  489.75ms
  - Virtual table direct access: 12 assertions passed  4.79ms
  - TSQLTableJSON: 109,072 assertions passed  268.36ms
  - TSQLRestClientDB: 605,150 assertions passed  14.72s
  - Regexp function: 6,016 assertions passed  48.29ms
  Total failed: 0 / 730,386  - File based memory map PASSED  15.54s

 2.3. File based WAL:
  - Database direct access: 10,138 assertions passed  511.02ms
  - Virtual table direct access: 12 assertions passed  2.83ms
  - TSQLTableJSON: 109,072 assertions passed  246.39ms
  - TSQLRestClientDB: 605,151 assertions passed  14.72s
  - Regexp function: 6,016 assertions passed  52.75ms
  Total failed: 0 / 730,389  - File based WAL PASSED  15.54s

 2.4. Memory based:
  - Database direct access: 10,136 assertions passed  510.95ms
  - Virtual table direct access: 12 assertions passed  3.90ms
  - TSQLTableJSON: 109,072 assertions passed  268.46ms
  - TSQLRestClientDB: 673,447 assertions passed  15.90s
  - Regexp function: 6,016 assertions passed  68.26ms
  - RTree: 140,000 assertions passed  2.33s
  Total failed: 0 / 938,683  - Memory based PASSED  19.10s

 2.5. Basic classes:
!  - TSQLRecord: 7 / 52 FAILED  1.35ms
  - TSQLRecordSigned: 200 assertions passed  7.40ms
  - TSQLModel: 3 assertions passed  363us
  Total failed: 7 / 255  - Basic classes FAILED  13.82ms

 2.6. Client server access:
  - TSQLHttpServer: 2 assertions passed  28.04ms
     using THttpApiServer
  - TSQLHttpClient: 3 assertions passed  83.89ms
  - Http client keep alive: 3,085 assertions passed  1.16s
     4818 B, first 11.09ms, done 1.09s i.e. 912/s, aver. 1.09ms, 4.2 MB/s
  - Http client multi connect: 3,085 assertions passed  1.18s
     4818 B, first 1.20ms, done 1.09s i.e. 916/s, aver. 1.09ms, 4.2 MB/s
  - Http client encrypted: 3,085 assertions passed  1.15s
     4818 B, first 1.61ms, done 1.10s i.e. 906/s, aver. 1.10ms, 4.2 MB/s
  - Named pipe access: 3,087 assertions passed  1.01s
     4818 B, first 260.24ms, done 523.32ms i.e. 1910/s, aver. 523us, 8.9 MB/s
  - Local window messages: 3,086 assertions passed  90.25ms
     4818 B, first 256us, done 78.56ms i.e. 12727/s, aver. 78us, 59.5 MB/s
  - Direct in process access: 3,054 assertions passed  70.03ms
     4818 B, first 82us, done 60.43ms i.e. 16547/s, aver. 60us, 77.3 MB/s
  Total failed: 0 / 18,487  - Client server access PASSED  4.81s

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  802us
  - Service initialization: 200 assertions passed  20.37ms
  - Direct call: 566,568 assertions passed  59.76ms
  - Server side: 566,587 assertions passed  59.18ms
  - Client side REST: 566,592 assertions passed  1.08s
  - Client side REST result as object: 566,586 assertions passed  1.04s
  - Client side REST synchronized: 71 assertions passed  5.91ms
  - Client side REST weak authentication: 566,586 assertions passed  1.04s
  - Client side REST custom record layout: 566,586 assertions passed  1.06s
  - Client side JSONRPC: 566,586 assertions passed  1.07s

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.Add interface call: :


Synopse framework used: 1.18
SQlite3 engine used: 3.8.2
Generated with: Delphi XE compiler

Time elapsed for all tests: 131.63s
Tests performed at 2014-1-16 9:19:59

Total assertions failed for all test suits:  9 / 28,617,012
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

log content is:

20140116 09175337 fail  TTestLowLevelTypes(0116A8E8) Low level types: BSON "" stack trace API 0022C608 SynSelfTests.TTestLowLevelTypes._BSON (4228) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09180526 fail  TTestSynopsePDF(0116AC68) Synopse PDF: TPdfDocument "" stack trace API 0023440D SynSelfTests.TTestSynopsePDF._TPdfDocument (5215) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022FDD9 SynSelfTests.TTestBasicClasses._TSQLRecord (4497) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022FE83 SynSelfTests.TTestBasicClasses._TSQLRecord (4507) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 0022FF78 SynSelfTests.TTestBasicClasses._TSQLRecord (4520) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 00230207 SynSelfTests.TTestBasicClasses._TSQLRecord (4539) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 00230388 SynSelfTests.TTestBasicClasses._TSQLRecord (4551) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 00230556 SynSelfTests.TTestBasicClasses._TSQLRecord (4565) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09191811 fail  TTestBasicClasses(0116ADF0) Basic classes: TSQLRecord "" stack trace API 002305E0 SynSelfTests.TTestBasicClasses._TSQLRecord (4566) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09192520 EXCOS EAccessViolation (C0000005) at 00063B30 SynCommons.RawUnicodeToUtf8 (10634)  stack trace API 00091CC4 SynCommons.SynRtlUnwind (34733) 00005FC4 System.@HandleAnyException 0007CEDB SynCommons.TTextWriter.AddDynArrayJSON (26442) 0007C94A SynCommons.TTextWriter.AddDynArrayJSON (26347) 00193A4A mORMot.TServiceMethodArgument.AddJSON (34578) 0018BAFF mORMot.InternalProcess (32391) 0018C3E6 mORMot.TInterfacedObjectFake.FakeCall (32516) 
20140116 09195904 EXC   EOSError ("System Error.  Code: 12002.\r\n") at 00025195 SysUtils.RaiseLastOSError  stack trace API 00091CC4 SynCommons.SynRtlUnwind (34733) 0000614C System.@HandleOnException 
20140116 09195904 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.Add interface call: : ") at 0018B90A mORMot.RaiseError (32338)  stack trace API 00091CC4 SynCommons.SynRtlUnwind (34733) 0000614C System.@HandleOnException 
20140116 09195906 EXC   EHttpApiServer ("HttpSendHttpResponse failed: 句柄无效。 (6)") at 000AB08A SynCrtSock.THttpApiServer.Execute (4272)  stack trace API 00091CC4 SynCommons.SynRtlUnwind (34733) 0000614C System.@HandleOnException 

but the exception (! Exception EInterfaceFactoryException raised with messsage:!  Invalid fake ICalculator.Add interface call: smile is not not same as first time,

so third time, i run testSQL3.exe from IDE, then exception disappear, the log content is :

20140116 09211812 fail  TTestLowLevelTypes(0107A8E8) Low level types: BSON "" stack trace API 0022C608 SynSelfTests.TTestLowLevelTypes._BSON (4228) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09213105 fail  TTestSynopsePDF(0107AC68) Synopse PDF: TPdfDocument "" stack trace API 0023440D SynSelfTests.TTestSynopsePDF._TPdfDocument (5215) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09224741 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 0022FDD9 SynSelfTests.TTestBasicClasses._TSQLRecord (4497) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09224917 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 0022FE83 SynSelfTests.TTestBasicClasses._TSQLRecord (4507) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09225049 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 0022FF78 SynSelfTests.TTestBasicClasses._TSQLRecord (4520) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09225129 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 00230207 SynSelfTests.TTestBasicClasses._TSQLRecord (4539) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09225206 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 00230388 SynSelfTests.TTestBasicClasses._TSQLRecord (4551) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09225241 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 00230556 SynSelfTests.TTestBasicClasses._TSQLRecord (4565) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140116 09225307 fail  TTestBasicClasses(0107ADF0) Basic classes: TSQLRecord "" stack trace API 002305E0 SynSelfTests.TTestBasicClasses._TSQLRecord (4566) 00258E93 mORMotSelfTests.SQLite3ConsoleTests (208) 

I wish can find the reason why generate exception when NOT RUN FROM IDE, but no exception when from ide.
thanks!

Offline

#11 2014-01-24 04:43:44

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

seems AV occur at procedure TestOverHTTP, when call TestCalculator, in TServiceCalculator.ComplexCall implement,

function TServiceCalculator.ComplexCall(const Ints: TIntegerDynArray;
  Strs1: TRawUTF8DynArray; var Str2: TWideStringDynArray; const Rec1: TVirtualTableModuleProperties;
  var Rec2: TSQLRestCacheEntryValue; Float1: double; var Float2: double): TSQLRestCacheEntryValue;
var i: integer;
begin
  result := Rec2;
  result.JSON := StringToUTF8(Rec1.FileExtension);
  i := length(Str2);
  SetLength(Str2,i+1);
//  Str2[i] := UTF8ToWideString(RawUTF8ArrayToCSV(Strs1));  //<== AV occur at
  Str2[i] := UTF8ToString(RawUTF8ArrayToCSV(Strs1));
  inc(Rec2.ID);
  dec(Rec2.TimeStamp);
  Rec2.JSON := IntegerDynArrayToCSV(Ints,length(Ints));
  Float2 := Float1;
end;

after replace UTF8ToWideString to UTF8ToString, AV disappear, don't know why, now only some test failed left

log content like this:

20140124 12045344 fail  TTestLowLevelTypes(0116A8E8) Low level types: BSON "" stack trace API 00233C09 SynSelfTests.TTestLowLevelTypes._BSON (4364) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12050444 fail  TTestSynopsePDF(0116ABF8) Synopse PDF: TPdfDocument "" stack trace API 0023EAD5 SynSelfTests.TTestSynopsePDF._TPdfDocument (5518) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 00239E36 SynSelfTests.TTestBasicClasses._TSQLRecord (4772) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 00239EE0 SynSelfTests.TTestBasicClasses._TSQLRecord (4782) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 00239FD5 SynSelfTests.TTestBasicClasses._TSQLRecord (4795) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A264 SynSelfTests.TTestBasicClasses._TSQLRecord (4814) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A3EB SynSelfTests.TTestBasicClasses._TSQLRecord (4826) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A5C9 SynSelfTests.TTestBasicClasses._TSQLRecord (4840) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A663 SynSelfTests.TTestBasicClasses._TSQLRecord (4846) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "JSON object as text" stack trace API 0023A6DF SynSelfTests.TTestBasicClasses._TSQLRecord (4849) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A73A SynSelfTests.TTestBasicClasses._TSQLRecord (4851) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A924 SynSelfTests.TTestBasicClasses._TSQLRecord (4861) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12061707 fail  TTestBasicClasses(0116AD80) Basic classes: TSQLRecord "" stack trace API 0023A98E SynSelfTests.TTestBasicClasses._TSQLRecord (4864) 00263BAF mORMotSelfTests.SQLite3ConsoleTests (208) 
20140124 12063900 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.Add interface call: TInterfaceStub returned error: expected exception") at 0018CFDA mORMot.RaiseError (32346)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12063900 EXC   ESynException ("expected exception") at 00191ED2 mORMot.TInterfaceStub.Invoke (33713)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12065443 EXC   ECrtSocket ("SockRecvLn 10053") at 000A6BE6 SynCrtSock.TCrtSocket.SockRecvLn (1868)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12065444 EXC   ECrtSocket ("SockRecvLn 10053") at 000A6BE6 SynCrtSock.TCrtSocket.SockRecvLn (1868)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12065445 EXC   ECrtSocket ("SndLow -10053") at 000A6463 SynCrtSock.TCrtSocket.SndLow (1652)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12065445 EXC   ECrtSocket ("SockRecvLn 10053") at 000A6BE6 SynCrtSock.TCrtSocket.SockRecvLn (1868)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 0000614C System.@HandleOnException 
20140124 12065449 EXCOS EAccessViolation (C0000005) at 000A85ED SynCrtSock.THttpServerResp.ResetServer (2656)  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 00005FC4 System.@HandleAnyException 000A89BA SynCrtSock.THttpServerResp.Execute (2751) 0004D04D Classes.ThreadProc 00006A2A System.ThreadWrapper 
20140124 12065449 EXCOS EAccessViolation (C0000005) at  stack trace API 00092E8C SynCommons.SynRtlUnwind (35456) 00005FC4 System.@HandleAnyException 000A86A2 SynCrtSock.THttpServerResp.ResetServer (2669) 000A89BA SynCrtSock.THttpServerResp.Execute (2751) 0004D04D Classes.ThreadProc 00006A2A System.ThreadWrapper 

use the last daily build and DelphiXE, thanks!

Offline

#12 2014-01-24 16:16:15

ab
Administrator
From: France
Registered: 2010-06-21
Posts: 14,661
Website

Re: First time, run TestSQL3.exe without IDE will always has Exception

Please try the latest version - I just committed some changes to UTF8ToWideString.

The SockRecvLn errors are either about firewall issues, or since you launched the tests several times in a short time, and the client sockets are not yet released by the OS.

Offline

#13 2014-01-25 08:14:13

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

thanks for the fix, after build, first run, see exception,

   Synopse mORMot Framework Automated tests
  ------------------------------------------


1. Synopse libraries

 1.1. Low level common:
  - System copy record: 22 assertions passed  28.03ms
  - TDynArray: 1,027,702 assertions passed  510.71ms
  - TDynArrayHashed: 1,200,629 assertions passed  500.98ms
  - TObjectListHashed: 999,898 assertions passed  1.17s
  - Fast string compare: 7 assertions passed  915us
  - IdemPropName: 30 assertions passed  3.01ms
  - Url encoding: 105 assertions passed  5.95ms
  - GUID: 9,005 assertions passed  17.70ms
  - IsMatch: 599 assertions passed  1.93ms
  - Soundex: 35 assertions passed  981us
  - Numerical conversions: 1,065,414 assertions passed  618.08ms
  - Curr 64: 20,053 assertions passed  3.45ms
  - CamelCase: 11 assertions passed  278us
  - Bits: 4,774 assertions passed  342us
  - Ini files: 7,004 assertions passed  48.75ms
  - UTF8: 79,102 assertions passed  2.97s
  - Iso 8601 date and time: 24,006 assertions passed  11.68ms
  - Url decoding: 1,100 assertions passed  1.89ms
  - Mime types: 20 assertions passed  963us
  - TSynTable: 873 assertions passed  27.07ms
  - TSynCache: 404 assertions passed  1.11ms
  - TSynFilter: 1,005 assertions passed  6.69ms
  - TSynValidate: 677 assertions passed  2.17ms
  - TSynLogFile: 42 assertions passed  5.72ms
  Total failed: 0 / 4,442,517  - Low level common PASSED  5.96s

 1.2. Low level types:
  - RTTI: 52 assertions passed  35.06ms
  - Url encoding: 200 assertions passed  3.91ms
  - Encode decode JSON: 261,982 assertions passed  379.77ms
  - TDocVariant: 1,597 assertions passed  60.17ms
!  - BSON: 1 / 20,000,123 FAILED  555.22ms
  Total failed: 1 / 20,263,954  - Low level types FAILED  1.03s

 1.3. Big table:
  - TSynBigTable: 19,275 assertions passed  250.04ms
  - TSynBigTableString: 16,013 assertions passed  68.12ms
  - TSynBigTableMetaData: 384,060 assertions passed  3.27s
  - TSynBigTableRecord: 452,185 assertions passed  8.35s
  Total failed: 0 / 871,533  - Big table PASSED  11.94s

 1.4. Synopse PDF:
!  - TPdfDocument: 1 / 2 FAILED  74.96ms
  - TPdfDocumentGDI: 5 assertions passed  712.77ms
  Total failed: 1 / 7  - Synopse PDF FAILED  790.57ms

 1.5. Cryptographic routines:
  - Adler32: 1 assertion passed  1.06ms
  - MD5: 1 assertion passed  1.09ms
  - SHA1: 5 assertions passed  998us
  - SHA256: 5 assertions passed  984us
  - AES256: 16,815 assertions passed  1.85s
  - RC4: 1 assertion passed  1.05ms
  - Base64: 11,994 assertions passed  320.93ms
  - CompressShaAes: 1,683 assertions passed  7.08ms
  Total failed: 0 / 30,505  - Cryptographic routines PASSED  2.19s

 1.6. Compression:
  - In memory compression: 12 assertions passed  562.36ms
  - GZIP format: 19 assertions passed  1.11s
  - ZIP format: 36 assertions passed  2.11s
  - SynLZO: 3,006 assertions passed  180.47ms
  - SynLZ: 29,018 assertions passed  1.10s
  Total failed: 0 / 32,091  - Compression PASSED  5.08s


2. mORMot

 2.1. File based:
  - Database direct access: 10,138 assertions passed  590.31ms
  - Virtual table direct access: 12 assertions passed  28.45ms
  - TSQLTableJSON: 109,072 assertions passed  290.32ms
  - TSQLRestClientDB: 605,151 assertions passed  15.50s
  - Regexp function: 6,016 assertions passed  62.65ms
  Total failed: 0 / 730,389  - File based PASSED  16.47s

 2.2. File based memory map:
  - Database direct access: 10,136 assertions passed  513.82ms
  - Virtual table direct access: 12 assertions passed  5.04ms
  - TSQLTableJSON: 109,072 assertions passed  288.88ms
  - TSQLRestClientDB: 605,150 assertions passed  15.79s
  - Regexp function: 6,016 assertions passed  49.91ms
  Total failed: 0 / 730,386  - File based memory map PASSED  16.65s

 2.3. File based WAL:
  - Database direct access: 10,138 assertions passed  587.63ms
  - Virtual table direct access: 12 assertions passed  2.51ms
  - TSQLTableJSON: 109,072 assertions passed  249.34ms
  - TSQLRestClientDB: 605,151 assertions passed  16.40s
  - Regexp function: 6,016 assertions passed  50.35ms
  Total failed: 0 / 730,389  - File based WAL PASSED  17.29s

 2.4. Memory based:
  - Database direct access: 10,136 assertions passed  460.91ms
  - Virtual table direct access: 12 assertions passed  4.95ms
  - TSQLTableJSON: 109,072 assertions passed  291.71ms
  - TSQLRestClientDB: 673,447 assertions passed  16.83s
  - Regexp function: 6,016 assertions passed  53.63ms
  - RTree: 140,000 assertions passed  2.43s
  Total failed: 0 / 938,683  - Memory based PASSED  20.08s

 2.5. Basic classes:
!  - TSQLRecord: 11 / 65 FAILED  1.90ms
  - TSQLRecordSigned: 200 assertions passed  7.85ms
  - TSQLModel: 3 assertions passed  328us
  Total failed: 11 / 268  - Basic classes FAILED  12.06ms

 2.6. Client server access:
  - TSQLHttpServer: 2 assertions passed  39.14ms
     using THttpApiServer
  - TSQLHttpClient: 3 assertions passed  136.07ms
  - HTTP client keep alive: 3,087 assertions passed  1.26s
     4818 B, first 14.92ms, done 1.17s i.e. 847/s, aver. 1.17ms, 3.9 MB/s
  - HTTP client multi connect: 3,087 assertions passed  1.27s
     4818 B, first 1.40ms, done 1.21s i.e. 820/s, aver. 1.21ms, 3.8 MB/s
  - HTTP client encrypted: 3,087 assertions passed  1.23s
     4818 B, first 1.10ms, done 1.18s i.e. 845/s, aver. 1.18ms, 3.9 MB/s
  - Named pipe access: 3,089 assertions passed  1.09s
     4818 B, first 259.87ms, done 606.19ms i.e. 1649/s, aver. 606us, 7.7 MB/s
  - Local window messages: 3,088 assertions passed  103.58ms
     4818 B, first 228us, done 90.41ms i.e. 11060/s, aver. 90us, 51.7 MB/s
  - Direct in process access: 3,056 assertions passed  80.86ms
     4818 B, first 94us, done 69.16ms i.e. 14457/s, aver. 69us, 67.6 MB/s
  - HTTP several DB servers: 9,604 assertions passed  3.98s
     4818 B, first 2.55ms, done 1.21s i.e. 824/s, aver. 1.21ms, 3.8 MB/s
     4818 B, first 1.68ms, done 1.07s i.e. 932/s, aver. 1.07ms, 4.3 MB/s
     4818 B, first 1.81ms, done 1.07s i.e. 933/s, aver. 1.07ms, 4.3 MB/s
  Total failed: 0 / 28,103  - Client server access PASSED  9.21s

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  16.10ms
  - Service initialization: 200 assertions passed  30.81ms
  - Direct call: 566,568 assertions passed  60.37ms
  - Server side: 566,587 assertions passed  59.88ms
  - Client side REST: 566,592 assertions passed  1.12s
  - Client side REST result as object: 566,586 assertions passed  1.10s
  - Client side REST synchronized: 94 assertions passed  7.57ms

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.ComplexCall interface call: : {
"ErrorCode":500,
"ErrorText":"Exception EAccessViolation: Access violation at address 00464F04 in
 module 'TestSQL3.exe'. Read of address 00186000"
}


Synopse framework used: 1.18
SQlite3 engine used: 3.8.2
Generated with: Delphi XE compiler

Time elapsed for all tests: 109.23s
Tests performed at 2014-1-25 14:18:29

Total assertions failed for all test suits:  13 / 28,798,825
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

log content

20140125 14164709 fail  TTestLowLevelTypes(0117A8E8) Low level types: BSON "" stack trace API 00495016 004995F2 00485DFD 0063564D 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14165911 warn  Test failed 
20140125 14165911 fail  TTestSynopsePDF(0117ABF8) Synopse PDF: TPdfDocument "" stack trace API 00495016 004995F2 00485DFD 00640519 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063B87A 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063B924 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063BA19 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063BCA8 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063BE2F 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063C00D 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063C0A7 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed JSON object as text
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "JSON object as text" stack trace API 00495016 004995F2 00485DFD 0063C123 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063C17E 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063C368 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14181746 warn  Test failed 
20140125 14181746 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 00495016 004995F2 00485DFD 0063C3D2 00486A22 006655D7 0066B3D9 7C82F23B 
20140125 14182924 EXCOS EAccessViolation (C0000005) at 00464F04  stack trace API 00493F14 00406FC4 7C958723 7C95855E 0047F57B 0047EFE6 005969D1 0058EA17 0058F336 
20140125 14182924 EXCOS EAccessViolation (C0000005) at 00464F04  stack trace API 00493F14 0040714C 
20140125 14182924 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00464F04 in module 'TestSQL3.exe'. Read of address 00186000\"\r\n}") at 0058E822  stack trace API 00493F14 0040714C 

so i turn project map file to detail, then rebuild test, run 10 times, only at tenth, see exception, the first to ninth no exception.

log content is :

20140125 15361344 fail  TTestLowLevelTypes(0117A8E8) Low level types: BSON "" stack trace API 0023464D SynSelfTests.TTestLowLevelTypes._BSON (4364) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15362546 warn  Test failed 
20140125 15362546 fail  TTestSynopsePDF(0117ABF8) Synopse PDF: TPdfDocument "" stack trace API 0023F519 SynSelfTests.TTestSynopsePDF._TPdfDocument (5518) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A87A SynSelfTests.TTestBasicClasses._TSQLRecord (4772) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A924 SynSelfTests.TTestBasicClasses._TSQLRecord (4782) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AA19 SynSelfTests.TTestBasicClasses._TSQLRecord (4795) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023ACA8 SynSelfTests.TTestBasicClasses._TSQLRecord (4814) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AE2F SynSelfTests.TTestBasicClasses._TSQLRecord (4826) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B00D SynSelfTests.TTestBasicClasses._TSQLRecord (4840) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B0A7 SynSelfTests.TTestBasicClasses._TSQLRecord (4846) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed JSON object as text
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "JSON object as text" stack trace API 0023B123 SynSelfTests.TTestBasicClasses._TSQLRecord (4849) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B17E SynSelfTests.TTestBasicClasses._TSQLRecord (4851) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B368 SynSelfTests.TTestBasicClasses._TSQLRecord (4861) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15374440 warn  Test failed 
20140125 15374440 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B3D2 SynSelfTests.TTestBasicClasses._TSQLRecord (4864) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15375351 EXCOS EAccessViolation (C0000005) at 00063F56 SynCommons.RawUnicodeToUtf8 (11085)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 
20140125 15375351 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00464F56 in module 'TestSQL3.exe'. Read of address 00196000\"\r\n}") at 0018D822 mORMot.RaiseError (32453)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 

then I turn project map file off, rebuild test, seems easy to see exception, at second run, exception happend:

   Synopse mORMot Framework Automated tests
  ------------------------------------------


1. Synopse libraries

 1.1. Low level common:
  - System copy record: 22 assertions passed  600us
  - TDynArray: 1,027,702 assertions passed  446.32ms
  - TDynArrayHashed: 1,200,629 assertions passed  433.42ms
  - TObjectListHashed: 999,887 assertions passed  1.08s
  - Fast string compare: 7 assertions passed  268us
  - IdemPropName: 30 assertions passed  377us
  - Url encoding: 105 assertions passed  2.10ms
  - GUID: 9,005 assertions passed  6.28ms
  - IsMatch: 599 assertions passed  534us
  - Soundex: 35 assertions passed  462us
  - Numerical conversions: 1,062,848 assertions passed  550.52ms
  - Curr 64: 20,053 assertions passed  3.40ms
  - CamelCase: 11 assertions passed  500us
  - Bits: 4,774 assertions passed  623us
  - Ini files: 7,004 assertions passed  44.19ms
  - UTF8: 79,102 assertions passed  3.11s
  - Iso 8601 date and time: 24,006 assertions passed  13.58ms
  - Url decoding: 1,100 assertions passed  2.37ms
  - Mime types: 20 assertions passed  1.63ms
  - TSynTable: 873 assertions passed  11.68ms
  - TSynCache: 404 assertions passed  1.12ms
  - TSynFilter: 1,005 assertions passed  8.61ms
  - TSynValidate: 677 assertions passed  3.86ms
  - TSynLogFile: 42 assertions passed  3.17ms
  Total failed: 0 / 4,439,940  - Low level common PASSED  5.74s

 1.2. Low level types:
  - RTTI: 52 assertions passed  404us
  - Url encoding: 200 assertions passed  1.43ms
  - Encode decode JSON: 261,982 assertions passed  339.82ms
  - TDocVariant: 1,597 assertions passed  70.28ms
!  - BSON: 1 / 20,000,123 FAILED  507.48ms
  Total failed: 1 / 20,263,954  - Low level types FAILED  922.59ms

 1.3. Big table:
  - TSynBigTable: 19,120 assertions passed  218.27ms
  - TSynBigTableString: 16,128 assertions passed  69.29ms
  - TSynBigTableMetaData: 384,060 assertions passed  3.30s
  - TSynBigTableRecord: 452,185 assertions passed  7.76s
  Total failed: 0 / 871,493  - Big table PASSED  11.36s

 1.4. Synopse PDF:
!  - TPdfDocument: 1 / 2 FAILED  28.41ms
  - TPdfDocumentGDI: 5 assertions passed  121.07ms
  Total failed: 1 / 7  - Synopse PDF FAILED  151.86ms

 1.5. Cryptographic routines:
  - Adler32: 1 assertion passed  507us
  - MD5: 1 assertion passed  355us
  - SHA1: 5 assertions passed  322us
  - SHA256: 5 assertions passed  371us
  - AES256: 16,815 assertions passed  1.63s
  - RC4: 1 assertion passed  922us
  - Base64: 11,994 assertions passed  343.69ms
  - CompressShaAes: 1,683 assertions passed  12.14ms
  Total failed: 0 / 30,505  - Cryptographic routines PASSED  2.00s

 1.6. Compression:
  - In memory compression: 12 assertions passed  526.35ms
  - GZIP format: 19 assertions passed  1.09s
  - ZIP format: 36 assertions passed  1.97s
  - SynLZO: 3,006 assertions passed  176.55ms
  - SynLZ: 29,018 assertions passed  1.04s
  Total failed: 0 / 32,091  - Compression PASSED  4.82s


2. mORMot

 2.1. File based:
  - Database direct access: 10,138 assertions passed  517.73ms
  - Virtual table direct access: 12 assertions passed  4.14ms
  - TSQLTableJSON: 109,072 assertions passed  250.47ms
  - TSQLRestClientDB: 605,151 assertions passed  15.28s
  - Regexp function: 6,016 assertions passed  68.21ms
  Total failed: 0 / 730,389  - File based PASSED  16.13s

 2.2. File based memory map:
  - Database direct access: 10,136 assertions passed  544.73ms
  - Virtual table direct access: 12 assertions passed  8.74ms
  - TSQLTableJSON: 109,072 assertions passed  310.45ms
  - TSQLRestClientDB: 605,150 assertions passed  15.35s
  - Regexp function: 6,016 assertions passed  59.76ms
  Total failed: 0 / 730,386  - File based memory map PASSED  16.28s

 2.3. File based WAL:
  - Database direct access: 10,138 assertions passed  555.01ms
  - Virtual table direct access: 12 assertions passed  2.37ms
  - TSQLTableJSON: 109,072 assertions passed  237.44ms
  - TSQLRestClientDB: 605,151 assertions passed  16.06s
  - Regexp function: 6,016 assertions passed  52.22ms
  Total failed: 0 / 730,389  - File based WAL PASSED  16.91s

 2.4. Memory based:
  - Database direct access: 10,136 assertions passed  474.63ms
  - Virtual table direct access: 12 assertions passed  5.02ms
  - TSQLTableJSON: 109,072 assertions passed  274.62ms
  - TSQLRestClientDB: 673,447 assertions passed  16.79s
  - Regexp function: 6,016 assertions passed  76.08ms
  - RTree: 140,000 assertions passed  2.31s
  Total failed: 0 / 938,683  - Memory based PASSED  19.94s

 2.5. Basic classes:
!  - TSQLRecord: 11 / 65 FAILED  1.50ms
  - TSQLRecordSigned: 200 assertions passed  6.97ms
  - TSQLModel: 3 assertions passed  305us
  Total failed: 11 / 268  - Basic classes FAILED  9.66ms

 2.6. Client server access:
  - TSQLHttpServer: 2 assertions passed  13.50ms
     using THttpApiServer
  - TSQLHttpClient: 3 assertions passed  61.82ms
  - HTTP client keep alive: 3,087 assertions passed  1.16s
     4818 B, first 10.18ms, done 1.09s i.e. 910/s, aver. 1.09ms, 4.2 MB/s
  - HTTP client multi connect: 3,087 assertions passed  1.15s
     4818 B, first 1.73ms, done 1.10s i.e. 902/s, aver. 1.10ms, 4.2 MB/s
  - HTTP client encrypted: 3,087 assertions passed  1.20s
     4818 B, first 1.04ms, done 1.14s i.e. 870/s, aver. 1.14ms, 4.0 MB/s
  - Named pipe access: 3,089 assertions passed  1.05s
     4818 B, first 259.29ms, done 562.55ms i.e. 1777/s, aver. 562us, 8.3 MB/s
  - Local window messages: 3,088 assertions passed  146.84ms
     4818 B, first 909us, done 130.80ms i.e. 7645/s, aver. 130us, 35.7 MB/s
  - Direct in process access: 3,056 assertions passed  79.36ms
     4818 B, first 85us, done 69.07ms i.e. 14477/s, aver. 69us, 67.6 MB/s
  - HTTP several DB servers: 9,604 assertions passed  3.78s
     4818 B, first 1.78ms, done 1.05s i.e. 945/s, aver. 1.05ms, 4.4 MB/s
     4818 B, first 1.89ms, done 1.06s i.e. 939/s, aver. 1.06ms, 4.3 MB/s
     4818 B, first 1.57ms, done 1.06s i.e. 940/s, aver. 1.06ms, 4.3 MB/s
  Total failed: 0 / 28,103  - Client server access PASSED  8.67s

 2.7. Service oriented architecture:
  - Weak interfaces: 56 assertions passed  588us
  - Service initialization: 200 assertions passed  6.22ms
  - Direct call: 566,568 assertions passed  63.33ms
  - Server side: 566,587 assertions passed  61.63ms
  - Client side REST: 566,592 assertions passed  1.06s
  - Client side REST result as object: 566,586 assertions passed  1.14s
  - Client side REST synchronized: 566,586 assertions passed  5.80s
  - Client side REST weak authentication: 566,586 assertions passed  1.00s
  - Client side REST custom record layout: 566,586 assertions passed  1.10s
  - Client side JSONRPC: 566,586 assertions passed  1.16s

! Exception EInterfaceFactoryException raised with messsage:
!  Invalid fake ICalculator.ComplexCall interface call: : {
"ErrorCode":500,
"ErrorText":"Exception EAccessViolation: Access violation at address 00464F04 in
 module 'TestSQL3.exe'. Read of address 00188000"
}


Synopse framework used: 1.18
SQlite3 engine used: 3.8.2
Generated with: Delphi XE compiler

Time elapsed for all tests: 114.71s
Tests performed at 2014-1-25 15:53:40

Total assertions failed for all test suits:  13 / 28,796,208
! Some tests FAILED: please correct the code.

Done - Press ENTER to Exit

log content:

20140125 15515215 fail  TTestLowLevelTypes(0117A8E8) Low level types: BSON "" stack trace API 0023464D SynSelfTests.TTestLowLevelTypes._BSON (4364) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15520341 warn  Test failed 
20140125 15520341 fail  TTestSynopsePDF(0117ABF8) Synopse PDF: TPdfDocument "" stack trace API 0023F519 SynSelfTests.TTestSynopsePDF._TPdfDocument (5518) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531958 warn  Test failed 
20140125 15531958 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A87A SynSelfTests.TTestBasicClasses._TSQLRecord (4772) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531958 warn  Test failed 
20140125 15531958 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A924 SynSelfTests.TTestBasicClasses._TSQLRecord (4782) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531958 warn  Test failed 
20140125 15531958 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AA19 SynSelfTests.TTestBasicClasses._TSQLRecord (4795) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531958 warn  Test failed 
20140125 15531958 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023ACA8 SynSelfTests.TTestBasicClasses._TSQLRecord (4814) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531958 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AE2F SynSelfTests.TTestBasicClasses._TSQLRecord (4826) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B00D SynSelfTests.TTestBasicClasses._TSQLRecord (4840) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B0A7 SynSelfTests.TTestBasicClasses._TSQLRecord (4846) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed JSON object as text
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "JSON object as text" stack trace API 0023B123 SynSelfTests.TTestBasicClasses._TSQLRecord (4849) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B17E SynSelfTests.TTestBasicClasses._TSQLRecord (4851) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B368 SynSelfTests.TTestBasicClasses._TSQLRecord (4861) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15531959 warn  Test failed 
20140125 15531959 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B3D2 SynSelfTests.TTestBasicClasses._TSQLRecord (4864) 002645D7 mORMotSelfTests.SQLite3ConsoleTests (208) 
20140125 15534022 EXCOS EAccessViolation (C0000005) at 00063F04 SynCommons.RawUnicodeToUtf8 (11073)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 
20140125 15534022 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00464F04 in module 'TestSQL3.exe'. Read of address 00188000\"\r\n}") at 0018D822 mORMot.RaiseError (32453)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 

Offline

#14 2014-01-25 08:45:58

mingda
Member
Registered: 2013-01-04
Posts: 121

Re: First time, run TestSQL3.exe without IDE will always has Exception

in TServiceCalculator.ComplexCall implement change

  //Str2[i] := UTF8ToWideString(RawUTF8ArrayToCSV(Strs1));
  Str2[i] := UTF8ToString(RawUTF8ArrayToCSV(Strs1));

another log content, looks more comprehensive

20140125 16324251 fail  TTestLowLevelTypes(0117A8E8) Low level types: BSON "" stack trace API 0023464D SynSelfTests.TTestLowLevelTypes._BSON (4364) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16325401 warn  Test failed 
20140125 16325401 fail  TTestSynopsePDF(0117ABF8) Synopse PDF: TPdfDocument "" stack trace API 0023F519 SynSelfTests.TTestSynopsePDF._TPdfDocument (5518) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A87A SynSelfTests.TTestBasicClasses._TSQLRecord (4772) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023A924 SynSelfTests.TTestBasicClasses._TSQLRecord (4782) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AA19 SynSelfTests.TTestBasicClasses._TSQLRecord (4795) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023ACA8 SynSelfTests.TTestBasicClasses._TSQLRecord (4814) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023AE2F SynSelfTests.TTestBasicClasses._TSQLRecord (4826) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B00D SynSelfTests.TTestBasicClasses._TSQLRecord (4840) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B0A7 SynSelfTests.TTestBasicClasses._TSQLRecord (4846) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed JSON object as text
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "JSON object as text" stack trace API 0023B123 SynSelfTests.TTestBasicClasses._TSQLRecord (4849) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B17E SynSelfTests.TTestBasicClasses._TSQLRecord (4851) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B368 SynSelfTests.TTestBasicClasses._TSQLRecord (4861) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16342354 warn  Test failed 
20140125 16342354 fail  TTestBasicClasses(0117AD80) Basic classes: TSQLRecord "" stack trace API 0023B3D2 SynSelfTests.TTestBasicClasses._TSQLRecord (4864) 002645F3 mORMotSelfTests.SQLite3ConsoleTests (209) 
20140125 16343839 EXCOS EAccessViolation (C0000005) at 00063F04 SynCommons.RawUnicodeToUtf8 (11073)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 00005FC4 System.@HandleAnyException 0007E57B SynCommons.TTextWriter.AddDynArrayJSON (27406) 0007DFE6 SynCommons.TTextWriter.AddDynArrayJSON (27311) 001959D1 mORMot.TServiceMethodArgument.AddJSON (34700) 0018DA17 mORMot.InternalProcess (32506) 0018E336 mORMot.TInterfacedObjectFake.FakeCall (32633) 
20140125 16344028 EXCOS EAccessViolation (C0000005) at 00063F56 SynCommons.RawUnicodeToUtf8 (11085)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 
20140125 16344028 EXC   EInterfaceFactoryException ("Invalid fake ICalculator.ComplexCall interface call: : {\r\n\"ErrorCode\":500,\r\n\"ErrorText\":\"Exception EAccessViolation: Access violation at address 00464F56 in module 'TestSQL3.exe'. Read of address 00189000\"\r\n}") at 0018D822 mORMot.RaiseError (32453)  stack trace API 00092F14 SynCommons.SynRtlUnwind (35514) 0000614C System.@HandleOnException 

Offline

Board footer

Powered by FluxBB