Commit Graph

4841 Commits

Author SHA1 Message Date
Jean-Paul Calderone
1f254fbdcc log the unicode instead of the localized byte string 2019-03-20 16:17:55 -04:00
Jean-Paul Calderone
5bdb37b786 Remove tests for removed code 2019-03-20 12:53:24 -04:00
Jean-Paul Calderone
e2d242d299 remove our implementation of inline_callbacks
re-publish Eliot's
2019-03-20 12:53:24 -04:00
Jean-Paul Calderone
e5e08e8410 Update pin to 1.7.x 2019-03-20 12:53:24 -04:00
Jean-Paul Calderone
a14d9f6116
Merge pull request #574 from tahoe-lafs/3004.eliotloggedruntest-addcleanup
Fix Eliot logging integration

Fixes: ticket:3004
2019-03-19 14:23:13 -04:00
Jean-Paul Calderone
32d56c4dcc Merge remote-tracking branch 'origin/master' into 3004.eliotloggedruntest-addcleanup 2019-03-19 12:29:18 -04:00
Jean-Paul Calderone
ae2be27e3a Merge remote-tracking branch 'origin/master' into 2995.remove-unnecessary-key-copying 2019-03-19 12:09:35 -04:00
Jean-Paul Calderone
4860d16401 Update the comment to reflect the updated implementation 2019-03-18 19:22:38 -04:00
Jean-Paul Calderone
20ba53f586 reflow for changed indentation level 2019-03-18 19:21:05 -04:00
Jean-Paul Calderone
55690bf639 Do it without a new flag
This is safer against other conditions where _deque ends up with items when we
start a scan - for example, if we chunk up deque processing.
2019-03-18 15:38:18 -04:00
Jean-Paul Calderone
6a4d461d38 only break it once because we don't do a full iteration after, now 2019-03-18 15:28:43 -04:00
Jean-Paul Calderone
d3fde4a4c5 and put the iterate into an action 2019-03-18 15:28:35 -04:00
Jean-Paul Calderone
0ac96e9113 put the _process_deque into an action too 2019-03-18 15:28:16 -04:00
Jean-Paul Calderone
20150541a7 put the _perform_scan into an eliot action 2019-03-18 15:27:38 -04:00
Jean-Paul Calderone
e1de96486c Don't re-run _perform_scan in this abstraction violating test
Just do what comes after _perform_scan
2019-03-18 15:11:25 -04:00
Jean-Paul Calderone
d1a62b1c99 Attempt to avoid the startup double-scan and related problems 2019-03-18 14:24:34 -04:00
Jean-Paul Calderone
c01c85522d Use the method
There is a method.  Why not use it?
2019-03-18 14:18:09 -04:00
Jean-Paul Calderone
50867bec8b Accept positional and keyword arguments and pass them on. 2019-03-15 15:13:20 -04:00
Jean-Paul Calderone
fda3d38c85 Avoid the extra dict lookup in the loop
Get the info at iteration time
2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
dd7cb99ef4 Avoid another .keys() call 2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
c83749311f Avoid some function dispatch overhead
Also, we might avoid some dict lookup overhead by being optimistic about
finding the entry.  At worst, we do two lookups - which is just what we did
before.
2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
05eab3ce19 document these things since I had to figure them out 2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
d504ad118f Avoid the extra lookup inside this loop
Get the key and value at the same time during iteration.
2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
0e1bc2e786 As for the previous commit. 2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
62cb883ca2 Just iterate over the dictionary.
It is not shared with anyone.  It is not mutated inside the loop.  We can use
the no-copy dict iterator.
2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
e0c240a559 Use a MessageType so we can have a serializer
This allows us to avoid the .keys() call if logging is not actually enabled,
the common case.
2019-03-14 13:11:47 -04:00
Jean-Paul Calderone
365ff1a02c explain why we need to touch() twice 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
5141105441 Fix typo 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
2cb710ac1e Just touch the path once 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
b14583f0e9 Remove this broken ignore_count thing
The only purpose it serves to make the tests invalid and useless.
2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
dfd0c6e54c fix "downloader" type in message type 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
3978c45b04 spit out the events as raw as we can 2019-03-14 11:26:06 -04:00
Jean-Paul Calderone
fef79cd4a3 re-use the _add_watch helper 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
fcb08b5a3a Move these Eliot events somewhere reusable 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
9ed019f8de Give the tests a little more time. Windows may need it. 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
64826aee37 Clean up stdout a bit 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
3176b6f18a Create the watchdog Observer sooner
This lets us watch before start which Windows seems to really want.
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
263755fb26 Watch before we start.
Linux and macOS are happy to watch after starting.  Our Windows support
library can't deal with such a case, though.

