David Wilson
49399dfa1a
Merge remote-tracking branch 'origin/dmw'
...
Important FileService fix.
6 years ago
David Wilson
638b196a45
ansible: fix put_file() for large temporary files.
...
Reverts 49736b3a
, large file copies can't avoid the RTT.
The parent stack must be blocked while FileService progresses, as unlike
the small file path, it does not make a snapshot of the (possibly
temporary) file passed by the action plug-in. So we need to keep that
file alive while the service runs.
Add a new integration test and a new soak test to cover both.
6 years ago
David Wilson
530fd18e4c
service: wake FileService client on file open failure.
...
Previously client would hang and excption woud be dumped to logger.
6 years ago
David Wilson
dfc67b89fd
docs: some more cleanups
...
- add faulthandler/thread stacks to changelog.
- various api.rst cleanups.
- docs: explain chain_id in howitworks.
6 years ago
David Wilson
001b63074c
tests: fix another typo.
6 years ago
David Wilson
6cb0e422e9
docs: changelog typo.
6 years ago
David Wilson
9ff34afafe
ansible: fix regression.
6 years ago
David Wilson
d5524178bf
tests: fix bonehead syntax error.
6 years ago
David Wilson
65f03e03f5
tests: remote_tmp test fixes.
6 years ago
David Wilson
5eb41751f5
tests: import missing connection_passthrough
6 years ago
David Wilson
8e9605db02
ssh: fix another 3.x regression.
6 years ago
David Wilson
90f89f95fb
ansible: fix exec_command() regression.
6 years ago
David Wilson
7cd4d0828d
tests: data/fakessh.py 3.x fixes.
6 years ago
David Wilson
b3be182795
ssh: fix 2/3 regression.
6 years ago
David Wilson
294f17e491
core: fix econtext on_start parameter, used by fork_test.
6 years ago
David Wilson
cc4835ce99
docs: update changelog.
6 years ago
David Wilson
f0f828033f
docs: update changelog.
6 years ago
David Wilson
ae446ad7c8
docs: fix changelog
6 years ago
David Wilson
c9596568be
docs: update changelog.
6 years ago
David Wilson
49736b3ae8
ansible: fix FileService call, and remove another roundtrip.
6 years ago
David Wilson
24a44499ca
tests: verify Connection.put_file() for small/large files.
6 years ago
David Wilson
863c1b7597
parent: correct CallSpec name formatting for class methods.
6 years ago
David Wilson
52a121d4aa
Merge remote-tracking branch 'origin/dmw'
6 years ago
David Wilson
2c0244eea7
docs: more tweaks
6 years ago
David Wilson
c8081e7ca1
docs: typo
6 years ago
David Wilson
e241081cae
ansible: stop sharing target temp_dir in runner.
...
This cannot work with delegate_to, since delegate_to permits multiple
concurrent tasks to be executing on the same target.
6 years ago
David Wilson
42d3f96d14
parent: do updates
6 years ago
David Wilson
43d9815f6d
ansible: use CallChain everywhere.
...
This replaces the 'dump to logger' behaviour of pipelined calls from
before with a call chain that returns any exception on next synchronized
call.
6 years ago
David Wilson
020482e554
dosc: update changelog
6 years ago
David Wilson
4d3873c784
core: call chains v3: abstract it into a new CallChain class.
6 years ago
David Wilson
b254eb3399
ansible: fix non-action connection instantiation.
...
e.g. by synchronize module.
6 years ago
David Wilson
705d77a9be
ansible: remove a bunch more aliasing from connection.py.
6 years ago
David Wilson
1bf9b2c1a3
docs: update changelog.
6 years ago
David Wilson
66142e7d75
ansible: fork isolated tasks from correct parent.
...
Closes #355 .
6 years ago
David Wilson
a52f66328b
parent: test fixes.
6 years ago
David Wilson
da8c6b45b0
ansible: remove task_vars aliasing from connection.py.
...
Crazy spam creep.
6 years ago
David Wilson
aa9400a3b9
docs: fix changelog
6 years ago
David Wilson
a3957d6aaf
parent: add Context.forget_chain().
6 years ago
David Wilson
37223adacd
core: fix Dispatcher race introduced in 3a7815e5ca6255272334415916b6289378173859
...
It must be constructed before are messages pumped.
6 years ago
David Wilson
1247d1fce6
docs: update changelog.
6 years ago
David Wilson
42b1b3d286
core: support mitogen_chain dispatcher option.
6 years ago
David Wilson
92c092d27b
core: split Dispatcher out into own class.
6 years ago
David Wilson
32751cd356
master: allow batching context switches for forward_modules()
...
-7 switches per task.
6 years ago
David Wilson
86942b6bf9
ansible: add explanatory exception
...
If disconnection occurs during a Connection.call(), return
AnsibleConnectionFailure.
6 years ago
David Wilson
ba0b3af205
core: remove accidentally checked in debug crap ( #337 )
6 years ago
David Wilson
3c6b72b452
ansible: gracefully return (and explain) ChannelError in ContextService.
...
When Ansible abnormally shuts down, the broker begins
force-disconnecting every context, including those for which connection
is currently in-progress.
When that happens, .call(init_child) throws ChannelError, and that needs
returned back to the worker, assuming the worker still even exists.
This solution is incomplete: with sick nodes, it's also possible the
worker died naturally, and so the worker should perhaps respond by
retrying the connection.
Previously, the unhandled ChannelError would spam the console when e.g.
fork() began returning EAGAIN.
6 years ago
David Wilson
e5d421e5f4
Update k3 inventory.
6 years ago
David Wilson
426cffd9f5
tests: set no_target_syslog
6 years ago
David Wilson
07845d2f59
docs: update changelog.
6 years ago
David Wilson
e647adc62e
ansible: copy GIL change from linear2 branch.
...
Reduces runtime by 25% given 100 25ms SSH targets:
ANSIBLE_STRATEGY=mitogen \
MITOGEN_POOL_SIZE=100 \
/usr/bin/time -l ansible k3-x100 -m shell -a hostname
Before:
39.56 real 35.29 user 17.24 sys
59600896 maximum resident set size
1784252 page reclaims
9016 messages sent
10382 messages received
18774 voluntary context switches
770070 involuntary context switches
After:
29.79 real 22.10 user 11.77 sys
59281408 maximum resident set size
1725268 page reclaims
8582 messages sent
9959 messages received
14582 voluntary context switches
75280 involuntary context switches
6 years ago