# \[ANN\] Subversion River 0.3.5

**URL:** <https://discuss.elastic.co/t/ann-subversion-river-0-3-5/13230>\
**Category:** Elasticsearch\
**Created:** [August 15, 2013, 6:24pm UTC](https://discuss.elastic.co/t/ann-subversion-river-0-3-5/13230 "2013-08-15T18:24:45Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pascal\_Lombard](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/pascal_lombard/32/2166_2.png) [@Pascal\_Lombard](https://discuss.elastic.co/u/Pascal_Lombard)\
**Post date:** [August 15, 2013, 6:24pm UTC](https://discuss.elastic.co/t/ann-subversion-river-0-3-5/13230/1 "2013-08-15T18:24:45Z")

</div>

Hello everyone,

For those, like me, who haven't already moved everything to Git, I've  
written a river to index Subversion (svn) repositories, making it easier to  
find changes or history elements in your codebase :

> **[plombard/SubversionRiver](https://github.com/plombard/SubversionRiver)**
>
> SubversionRiver - A River for ElasticSearch to index subversion repositories.

There is a README with instructions to use the river, but is short, after  
installing it :  
plugin --install com.github.plombard/elasticsearch-river-subversion/0.3.5

You just have to initalize a river which will create an index from your  
repository :  
curl -XPUT 'localhost:9200/\_river/REPOSITORY/\_meta' -d '{  
"type": "svn",  
"svn": {  
"repos": "file:///path\_to\_REPOSITORY", or "http://url\_to\_REPOSITORY"  
"path": "/",  
"update\_rate": "600000", (in milliseconds)  
"bulk\_size": "200",  
"start\_revision": "1", (starting revision for the indexation process)  
"login": login,  
"password": password  
}  
}'

(most of these fields have default values, only "repos" is mandatory)

Be careful with the _bulk\_size_ in particular, as fetching revisions from  
the repository is very memory consuming. And pay special attention to the \*  
password\*, as the subversion client has a nasty habit to cache it in plain  
text in the home directory.

I'm quite of a newbie with Elasticsearch so the mapping I used is very  
simple for now. I plan to improve it so my queries can return better  
results.  
It's also not the cleanest code around, but I'm using it in production  
right now and it works without being too intrusive (and keep in mind that  
so far, I'm the only tester :D).

Big thanks to David Pilato, Olivier Bazoud and Tanguy Le Roux, for their  
works did make great tutorials to dive into elasticsearch river  
development.

--  
You received this message because you are subscribed to the Google Groups "elasticsearch" group.  
To unsubscribe from this group and stop receiving emails from it, send an email to [elasticsearch+unsubscribe@googlegroups.com](mailto:elasticsearch+unsubscribe@googlegroups.com).  
For more options, visit [https://groups.google.com/groups/opt\_out](https://groups.google.com/groups/opt_out).

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 2:20am UTC](https://discuss.elastic.co/t/ann-subversion-river-0-3-5/13230/2 "2017-07-06T02:20:59Z")

</div>


