- Dec 22, 2011
-
-
Michael Hanselmann authored
I had an idea for improving locking performance. To see if it worked I wrote this tool. Unfortunately the idea didn't quite work (broke unittests left and right), but the tool is still handy for evaluating future changes to the “SharedLock” class. It is not installed or run at build/test time. In its current form it is intended for manual use. Example output: --- Total number of acquisitions: 32642 Per-thread acquisitions: Thread 0: 6536 (20.0%) Thread 1: 6488 (19.9%) Thread 2: 6536 (20.0%) Thread 3: 6529 (20.0%) Thread 4: 6553 (20.1%) Benchmark CPU time: 5.010s Average time per lock acquisition: 0.15348ms Process: User time: 4.160s System time: 1.030s Total time: 5.190s --- Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
When Ganeti was compiled with the option of running as a different user/group, the group ownership of /etc/hosts was set to gnt-daemons. Now permissions for /etc/hosts are preserved (or set correctly). Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
These tests need fakeroot. If it's not present, they are not run (they don't fail). Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Bernardo Dal Seno authored
Tests ending in "-runasroot" or "-runasroot.py" are run through fakeroot, so activity that needs root privileges can be tested. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 21, 2011
-
-
Iustin Pop authored
Even for a small 4-node node-group, this reduces the payload of this RPC call by half for each node; for a big node group, previous testing (using a different patch) showed a general reduction in traffic over the entire cluster verify from 9MB to ~2MB. We only need to change the RPC call, not its return value, since that was already in an "optimised" form. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Currently, all RPC payloads sent by the client to the remote node daemons must be identical, due to how the data is passed internally. This is deficient in both use (from the programmer's point of view) and from the network traffic (cluster verify/disk data gathering has a total payload which is O(n²) in size of the nodes being queried, instead of O(n)). This patch changes the RPC internals so that we always pass dictionaries indexed by target node name. For the default use case, when the payload is identical, we only serialise the payload once, so the extra overhead is just a dict with the node names and values all pointing to the same object. For different payloads, we will encode the body multiple times, but hopefully the bodies will be smaller. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
This will be used in a later patch for parameter pre-processing. For now we just add the parameter as 'None' and add a consistency check for the parameter definitions. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Change a few lines to match rest of code. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Change code style to match rest of Ganeti code and add two tests checking for single-line messages. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
No need to look up the key twice. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Serializing to JSON using “simplejson” is significantly slower when indentation and/or sorting of dictionary keys is used. In simplejson 1.x the difference isn't that big, but with simplejson 2.x the difference can be up to a factor of 7.5. The reason is that the latter no longer uses C functions when sorting or indentation is used. With this patch we revert everything to simplejson's defaults, which should provide us with the best performance available. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 20, 2011
-
-
Andrea Spadaccini authored
When gnt-job submit is used with the --each option, it sends as parameters for QueryJobs a list of lists, each containing a job ID. While this works now, it is not the intended format for QueryJobs. This patch fixes this behavior, by making it send a list of job IDs. Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Dec 19, 2011
-
-
Andrea Spadaccini authored
Cluster destroy would fail if there were errors while deactivating the master IP address. This patch demotes such errors to warnings, allowing the cluster to be destroyed even if the master IP address turndown fails. Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 16, 2011
-
-
Andrea Spadaccini authored
Document the --each option of gnt-debug submit-job. Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 13, 2011
-
-
Michael Hanselmann authored
Users of the RAPI client may want to use feature strings too, therefore they should be explicitely public. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Instead of repeating a “if cond: query.append(…)” pattern, utility functions are added and used. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
By default parameters existing for all opcodes (e.g. “debug_level”) are not listed in the RAPI documentation. With this change the “depends” parameter will be listed unless explicitely excluded. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
The documentation string is used in the RAPI description and having more details is good. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
This will allow us to easily use add new lint rules that we standardise on, if any. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 12, 2011
-
-
Andrea Spadaccini authored
Also, remove some spurious spaces in the documentation of other options and uniform the style of the disk parameters descriptions, by terminating them with a period and adding the measurement unit in square brackets after the description. Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Andrea Spadaccini authored
Add the c-plan-ahead, c-fill-target, c-delay-target, c-max-rate, c-min-rate parameters; report errors while setting the synchronization speed. Change the error signaling model of SetSyncParams. Instead of returning True or False, return a list of errors (to make possible error reporting during the recursive call). Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Andrea Spadaccini authored
constants.py, cmdlib.py: - add the dynamic-resync parameter, both at DT and LD levels; lib/bdev.py: - change SetSyncSpeed to SetSyncParams, and _SetMinorSyncSpeed to _SetMinorSyncParams; - use the dynamic-resync parameter. Later patches will implement the rest of the parameters. Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Andrea Spadaccini authored
Signed-off-by:
Andrea Spadaccini <spadaccio@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
Some Python scripts in /usr/lib/ganeti/ were getting the wrong permissions (their 'x' bit was cleared). This patch fixes that behavior. This patch renames the variable 'dist_tools_PYTHON' to 'python_scripts'. Some Python scripts were listed in the 'dist_tools_PYTHON' variable, but as said scripts have no .py extension in their names, Automake treated the scripts as data files, and hence no 'x' bit. Now the Python scripts are processed by the rules created for the 'dist_tools_SCRIPTS' variable, and such rules don't depend on file name extensions. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
Permissions for the directories created during install depended on the umask of the user running the script. Now umask is reset inside the script to remove such dependency. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Dec 09, 2011
-
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Agata Murawska authored
Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-