Linux is happy with the other order.  I'm about to find out if macOS is.

There are likely further Windows issues to deal with.
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
2205bf0fdd unused 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
241b6cedfe Remove the skipped tests
They're skipped because we don't need that functionality.  If we need it in
the future, we'll implement it with tests.
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
984d27ab62 simplify 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
67ccd21481 python syntax 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
35fc563a6f Attempt to work-around watchdog bug 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
e0b7919ad8 macOS is picky 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
4cccf5a316 it sure would be useful to be able to inspect these 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
c5c7f954e9 fix it! 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
515475022a add a test for deleting a file and its containing directory
at about the same time
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
0822a71163 If it's some _other_ error then propagate it! 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
c2e19cc098 fix a raft of directory handling issues 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
4b0b269b56 Perform the asserts earlier 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
ed755cf590 it didn't start if the path is invalid 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
f2cfad0cb9 There _is_ no traceback. It's an else. 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
db7af2661a Close a window for a race condition in notification processing 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
81ca822edf Cut the cost of this logging when logging is disabled 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
3ab7138598 some imports we need 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
7440ff6b93 log collective scanning 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
831836d5f6 don't try to propagate for non-directories 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
edfd9d3f92 rejected 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
cf2105364f Try to fix another race in this test 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
600f263a3b marginally improve reporting of uploader count failures 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
17540c78f3 not going to get processed any other way on fsevents 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
da0bbd6bba Make this log message less confusing.
The method name still needs to be fixed.
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
70ec8f2963 log this case 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
de9c681fe2 Let me query for direct children of a directory 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
d4752bde1a try to get more precise watchdog event info 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
4fc99b1b4d oops 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
bfa93adad0 expose another implementation detail! 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
b52524f701 this test probably makes no sense for watchdog 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
8bec797f66 somewhat better failure messages 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
944cb6f425 switch to testtools-compatible skips 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
1d0c862c54 convert some tests over to the new base class
in support of better logging
2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
29e3390fb9 re-use log_call_deferred where it is easy to do so 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
807568e09f Log downloads 2019-03-14 11:24:35 -04:00
Jean-Paul Calderone
ae59679875 log this action 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
ec5ebc2738 fix the Deferred interactions with that last Eliot change 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
641cb8a506 Make these checks a little more informative 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
c63a75dd2a Tag some of test_alice_bob with Eliot actions 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
5d4564ad51 and this test 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
2d2b8a4b7f eliot this too 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
f38f53c28d Add some more action context to this test 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
9d65b5c155 Get back to the reactor thread sooner 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
49c5a1f8d5 remove harmless but irrelevant noise 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
2d5f175712 this is probably more useful and less surprising 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
0845c9ba80 no apparent reason for ths 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
fdd603e42d keep everything in the test context 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
725c85b2f4 try not creating a duplicate Observer 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
679b9a93c1 this is a chunk of work I guess 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
5331820325 Put some Eliot here 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
b19e7c5946 fix and improve callback logging 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
1ec0e48422 good housekeeping 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
3b5e8d7e6b move inotify events eliot field 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
1883cee37f speed up these failures 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
331b96250d Space out file modifications to fit within macOS constraints 2019-03-14 11:24:19 -04:00
Jean-Paul Calderone
6ccd9f4b44 try to get some indication of fake behavior in the log 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
e822d43808 add more detailed logging to this test 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
bda7301cb8 [wip] convert logging to eliot 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
7cbfc07b0c expunge low-grade debugging change 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
75d77305f9 avoid using a bool for a skip value 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
76a6f2d710 Why skip it? It works. 2019-03-14 11:23:16 -04:00
Jean-Paul Calderone
37cb9a1284 Fix the directory deletion test 2019-03-14 11:23:16 -04:00