Skip to content
Newer
Older
100644 468 lines (375 sloc) 14.5 KB
5d4e56a update readme.
Robert Newson authored Mar 6, 2009
1 <h1>News</h1>
2
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
3 The indexing API in 0.3 has changed since 0.2 to allow multiple design documents and "views" into Lucene. It will moves the Lucene-specific stuff into an options object.
764563b update news in README.
Robert Newson authored Apr 4, 2009
4
8bc0cb8 add warning about the changes. 0.3 is not far away\!
Robert Newson authored Apr 26, 2009
5 Note: This documentation is slightly ahead of the code. In particular, the "defaults" field and the "language" and "analyzer" options are not yet available. I wanted to expose the new API now that I've had time to verify that it's working.
6
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
7 <h1>Issue Tracking</h1>
6b2b22c add lighthouseapp link.
Robert Newson authored Mar 16, 2009
8 Issue tracking now available at <a href="http://rnewson.lighthouseapp.com/projects/27420-couchdb-lucene"/>lighthouseapp</a>.
5d4e56a update readme.
Robert Newson authored Mar 6, 2009
9
ef3f787 add sysreq for Sun JDK.
Robert Newson authored Apr 6, 2009
10 <h1>System Requirements</h1>
11
12 Sun JDK 5 or higher is necessary. Couchdb-lucene is known to be incompatible with OpenJDK as it includes an earlier, and incompatible, version of the Rhino Javascript library.
13
5220b65 tweak README.md
Robert Newson authored Feb 14, 2009
14 <h1>Build couchdb-lucene</h1>
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
15
16 <ol>
17 <li>Install Maven 2.
18 <li>checkout repository
19 <li>type 'mvn'
20 <li>configure couchdb (see below)
21 </ol>
22
23 <h1>Configure CouchDB</h1>
24
25 <pre>
0563120 fixes.
Robert Newson authored Mar 7, 2009
26 [couchdb]
27 os_process_timeout=60000 ; increase the timeout from 5 seconds.
28
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
29 [external]
77d4f67 fix readme.
Robert Newson authored Mar 7, 2009
30 fti=/usr/bin/java -jar /path/to/couchdb-lucene*-jar-with-dependencies.jar -search
a2e9024 wip
Robert Newson authored Mar 6, 2009
31
32 [update_notification]
33 indexer=/usr/bin/java -jar /path/to/couchdb-lucene*-jar-with-dependencies.jar -index
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
34
35 [httpd_db_handlers]
36 _fti = {couch_httpd_external, handle_external_req, <<"fti">>}
37 </pre>
38
39 <h1>Indexing Strategy</h1>
40
4a60080 use couchdb's content_type rather than auto-detect.
Robert Newson authored Feb 18, 2009
41 <h2>Document Indexing</h2>
42
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
43 You must supply a index function in order to enable couchdb-lucene as by default, nothing will be indexed.
a2e9024 wip
Robert Newson authored Mar 6, 2009
44
437eae9 s/view/fulltext in README.md
Robert Newson authored May 3, 2009
45 You may add any number of index views in any number of design documents. All searches will be constrained to documents emitted by the index functions.
c207a60 update README
Robert Newson authored Apr 4, 2009
46
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
47 Declare your functions as follows;
a2e9024 wip
Robert Newson authored Mar 6, 2009
48
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
49 <pre>
50 {
8ff99e1 tidy docs
Robert Newson authored Apr 21, 2009
51 "views": {
52 <i>conventional view code goes here</i>
53 },
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
54 "fulltext": {
55 "by_subject": {
56 "defaults": { "store":"yes" },
57 "index":"function(doc) { var ret=new Document(); ret.add(doc.subject); return ret }"
58 },
59 "french_documents": {
60 "defaults": { "language":"fr" },
61 "index":"function(doc) { if (doc.language != "fr") { return null;} var ret=new Document(); <i>etc</i> return ret; }"
62 }
63 }
64 }
65 </pre>
66
67 A fulltext object contains multiple index view declarations. An index view consists of;
68
69 <dl>
70 <dt>defaults</dt><dd>The default for numerous indexing options can be overridden here. A full list of options follows.</dd>
71 <dt>index</dt><dd>The indexing function itself, documented below.</dd>
72
73 <h3>The Defaults Object</h3>
74
75 The following indexing options can be defaulted;
76
77 <table>
78 <tr>
79 <th>name</th>
80 <th>description</th>
81 <th>available options</th>
82 <th>default</th>
83 </tr>
84 <tr>
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
85 <th>field</th>
86 <td>the field name to index under</td>
87 <td>user-defined</td>
88 <td>default</td>
89 </tr>
90 <tr>
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
91 <th>store</th>
f16fc9c docs
Robert Newson authored Apr 26, 2009
92 <td>whether the data is stored. The value will be returned in the search result.</td>
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
93 <td>yes, no</td>
94 <td>no</td>
95 </tr>
96 <tr>
97 <th>index</th>
98 <td>whether (and how) the data is indexed</td>
8328332 typo
Robert Newson authored Apr 21, 2009
99 <td>analyzed, analyzed_no_norms, no, not_analyzed, not_analyzed_no_norms</td>
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
100 <td>analyzed</td>
101 </tr>
102 <tr>
103 <th>analyzer</th>
104 <td>how the data is analyzed</td>
24591d9 docs
Robert Newson authored Apr 26, 2009
105 <td>auto, simple, standard</td>
106 <td>auto</td>
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
107 </tr>
108 <tr>
109 <th>language</th>
110 <td>which language the data is in</td>
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
111 <td>auto, br, cjk, cn, cz, de, el, en, fr, nl, ru, th</td>
697884b documentation of future features.
Robert Newson authored Apr 21, 2009
112 <td>en</td>
113 </tr>
114 </table>
087dcec update documentation.
Robert Newson authored Apr 4, 2009
115
116 <h3>The Document class</h3>
117
118 You may construct a new Document instance with;
119
120 <pre>
121 var doc = new Document();
122 </pre>
123
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
124 Data may be added to this document with the add method which takes an optional second object argument that can override any of the above default values.
087dcec update documentation.
Robert Newson authored Apr 4, 2009
125
4111703 automatically detect Dates, remove special date() method.
Robert Newson authored Apr 26, 2009
126 The data is usually interpreted as a String but couchdb-lucene provides special handling if a Javascript Date object is passed. Specifically, the date is indexed as a numeric value, which allows correct sorting, and stored (if requested) in ISO 8601 format (with a timezone marker).
127
087dcec update documentation.
Robert Newson authored Apr 4, 2009
128 <pre>
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
129 // Add with all the defaults.
130 doc.add("value");
131
132 // Add a subject field.
133 doc.add("this is the subject line.", {"field":"subject"});
9a71557 formatting
Robert Newson authored Apr 5, 2009
134
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
135 // Add but ensure it's stored.
136 doc.add("value", {"store":"yes"});
9a71557 formatting
Robert Newson authored Apr 4, 2009
137
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
138 // Add but don't analyze.
139 doc.add("don't analyze me", {"index":"not_analyzed"});
9a71557 formatting
Robert Newson authored Apr 4, 2009
140
141 // Extract text from the named attachment and index it (but not store it).
a40523d documentation of future features.
Robert Newson authored Apr 21, 2009
142 doc.attachment("attachment name", {"field":"attachments"});
087dcec update documentation.
Robert Newson authored Apr 4, 2009
143 </pre>
144
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
145 <h3>Example Transforms</h3>
146
390858a re-add Index Everything example.
Robert Newson authored Apr 5, 2009
147 <h4>Index Everything</h4>
148
149 <pre>
150 function(doc) {
7bad7dc correct syntax error in JS fun.
Robert Newson authored Apr 30, 2009
151 var ret = new Document();
152
153 function idx(obj) {
154 for (var key in obj) {
155 switch (typeof obj[key]) {
156 case 'object':
157 idx(obj[key]);
158 break;
159 case 'function':
160 break;
161 default:
162 ret.add(obj[key]);
163 break;
164 }
165 }
166 };
167
168 idx(doc);
169
170 if (doc._attachments) {
171 for (var i in doc._attachments) {
172 ret.attachment("attachment", i);
173 }
390858a re-add Index Everything example.
Robert Newson authored Apr 5, 2009
174 }
7bad7dc correct syntax error in JS fun.
Robert Newson authored Apr 30, 2009
175
176 return ret;
390858a re-add Index Everything example.
Robert Newson authored Apr 5, 2009
177 }
178 </pre>
179
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
180 <h4>Index Nothing</h4>
181
182 <pre>
183 function(doc) {
184 return null;
185 }
186 </pre>
187
c207a60 update README
Robert Newson authored Apr 4, 2009
188 <h4>Index Select Fields</h4>
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
189
190 <pre>
191 function(doc) {
c207a60 update README
Robert Newson authored Apr 4, 2009
192 var result = new Document();
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
193 result.add(doc.subject, {"field":"subject", "store":"yes"});
194 result.add(doc.content, {"field":"subject"});
195 result.add({"field":"indexed_at"});
c207a60 update README
Robert Newson authored Apr 4, 2009
196 return result;
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
197 }
198 </pre>
199
c207a60 update README
Robert Newson authored Apr 4, 2009
200 <h4>Index Attachments</h4>
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
201
202 <pre>
203 function(doc) {
c207a60 update README
Robert Newson authored Apr 4, 2009
204 var result = new Document();
205 for(var a in doc._attachments) {
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
206 result.add_attachment(a, {"field":"attachment"});
ccb81a8 add example transforms section.
Robert Newson authored Mar 20, 2009
207 }
c207a60 update README
Robert Newson authored Apr 4, 2009
208 return result;
209 }
210 </pre>
211
212 <h4>A More Complex Example</h4>
213
214 <pre>
215 function(doc) {
216 var mk = function(name, value, group) {
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
217 var ret = new Document();
218 ret.add(value, {"field":group, "store":"yes"}); // ERROR
219 ret.add(group, {"field":"group", "store":"yes"});
c207a60 update README
Robert Newson authored Apr 4, 2009
220 return ret;
221 };
222 var ret = [];
223 if(doc.type != "reference") return null;
224 for(var g in doc.groups) {
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
225 ret.add(mk("library", doc.groups[g].library, g));
226 ret.add(mk("method", doc.groups[g].method, g));
227 ret.add(mk("target", doc.groups[g].target, g));
c207a60 update README
Robert Newson authored Apr 4, 2009
228 }
229 return ret;
230 }
231 </pre>
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
232
4a60080 use couchdb's content_type rather than auto-detect.
Robert Newson authored Feb 18, 2009
233 <h2>Attachment Indexing</h2>
234
8059ce0 s/couchdb/couchdb-lucene
Robert Newson authored Mar 8, 2009
235 Couchdb-lucene uses <a href="http://lucene.apache.org/tika/">Apache Tika</a> to index attachments of the following types, assuming the correct content_type is set in couchdb;
4a60080 use couchdb's content_type rather than auto-detect.
Robert Newson authored Feb 18, 2009
236
ec94e21 updated README.md
Robert Newson authored Feb 18, 2009
237 <h3>Supported Formats</h3>
238
4a60080 use couchdb's content_type rather than auto-detect.
Robert Newson authored Feb 18, 2009
239 <ul>
240 <li>Excel spreadsheets (application/vnd.ms-excel)
241 <li>Word documents (application/msword)
242 <li>Powerpoint presentations (application/vnd.ms-powerpoint)
243 <li>Visio (application/vnd.visio)
244 <li>Outlook (application/vnd.ms-outlook)
245 <li>XML (application/xml)
246 <li>HTML (text/html)
247 <li>Images (image/*)
248 <li>Java class files
249 <li>Java jar archives
250 <li>MP3 (audio/mp3)
251 <li>OpenDocument (application/vnd.oasis.opendocument.*)
252 <li>Plain text (text/plain)
253 <li>PDF (application/pdf)
254 <li>RTF (application/rtf)
255 </ul>
256
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
257 <h1>Searching with couchdb-lucene</h1>
258
39b22c8 document that default search field is the _body field that attachment…
Robert Newson authored Apr 1, 2009
259 You can perform all types of queries using Lucene's default <a href="http://lucene.apache.org/java/2_4_0/queryparsersyntax.html">query syntax</a>. The _body field is searched by default which will include the extracted text from all attachments. The following parameters can be passed for more sophisticated searches;
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
260
261 <dl>
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
262 <dt>q</dt><dd>the query to run (e.g, subject:hello). If not specified, the default field is searched.</dd>
d9f05e7 add documentation for lang query parameter.
Robert Newson authored Apr 28, 2009
263 <dt>lang</dt><dd>The language that the query parameter is in. Available options, and the default if not specified, are identical to the language option specified above.</dd>
f9c61e3 format README
Robert Newson authored Mar 22, 2009
264 <dt>sort</dt><dd>the comma-separated fields to sort on. Prefix with / for ascending order and \ for descending order (ascending is the default if not specified).</dd>
265 <dt>limit</dt><dd>the maximum number of results to return</dd>
266 <dt>skip</dt><dd>the number of results to skip</dd>
267 <dt>include_docs</dt><dd>whether to include the source docs</dd>
268 <dt>stale=ok</dt><dd>If you set the <i>stale</i> option <i>ok</i>, couchdb-lucene may not perform any refreshing on the index. Searches may be faster as Lucene caches important data (especially for sorting). A query without stale=ok will use the latest data committed to the index.</dd>
269 <dt>debug</dt><dd>if false, a normal application/json response with results appears. if true, an pretty-printed HTML blob is returned instead.</dd>
270 <dt>rewrite</dt><dd>(EXPERT) if true, returns a json response with a rewritten query and term frequencies. This allows correct distributed scoring when combining the results from multiple nodes.</dd>
ad9096f tweak README.md
Robert Newson authored Feb 14, 2009
271 </dl>
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
272
273 <i>All parameters except 'q' are optional.</i>
274
ec94e21 updated README.md
Robert Newson authored Feb 18, 2009
275 <h2>Special Fields</h2>
276
277 <dl>
f9c61e3 format README
Robert Newson authored Mar 22, 2009
278 <dt>_db</dt><dd>The source database of the document.</dd>
087dcec update documentation.
Robert Newson authored Apr 4, 2009
279 <dt>_id</dt><dd>The _id of the document.</dd>
46a3a37 include all DC attributes, if present.
Robert Newson authored Mar 8, 2009
280 </dl>
281
282 <h2>Dublin Core</h2>
283
284 All Dublin Core attributes are indexed and stored if detected in the attachment. Descriptions of the fields come from the Tika javadocs.
285
286 <dl>
f9c61e3 format README
Robert Newson authored Mar 22, 2009
287 <dt>dc.contributor</dt><dd> An entity responsible for making contributions to the content of the resource.</dd>
288 <dt>dc.coverage</dt><dd>The extent or scope of the content of the resource.</dd>
289 <dt>dc.creator</dt><dd>An entity primarily responsible for making the content of the resource.</dd>
290 <dt>dc.date</dt><dd>A date associated with an event in the life cycle of the resource.</dd>
291 <dt>dc.description</dt><dd>An account of the content of the resource.</dd>
292 <dt>dc.format</dt><dd>Typically, Format may include the media-type or dimensions of the resource.</dd>
293 <dt>dc.identifier</dt><dd>Recommended best practice is to identify the resource by means of a string or number conforming to a formal identification system.</dd>
294 <dt>dc.language</dt><dd>A language of the intellectual content of the resource.</dd>
295 <dt>dc.modified</dt><dd>Date on which the resource was changed.</dd>
296 <dt>dc.publisher</dt><dd>An entity responsible for making the resource available.</dd>
297 <dt>dc.relation</dt><dd>A reference to a related resource.</dd>
298 <dt>dc.rights</dt><dd>Information about rights held in and over the resource.</dd>
299 <dt>dc.source</dt><dd>A reference to a resource from which the present resource is derived.</dd>
300 <dt>dc.subject</dt><dd>The topic of the content of the resource.</dd>
301 <dt>dc.title</dt><dd>A name given to the resource.</dd>
302 <dt>dc.type</dt><dd>The nature or genre of the content of the resource.</dd>
ec94e21 updated README.md
Robert Newson authored Feb 18, 2009
303 </dl>
304
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
305 <h2>Examples</h2>
306
307 <pre>
405e3a3 update query urls' to reflect new syntax
Robert Newson authored Apr 29, 2009
308 http://localhost:5984/dbname/_fti/design_doc/view_name?q=field_name:value
309 http://localhost:5984/dbname/_fti/design_doc/view_name?q=field_name:value&sort=other_field
310 http://localhost:5984/dbname/_fti/design_doc/view_name?debug=true&sort=billing_size&q=body:document AND customer:[A TO C]
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
311 </pre>
312
313 <h2>Search Results Format</h2>
314
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
315 The search result contains a number of fields at the top level, in addition to your search results.
316
317 <dl>
318 <dt>q</dt><dd>The query that was executed.</dd>
319 <dt>etag</dt><dd>An opaque token that reflects the current version of the index. This value is also returned in an ETag header to facilitate HTTP caching.</dd>
320 <dt>skip</dt><dd>The number of initial matches that was skipped.</dd>
321 <dt>limit</dt><dd>The maximum number of results that can appear.</dd>
322 <dt>total_rows</dt><dd>The total number of matches for this query.</dd>
323 <dt>search_duration</dt><dd>The number of milliseconds spent performing the search.</dd>
324 <dt>fetch_duration</dt><dd>The number of milliseconds spent retrieving the documents.</dd>
24591d9 docs
Robert Newson authored Apr 26, 2009
325 <dt>rows</dt><dd>The search results array, described below.</dd>
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
326 </dl>
327
24591d9 docs
Robert Newson authored Apr 26, 2009
328 <h2>The search results array</h2>
329
330 The search results arrays consists of zero, one or more objects with the following fields;
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
331
332 <dl>
333 <dt>id</dt><dd>The unique identifier for this match.</dd>
334 <dt>score</dt><dd>The normalized score (0.0-1.0, inclusive) for this match</dd>
335 <dt>fields</dt><dd>All the fields that were stored with this match</dd>
336 <dt>doc</dt><dd>The original document from couch, if requested with include_docs=true</dd>
337 </dl>
338
fd16315 update README.md
Robert Newson authored Mar 7, 2009
339 Here's an example of a JSON response without sorting;
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
340
118d28e JSON example output.
Robert Newson authored Feb 17, 2009
341 <pre>
342 {
c6356fd update README.md and TODO to reflect progress.
Robert Newson authored Apr 26, 2009
343 "q": "+content:enron",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
344 "skip": 0,
345 "limit": 2,
346 "total_rows": 176852,
347 "search_duration": 518,
348 "fetch_duration": 4,
349 "rows": [
350 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
351 "id": "hain-m-all_documents-257.",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
352 "score": 1.601625680923462
353 },
354 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
355 "id": "hain-m-notes_inbox-257.",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
356 "score": 1.601625680923462
357 }
118d28e JSON example output.
Robert Newson authored Feb 17, 2009
358 ]
359 }
360 </pre>
361
fd16315 update README.md
Robert Newson authored Mar 7, 2009
362 And the same with sorting;
363
118d28e JSON example output.
Robert Newson authored Feb 17, 2009
364 <pre>
365 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
366 "q": "+content:enron",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
367 "skip": 0,
368 "limit": 3,
369 "total_rows": 176852,
370 "search_duration": 660,
371 "fetch_duration": 4,
372 "sort_order": [
373 {
374 "field": "source",
375 "reverse": false,
376 "type": "string"
377 },
378 {
379 "reverse": false,
380 "type": "doc"
381 }
118d28e JSON example output.
Robert Newson authored Feb 17, 2009
382 ],
fd16315 update README.md
Robert Newson authored Mar 7, 2009
383 "rows": [
384 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
385 "id": "shankman-j-inbox-105.",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
386 "score": 0.6131107211112976,
387 "sort_order": [
388 "enron",
389 6
390 ]
391 },
392 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
393 "id": "shankman-j-inbox-8.",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
394 "score": 0.7492915391921997,
395 "sort_order": [
396 "enron",
397 7
398 ]
399 },
400 {
0fcf578 update docs.
Robert Newson authored Apr 26, 2009
401 "id": "shankman-j-inbox-30.",
fd16315 update README.md
Robert Newson authored Mar 7, 2009
402 "score": 0.507369875907898,
403 "sort_order": [
404 "enron",
405 8
406 ]
407 }
118d28e JSON example output.
Robert Newson authored Feb 17, 2009
408 ]
409 }
410 </pre>
411
139a78c add info retrieval.
Robert Newson authored Mar 9, 2009
412 <h1>Fetching information about the index</h1>
413
7a12058 docs
Robert Newson authored Apr 26, 2009
414 Calling couchdb-lucene without arguments returns a JSON object with information about the <i>whole</i> index.
139a78c add info retrieval.
Robert Newson authored Mar 9, 2009
415
416 <pre>
417 http://127.0.0.1:5984/enron/_fti
418 </pre>
419
420 returns;
421
422 <pre>
423 {"doc_count":517350,"doc_del_count":1,"disk_size":318543045}
424 </pre>
425
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
426 <h1>Working With The Source</h1>
427
428 To develop "live", type "mvn dependency:unpack-dependencies" and change the external line to something like this;
429
430 <pre>
490ae39 break long lines in README.md
Robert Newson authored Feb 14, 2009
431 fti=/usr/bin/java -cp /path/to/couchdb-lucene/target/classes:\
5d5eb29 move to com.github.rnewson package.
Robert Newson authored Mar 18, 2009
432 /path/to/couchdb-lucene/target/dependency com.github.rnewson.couchdb.lucene.Main
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
433 </pre>
434
435 You will need to restart CouchDB if you change couchdb-lucene source code but this is very fast.
436
437 <h1>Configuration</h1>
438
439 couchdb-lucene respects several system properties;
440
441 <dl>
f9c61e3 format README
Robert Newson authored Mar 22, 2009
442 <dt>couchdb.url</dt><dd>the url to contact CouchDB with (default is "http://localhost:5984")</dd>
443 <dt>couchdb.lucene.dir</dt><dd>specify the path to the lucene indexes (the default is to make a directory called 'lucene' relative to couchdb's current working directory.</dd>
2b375b4 enhanced logging.
Robert Newson authored Apr 17, 2009
444 <dt>couchdb.log.dir</dt><dd>specify the directory of the log file (which is called couchdb-lucene.log), defaults to the platform-specific temp directory.</dd>
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
445 </dl>
446
447 You can override these properties like this;
448
449 <pre>
fe20455 fix typo in documentation [#7 state:resolved]
Robert Newson authored Apr 1, 2009
450 fti=/usr/bin/java -Dcouchdb.lucene.dir=/tmp \
490ae39 break long lines in README.md
Robert Newson authored Feb 14, 2009
451 -cp /home/rnewson/Source/couchdb-lucene/target/classes:\
452 /home/rnewson/Source/couchdb-lucene/target/dependency\
5d5eb29 move to com.github.rnewson package.
Robert Newson authored Mar 18, 2009
453 com.github.rnewson.couchdb.lucene.Main
b207965 improve README readability.
Robert Newson authored Feb 14, 2009
454 </pre>
b2d01cc update README for basic auth.
Robert Newson authored Mar 16, 2009
455
456 <h2>Basic Authentication</h2>
457
458 If you put couchdb behind an authenticating proxy you can still configure couchdb-lucene to pull from it by specifying additional system properties. Currently only Basic authentication is supported.
459
460 <dl>
f9c61e3 format README
Robert Newson authored Mar 22, 2009
461 <dt>couchdb.user</dt><dd>the user to authenticate as.</dd>
462 <dt>couchdb.password</dt><dd>the password to authenticate with.</dd>
b2d01cc update README for basic auth.
Robert Newson authored Mar 16, 2009
463 </dl>
ccb3c81 add note about ipv6 localhost workaround. [#12 state:resolved]
Robert Newson authored Apr 13, 2009
464
465 <h2>IPv6</h2>
466
467 The default for couchdb.url is problematic on an IPv6 system. Specify -Dcouchdb.url=http://[::1]:5984 to resolve it.
Something went wrong with that request. Please try again.