We have found a very low perfomance at uploading audio files captured with htlm5 recorder, having the save to db disabled. Even without
saving the blob to db the performance was very poor and just an small set of students collapsed the cpu at server.
We observed that after the file was correctly saved at filesystem it took to sakai a lot of time (30secs or more) to acknowledge to user the uploading to fliesystem is done. During that time the cpu load increased a lot without some logical reason as the actual file uploading had finished long ago.
After some investigation to track down the issue, we have found that even without the need of saving the file as blob in db it is processed enterely in a not very efficient way, instead of just getting the size and location.
getMediaStream's performance is very low, it tooks abot 30 seconds to put a 30 MB file in the array (a 3min audio file). getMediaStream is called always, even when not saving as blob to db.
Performance at getMediaStream can be easily increased using something like:
It could also improved if the file is only enterely read (to array) when save to blob is needed and just getting the size when not from filesystem methods.
The same happens in samigo\samigo-app\src\java\org\sakaiproject\tool\assessment\ui\bean\delivery\DeliveryBean.java