You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With the ConcurrentRunner, multiple test cases execute concurrently. Many test cases print out the jsonrpc calls that they make, to provide the user with some information about what the test is doing.
When there is a large number of tests, it is a bit hard to figure out which test sent which transaction. The ConcurrentRunner prints out a header of the test name before the jsonrpc calls are printed, which helps, but it is still hard to grep. Also if looking at logs from kernel side, it's hard to see what request corresponds to what test case. Furthermore, when trying to reproduce an issue that arises due to concurrent execution of transactions, it is hard to see the temporal ordering of these calls.
jsonrpc calls have an "id" field that can be a string. I propose that we encode the test case and sequence number of the rpc call into this id. One possible way: put threadId or test case name or some kind of test case id into the "id" field. Also put a sequence number (can be implemented by a counter that is per-test-case or global to the entire ConcurrentSuite or put both). Separate the fields with some kind of punctuation
The text was updated successfully, but these errors were encountered:
With the ConcurrentRunner, multiple test cases execute concurrently. Many test cases print out the jsonrpc calls that they make, to provide the user with some information about what the test is doing.
When there is a large number of tests, it is a bit hard to figure out which test sent which transaction. The ConcurrentRunner prints out a header of the test name before the jsonrpc calls are printed, which helps, but it is still hard to grep. Also if looking at logs from kernel side, it's hard to see what request corresponds to what test case. Furthermore, when trying to reproduce an issue that arises due to concurrent execution of transactions, it is hard to see the temporal ordering of these calls.
jsonrpc calls have an "id" field that can be a string. I propose that we encode the test case and sequence number of the rpc call into this id. One possible way: put threadId or test case name or some kind of test case id into the "id" field. Also put a sequence number (can be implemented by a counter that is per-test-case or global to the entire ConcurrentSuite or put both). Separate the fields with some kind of punctuation
The text was updated successfully, but these errors were encountered: