Merge lp:~hrvojem/percona-xtradb-cluster/kewpietest into lp:~percona-dev/percona-xtradb-cluster/5.5.20

Proposed by Hrvoje Matijakovic on 2012-02-20
Status: Merged
Approved by: Vadim Tkachenko on 2012-02-20
Approved revision: 3719
Merged at revision: 3721
Proposed branch: lp:~hrvojem/percona-xtradb-cluster/kewpietest
Merge into: lp:~percona-dev/percona-xtradb-cluster/5.5.20
Diff against target: 230 lines (+180/-1)
5 files modified
.bzrignore (+1/-1)
doc/Makefile (+130/-0)
doc/source/faq.rst (+13/-0)
doc/source/index.rst (+1/-0)
doc/source/kewpietests.rst (+35/-0)
To merge this branch: bzr merge lp:~hrvojem/percona-xtradb-cluster/kewpietest
Reviewer Review Type Date Requested Status
Vadim Tkachenko 2012-02-20 Approve on 2012-02-20
Review via email: mp+93880@code.launchpad.net
To post a comment you must log in.
Vadim Tkachenko (vadim-tk) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file '.bzrignore'
2--- .bzrignore 2012-02-17 18:41:32 +0000
3+++ .bzrignore 2012-02-20 17:18:00 +0000
4@@ -103,6 +103,7 @@
5 CTestTestfile.cmake
6 COPYING
7 COPYING.LIB
8+doc/build/*
9 Docs/#manual.texi#
10 Docs/INSTALL-BINARY
11 Docs/Images/myaccess-odbc.txt
12@@ -156,7 +157,6 @@
13 INSTALL-WIN-SOURCE
14 Logs/*
15 MIRRORS
16-Makefile
17 Makefile.in
18 Makefile.in'
19 PENDING/*
20
21=== added file 'doc/Makefile'
22--- doc/Makefile 1970-01-01 00:00:00 +0000
23+++ doc/Makefile 2012-02-20 17:18:00 +0000
24@@ -0,0 +1,130 @@
25+# Makefile for Sphinx documentation
26+#
27+
28+# You can set these variables from the command line.
29+SPHINXOPTS =
30+SPHINXBUILD = sphinx-build
31+PAPER =
32+BUILDDIR = build
33+
34+# Internal variables.
35+PAPEROPT_a4 = -D latex_paper_size=a4
36+PAPEROPT_letter = -D latex_paper_size=letter
37+ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
38+
39+.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest
40+
41+help:
42+ @echo "Please use \`make <target>' where <target> is one of"
43+ @echo " html to make standalone HTML files"
44+ @echo " dirhtml to make HTML files named index.html in directories"
45+ @echo " singlehtml to make a single large HTML file"
46+ @echo " pickle to make pickle files"
47+ @echo " json to make JSON files"
48+ @echo " htmlhelp to make HTML files and a HTML help project"
49+ @echo " qthelp to make HTML files and a qthelp project"
50+ @echo " devhelp to make HTML files and a Devhelp project"
51+ @echo " epub to make an epub"
52+ @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
53+ @echo " latexpdf to make LaTeX files and run them through pdflatex"
54+ @echo " text to make text files"
55+ @echo " man to make manual pages"
56+ @echo " changes to make an overview of all changed/added/deprecated items"
57+ @echo " linkcheck to check all external links for integrity"
58+ @echo " doctest to run all doctests embedded in the documentation (if enabled)"
59+
60+clean:
61+ -rm -rf $(BUILDDIR)/*
62+
63+html:
64+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
65+ @echo
66+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
67+
68+dirhtml:
69+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
70+ @echo
71+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
72+
73+singlehtml:
74+ $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
75+ @echo
76+ @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
77+
78+pickle:
79+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
80+ @echo
81+ @echo "Build finished; now you can process the pickle files."
82+
83+json:
84+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
85+ @echo
86+ @echo "Build finished; now you can process the JSON files."
87+
88+htmlhelp:
89+ $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
90+ @echo
91+ @echo "Build finished; now you can run HTML Help Workshop with the" \
92+ ".hhp project file in $(BUILDDIR)/htmlhelp."
93+
94+qthelp:
95+ $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
96+ @echo
97+ @echo "Build finished; now you can run "qcollectiongenerator" with the" \
98+ ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
99+ @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PerconaXtraDBCluster.qhcp"
100+ @echo "To view the help file:"
101+ @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PerconaXtraDBCluster.qhc"
102+
103+devhelp:
104+ $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
105+ @echo
106+ @echo "Build finished."
107+ @echo "To view the help file:"
108+ @echo "# mkdir -p $$HOME/.local/share/devhelp/PerconaXtraDBCluster"
109+ @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PerconaXtraDBCluster"
110+ @echo "# devhelp"
111+
112+epub:
113+ $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
114+ @echo
115+ @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
116+
117+latex:
118+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
119+ @echo
120+ @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
121+ @echo "Run \`make' in that directory to run these through (pdf)latex" \
122+ "(use \`make latexpdf' here to do that automatically)."
123+
124+latexpdf:
125+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
126+ @echo "Running LaTeX files through pdflatex..."
127+ make -C $(BUILDDIR)/latex all-pdf
128+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
129+
130+text:
131+ $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
132+ @echo
133+ @echo "Build finished. The text files are in $(BUILDDIR)/text."
134+
135+man:
136+ $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
137+ @echo
138+ @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
139+
140+changes:
141+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
142+ @echo
143+ @echo "The overview file is in $(BUILDDIR)/changes."
144+
145+linkcheck:
146+ $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
147+ @echo
148+ @echo "Link check complete; look for any errors in the above output " \
149+ "or in $(BUILDDIR)/linkcheck/output.txt."
150+
151+doctest:
152+ $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
153+ @echo "Testing of doctests in the sources finished, look at the " \
154+ "results in $(BUILDDIR)/doctest/output.txt."
155
156=== modified file 'doc/source/faq.rst'
157--- doc/source/faq.rst 2012-02-04 01:22:23 +0000
158+++ doc/source/faq.rst 2012-02-20 17:18:00 +0000
159@@ -14,6 +14,19 @@
160 A: When the node crashes, after the restart it will copy whole dataset from another node
161 (if there were changes to data since crash).
162
163+Q: How can I check the Galera node health?
164+==========================================
165+A: Your check should be simply:
166+
167+.. code-block:: mysql
168+
169+ SELECT * FROM someinnodbtable WHERE id=1;
170+
171+3 different results are possible:
172+ * You get the row with id=1 (node is healthy)
173+ * Unknown error (node is online but Galera is not connected/synced with the cluster)
174+ * Connection error (node is not online)
175+
176 Q: Is there a chance to have different table structure on the nodes?
177 =====================================================================
178 What I mean is like having 4 nodes, 4 tables like sessions_a, sessions_b, sessions_c and sessions_d and have each only on one of the nodes?
179
180=== modified file 'doc/source/index.rst'
181--- doc/source/index.rst 2012-02-04 01:22:23 +0000
182+++ doc/source/index.rst 2012-02-20 17:18:00 +0000
183@@ -76,6 +76,7 @@
184
185 singlebox
186 3nodesec2
187+ kewpietests
188 bugreport
189
190 Percona XtraDB Cluster limitations
191
192=== added file 'doc/source/kewpietests.rst'
193--- doc/source/kewpietests.rst 1970-01-01 00:00:00 +0000
194+++ doc/source/kewpietests.rst 2012-02-20 17:18:00 +0000
195@@ -0,0 +1,35 @@
196+===========================
197+How to Execute Kewpie Tests
198+===========================
199+
200+To use kewpie for testing it's recommended to use `this MP <https://code.launchpad.net/~patrick-crews/percona-xtradb-cluster/qp-integrate/+merge/93648>`_. As it removes dbqp and integrates kewpie (and cuts size down to 25MB from 400+).
201+To execute tests:
202+
203+.. code-block:: bash
204+
205+ cd kewpie ; ./kewpie.py [--force ] [--libeatmydata] [--wsrep-provider-path=...]
206+
207+The defaults are to run the cluster_basic and cluster_randgen suites against a 3 node cluster. Cluster_basic is used for small atomic tests like ADD/DROP single/multiple columns on a table and ensuring the change is replicated. cluster_randgen is used for high stress transactional loads. There are single and multi-threaded variants. The load is a mix of INSERT/UPDATE/DELETE/SELECT statements. This includes both regular transactions, single queries, ROLLBACK's and SAVEPOINTs, and a mix of good and bad SQL statements.
208+
209+To view all options, one may look at "./kewpie.py --help". Basic documentation is also available as sphinx docs in kewpie/docs folder. Here are the some of the most used options:
210+
211+.. option:: --force
212+
213+ Run all tests despite failures (default is to stop test execution on first failure)
214+
215+.. option:: --libeatmydata
216+
217+ Use libeatmydata if installed. This can greatly speed up testing in many cases. Can be used in conjunction with:
218+
219+.. option:: --libeatmydata-path to specify where the library is located.
220+
221+.. option:: --wsrep-provider-path
222+
223+ By default, we expect / look for it in /usr/lib/galera/libgalera_smm.so (where it ends up via 'make install'...at least on Ubuntu). If one has an alternate library/location, specify it with this option.
224+
225+Any additional suites may be run this way:
226+
227+.. code-block:: bash
228+
229+ ./kewpie.py [options] --suite=any/suitedir/from/kewpie/percona_tests
230+ ./kewpie.py --suite=crashme

Subscribers

People subscribed via source and target branches