jdaugherty commented on PR #16631:
URL: https://github.com/apache/grails-core/pull/16631#issuecomment-6374599189

   Nine fixes from a review pass over the branch, folded into the single 
commit, now 83e2720c65:
   
   - **JVMs running at the same time share one capture.** The file is written a 
line at a time through an append channel, and a lock file beside it tells the 
first JVM to start, which truncates the file and names the run, from the ones 
that join it: they append to that run without truncating, with their requests 
numbered `<pid>-r1`, `<pid>-r2`. The parallel forks of a test task therefore 
land in one run the command reads whole. A lock file that cannot be created, as 
beside a device, leaves the writer uncoordinated.
   - **Request paths lose their values.** The request line is recorded with 
every path segment that holds a value replaced by `?`: the values the URL 
mapping took from the path, those of the query string, and any segment that is 
a number, a UUID or a long hexadecimal token. `/password/reset/<token>` records 
as `GET /password/reset/?`.
   - **A capture whose writes fail is let go**, so the next capture opened on 
that file starts afresh instead of joining a dead one.
   - **The reader aligns to a line when it attaches** to a live file, so a 
statement being written as the command starts is never read in half.
   - **An idle poll reads nothing**, not even the first line, when the file is 
as long as the reader left it.
   - **`--once` stops when told** while it is still catching up on a large 
capture.
   - **A bare `--file`** no longer names a file called `true`.
   - **The average column** is written with a point whatever the default locale.
   - **`--page=<name>`** no longer matches the `thread:<name>` pages.
   
   Each has a spec: the shared-file protocol through the lock file, the failed 
capture through a named pipe whose reader goes away, the attaching reader 
through a half-written line, the idle poll through a file that refuses to be 
opened, and the rest through their tables.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to