-
-
Notifications
You must be signed in to change notification settings - Fork 270
Concurrency problem in remote profiler communication mechanism #8639
Copy link
Copy link
Closed
Labels
affect-version: 5.0.2affect-version: 6.0 Initialcomponent: enginecomponent: profilerfix-version: 6.0 Alpha 1qa: cannot be testedrlsnotes60: yesAlready added to the Firebird 6.0 release notes. (Do not add this to signal it should be added.)Already added to the Firebird 6.0 release notes. (Do not add this to signal it should be added.)type: bug
Metadata
Metadata
Assignees
Labels
affect-version: 5.0.2affect-version: 6.0 Initialcomponent: enginecomponent: profilerfix-version: 6.0 Alpha 1qa: cannot be testedrlsnotes60: yesAlready added to the Firebird 6.0 release notes. (Do not add this to signal it should be added.)Already added to the Firebird 6.0 release notes. (Do not add this to signal it should be added.)type: bug
Type
Fields
Give feedbackNo fields configured for issues without a type.
The communication mechanism used in remote profiling is susceptible to race condition if the client abandon the read of a message.
That may happen if a
RDB$PROFILERquery is cancelled.In that case, it will unlock the shared memory mutex while the server is processing a command. As soon the server is read to write the response, it will write things to the buffer, but as the client already unlocked the mutex, another client may already had taken the mutex and have written a new command to the same buffer.