<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cloudant_bigcouch.git/apps/couch/src, branch master</title>
<subtitle>[cloudant_bigcouch] 
</subtitle>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/'/>
<entry>
<title>quick fix for badmatch</title>
<updated>2012-12-07T14:04:27+00:00</updated>
<author>
<name>Robert Newson</name>
<email>robert.newson@cloudant.com</email>
</author>
<published>2012-12-07T14:04:27+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=f629dca9d209bf1deea6a5868f07fca8d89b04b4'/>
<id>f629dca9d209bf1deea6a5868f07fca8d89b04b4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Suppress duplicate access logs</title>
<updated>2012-11-15T11:23:55+00:00</updated>
<author>
<name>Adam Kocoloski</name>
<email>adam@cloudant.com</email>
</author>
<published>2011-03-16T21:14:49+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=b2bf5571b3eebb070726c3e6eb01f95c244a15b5'/>
<id>b2bf5571b3eebb070726c3e6eb01f95c244a15b5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add total_changes to view compaction status</title>
<updated>2012-11-15T11:23:55+00:00</updated>
<author>
<name>Robert Newson</name>
<email>robert.newson@cloudant.com</email>
</author>
<published>2012-09-04T23:15:36+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=478e957f17813676ec2d1b57cde249c06d00d1e5'/>
<id>478e957f17813676ec2d1b57cde249c06d00d1e5</id>
<content type='text'>
Conflicts:
	apps/couch/src/couch_view_compactor.erl
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Conflicts:
	apps/couch/src/couch_view_compactor.erl
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix design_document inconsistency</title>
<updated>2012-11-15T11:23:55+00:00</updated>
<author>
<name>Robert Newson</name>
<email>robert.newson@cloudant.com</email>
</author>
<published>2012-09-04T23:00:20+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=cde32e6e3728e7896bf311f77fcb5e6d266e8465'/>
<id>cde32e6e3728e7896bf311f77fcb5e6d266e8465</id>
<content type='text'>
Always report it as "design_document":"_design/foo"

BugzID: 14562

Conflicts:
	apps/couch/src/couch_view_compactor.erl
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Always report it as "design_document":"_design/foo"

BugzID: 14562

Conflicts:
	apps/couch/src/couch_view_compactor.erl
</pre>
</div>
</content>
</entry>
<entry>
<title>Backport new /_active_tasks API</title>
<updated>2012-11-15T11:23:46+00:00</updated>
<author>
<name>Robert Newson</name>
<email>robert.newson@cloudant.com</email>
</author>
<published>2012-11-14T19:32:23+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=19017b3612b4567ced3b8ac9cfe816e6cf80e0f8'/>
<id>19017b3612b4567ced3b8ac9cfe816e6cf80e0f8</id>
<content type='text'>
Improved _active_tasks API

Tasks are now free to set any properties they wish (as an
Erlang proplist). Different tasks can have different properties
and the status string doesn't exist anymore - instead client
applications can build it using more granular properties from
_active_tasks. Some of these properties are:

1) "progress" (an integer percentage, for all tasks)
2) "database" (for compactions and indexer tasks)
3) "design_document" (for indexer and view compaction tasks)
4) "source" and "target" (for replications)
5) "docs_read", "docs_written", "doc_write_failures",
   "missing_revs_found", "missing_revs_checked", "source_seq",
   "checkpointed_source_seq" and "continuous" for replications

BugzID: 14269

Conflicts:
	apps/couch/src/couch_db_updater.erl
	apps/couch/src/couch_rep.erl
	apps/couch/src/couch_task_status.erl
	apps/couch/src/couch_view_compactor.erl
	apps/couch/src/couch_view_updater.erl
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Improved _active_tasks API

Tasks are now free to set any properties they wish (as an
Erlang proplist). Different tasks can have different properties
and the status string doesn't exist anymore - instead client
applications can build it using more granular properties from
_active_tasks. Some of these properties are:

1) "progress" (an integer percentage, for all tasks)
2) "database" (for compactions and indexer tasks)
3) "design_document" (for indexer and view compaction tasks)
4) "source" and "target" (for replications)
5) "docs_read", "docs_written", "doc_write_failures",
   "missing_revs_found", "missing_revs_checked", "source_seq",
   "checkpointed_source_seq" and "continuous" for replications

BugzID: 14269

