#15: Versioning in phpillowDocument should be disabled by default
Issue attachments
Issue revisions
- new by PHPGangsta at 2011-F-09 15:24
- new by PHPGangsta at 2011-F-09 15:24
| Type | |
|---|---|
| State | |
| Priority | |
| Resolution | |
| Assigned to | Nobody |
| Scheduled for | |
| Affected versions | trunk |
| Affected components | Core |
| Last change | Wednesday 9 February 2011 15:24:27 UTC by PHPGangsta |
Short description
I had a big performance problem because I had to update documents very often. Because I didn't know that versioning in phpillow is activated by default I did not disable it. Most people don't need this feature, but they need good performance.
Environment
Ubuntu 10.10
Steps to reproduce
Create a class which extends phpillowDocument
class App_Person_Document extends phpillowDocument
Now put in some values and update it 100 times. The document grows in size and updating it will be very slow (the request will include every document from history, which you normally don't need). In my case the couchdb server was at 100% file I/O for 5 seconds just because of updating one tiny document. After disabling versioning in phpillow by setting
protected $versioned = false;
in my class, updating got fast again.
Expected behavior
Good performance, even after 100 or 1000 updates of a document.
Actual behavior
Very pool performance, couchdb was dead for a few seconds because of the very big and complex document.