Hello experts
I'm using MII12.2 and query buffered (allow buffering flag) on a database with several tables locks.
When I get a query timeout (LastErrorMessage of the query is "Response timed out, request terminated"), the query is not queued in the buffer.
Just if I send the query to the buffer setting a wrong used id in the dataserver, then the manager works properly (when I restore the used id, the query completes its logic when the lock is released)
If anybody wants to replicate the enviroment, the query for table lock in SQL Server is
BEGIN TRANSACTION
SELECT * FROM [your table name] WITH (TABLOCKX, HOLDLOCK);
WAITFOR DELAY '00:10:00'
ROLLBACK TRANSACTION
You have to run it in SQL Manager, not in MII
Sequence:
- Create in MII a generic query with SELECT * FROM [your table name], and enable "allow buffering"
- Call it in a transaction (if you want, with exception handler)
- Run the lock query in SQL Server
- Run the transaction (while the table is locked by SQL Server query) and wait transaction/query error
- Check data buffer: the MII query is not buffered
Is it normal?
Is there any patch?
Thanks
Regards
Fabio