Comment 6 for bug 567180

Revision history for this message
Leonard Richardson (leonardr) wrote :

A couple updates:

1. Although the exact error is different, this seems very similar to bug 512552. That was a timeout error that occured when a script invoked createComment() and passed in a huge (400k) test log. The difference is that they got a server-side timeout (502 or 503) instead of a client-side timeout.

2. I added a 68k comment to a merge proposal on edge. It took about 20 minutes to process, but it did complete eventually.

How big a document are you sending in createComment?

Conclusion: regardless of how slow edge is right now, createComment() is _really_ slow on big datasets. As I mentioned in 512552, the best solution would be to publish 'merge proposal attachments' similar to bug attachments, so that these huge logs and whatnot can go into the librarian instead of the database. Until we do that, or optimize createComment in some other way, or something, you'll have this problem.

There's also a huge overhead involved in sending a large string through POST. It has to be encoded and then decoded on the server side. Doing this as a 'merge proposal attachment' would fix this because you'd be able to PUT the data without encoding it.

Since this has happened twice I strongly suggest we start working on the 'merge proposal attachment' feature.