Issue Details (XML | Word | Printable)

Key: CORE-5626
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Dmitry Yemanov
Reporter: Christian Pradelli
Votes: 0
Watchers: 5
Operations

If you were logged in you would be able to see more operations.
Firebird Core

ALTER INDEX INDEX_NAME ACTIVE is not logged to MON$STATEMENTS

Created: 01/Oct/17 06:13 PM   Updated: 01/Oct/17 06:53 PM
Component/s: Engine
Affects Version/s: 3.0.2
Fix Version/s: None

Environment: Ubuntu 16.04 64 bits

QA Status: No test


 Description  « Hide
Creating or recreating an index is not logged to MON$STATEMENTS, so you see an active attachment and and active write transaction but you don't know what it is doing.

We have a service checking for long opened write transactions and close the associated attachment after some minutes.
This is for prevent problems in our server when some developers open a query in a developing tool and then go to lunch forgetting to commit it.
But sometime the transaction is valid, for example when it is creating an index on a large table.
Due to this issue we deactivate the service because there is no way to detect what is doing the transaction.

Regards

 All   Comments   Change History   Subversion Commits      Sort Order: Ascending order - Click to sort in descending order
Dmitry Yemanov added a comment - 01/Oct/17 06:27 PM
It cannot be logged in MON$STATEMENTS, because the index is being rebuilt at commit time, when no statements exist anymore. The same applies to almost all DDL actions. So perhaps MON$TRANSACTIONS should have some indication that it executes some deferred work at the moment.

Christian Pradelli added a comment - 01/Oct/17 06:47 PM
Yes, something indicating that the transaction is doing some deferred work is enough to distinct it from other open and forgotten transactions.