You are not logged in.
This is a follow-up for this original post: (https://synopse.info/forum/viewtopic.php?id=3682).
The mORMot server log and madExcept log (client-side0 are located here: (https://gist.github.com/edwinyzh/053ea7 … ff4257dc2c)
Additional info
===
- Client-side: At the time of the original post, the program in question was using client-side transactions, however by now all client-side transactions have already been removed and have been converted to batch-mode instead.
- Server-side: I have applied checking for "is in transaction" before calling
rollback
or
TransactionBegin
.
Note:
===
In the original post, ab said:
I guess there is something wrong with your SQL statement executed in first line, during the Batch sequence.
.
I don't quite understand that, since we cannot compose SQL statements ourselves in batch-mode...
References
===
Discussion about the same SQLite error in the Xaramin forum: (https://forums.xamarin.com/discussion/1 … t-rollback). This error seems to be really mystery...
Last edited by edwinsn (2017-02-16 07:53:24)
Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.
Offline
@ab,
Do you have any other advises at this moment
Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.
Offline
Don't use SQL but batch crud operations.
Or use a server side service with raw SQL execution.
This is what I'm doing now - no client-side CURD/SQL nor clident-side transactions.
Is is possible that the instability of the network, such as when transmitting through VPN, would cause such problems?
Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.
Offline
Offline
@ab,
Does the moRMot framework itself has a mechanism for handling network broken situations? For example, what will happen if the network is broken during a batch-mode update process? Thanks.
Delphi XE4 Pro on Windows 7 64bit.
Lazarus trunk built with fpcupdelux on Windows with cross-compile for Linux 64bit.
Offline
The whole batch content is set at once, so if it reaches the server, it will be executed.
The fact that it is a single sent/answer request makes it much less sensitive to any network error.
It there is a timeout/network issue, it is easy to check on the client side that the information has been added/updated, after re-connection.
Offline