Conflicts:
	apps/couch/src/couch_db_updater.erl
	apps/couch/src/couch_rep.erl
	apps/couch/src/couch_task_status.erl
	apps/couch/src/couch_view_compactor.erl
	apps/couch/src/couch_view_updater.erl
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't touch the old couch_lru ets table</title>
<updated>2012-11-14T18:11:34+00:00</updated>
<author>
<name>Adam Kocoloski</name>
<email>adam@cloudant.com</email>
</author>
<published>2012-02-17T14:10:52+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=bf4d46be7037ddea375bdaf2bab067e29f2c423f'/>
<id>bf4d46be7037ddea375bdaf2bab067e29f2c423f</id>
<content type='text'>
It doesn't exist.

BugzID: 13299
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It doesn't exist.

BugzID: 13299
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow 202 as a valid status code</title>
<updated>2012-11-14T17:38:58+00:00</updated>
<author>
<name>Adam Kocoloski</name>
<email>adam@cloudant.com</email>
</author>
<published>2012-06-13T16:57:34+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=f7adbbe008ec2c22d48f61876a159804c4772d2e'/>
<id>f7adbbe008ec2c22d48f61876a159804c4772d2e</id>
<content type='text'>
BugzID: 13940
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
BugzID: 13940
</pre>
</div>
</content>
</entry>
<entry>
<title>Only close idle processes that have no client</title>
<updated>2012-11-14T17:29:03+00:00</updated>
<author>
<name>Paul J. Davis</name>
<email>paul.joseph.davis@gmail.com</email>
</author>
<published>2012-05-28T20:14:04+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=5eb7447ad4be97f633cc42432059a67bafcf9009'/>
<id>5eb7447ad4be97f633cc42432059a67bafcf9009</id>
<content type='text'>
Previously we didn't check if an os_process was in use by a process
before closing it. This ended up generating noproc errors in the
couch_view_updaters which would then spider out to the couch_view_group
processes causing client errors and resetting compaction.

BugzId: 13798
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously we didn't check if an os_process was in use by a process
before closing it. This ended up generating noproc errors in the
couch_view_updaters which would then spider out to the couch_view_group
processes causing client errors and resetting compaction.

BugzId: 13798
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove the client ref when it dies</title>
<updated>2012-11-14T17:28:53+00:00</updated>
<author>
<name>Paul J. Davis</name>
<email>paul.joseph.davis@gmail.com</email>
</author>
<published>2012-02-09T21:43:49+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=fa43486fbbe918344d66337b3b0b0d34128d5c39'/>
<id>fa43486fbbe918344d66337b3b0b0d34128d5c39</id>
<content type='text'>
We have observed periods of couchjs processes spiking into the hundreds
and thousands for short periods of time since the new couch_proc_manager
was released. Today I happened to catch one in the act and poked at
couch_proc_manager's ets table. There seemed to be a few more couchjs
processes with clients than I would have expected so I skimmed the code
looking for a place where we didn't clear the client value (which would
prevent it from being reused so that it would eventually just timeout).

I found a case where if the Pid that checked out the process dies
without the OS process dying, we were forgetting to clear the client in
the ets table. This patch refactors the two places we return processes
into a single function call which clears the OS process client.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have observed periods of couchjs processes spiking into the hundreds
and thousands for short periods of time since the new couch_proc_manager
was released. Today I happened to catch one in the act and poked at
couch_proc_manager's ets table. There seemed to be a few more couchjs
processes with clients than I would have expected so I skimmed the code
looking for a place where we didn't clear the client value (which would
prevent it from being reused so that it would eventually just timeout).

I found a case where if the Pid that checked out the process dies
without the OS process dying, we were forgetting to clear the client in
the ets table. This patch refactors the two places we return processes
into a single function call which clears the OS process client.
</pre>
</div>
</content>
</entry>
<entry>
<title>Two last bugs in couch_proc_manager</title>
<updated>2012-11-14T17:28:41+00:00</updated>
<author>
<name>Paul J. Davis</name>
<email>paul.joseph.davis@gmail.com</email>
</author>
<published>2012-01-18T21:47:17+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/cloudant_bigcouch.git/commit/?id=a15c94a4d048afea6c53af7be089a2e3574f07c9'/>
<id>a15c94a4d048afea6c53af7be089a2e3574f07c9</id>
<content type='text'>
* Design doc languages are converted to lists
* Make sure to monitor every client correctly
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Design doc languages are converted to lists
* Make sure to monitor every client correctly
</pre>
</div>
</content>
</entry>
</feed>
