Re: Apache Sling big file upload
Hi Andrei, On Tue, Jan 27, 2015 at 5:33 PM, Andrei Zafiu wrote: > I am trying to do some performance testing on an apache sling server > regarding the upload of big data files using the chunked upload > functionality. I am using JMeter to put in place the testing scenario, and I > am testing against a standalone version of the Sling 7 application. In Jmeter > I am running 10 threads, each one uploading a 30 GB file to the apache server > to the same destination path. The threads start almost at the same time. The > problem is that the apache sling server changes the destination path for some > of the requests(the number may vary with each run of the test) from "/new" to > "/new[2]", "/new[3]" or even "/new[4]". The distribution of the files in > these paths is not consistent, most of the time about 6 or 7 files go into > the first path, and a single files gets uploaded in each of the other paths. > The problem is that the client only knows how to send to "/new" path and the > upload fails for those threads after the first chunk upload with: > javax.jcr.RepositoryException: no chunk upload found at > {/new/testfile_73b0fa135090.vmdk/jcr:content} > > which is correct since the file in question was persisted at "/new[2]". Is > there any size limitation for a given path, or some rules that the server > follows to create these new paths and distribute the files in them? > If you need any other information do not hesitate to ask me. I don't have any idea what the problem is. If you can create a small, self-contained, example maybe based on curl and smaller files or a Junit test case we can take a look and see if it's something that can be fixed in Sling. Robert
Re: Apache Sling big file upload
Hello Robert, Thank you for the quick response. This solution works but the goal is that the clients can create their own hierarchies under a specific path so it may not be possible to create it in advance on the server. Is this an assertion that the sling does? Is there something that we can change to make sling be able to create the folder and add the files to that folder? Thank you, Andrei. On Wednesday, January 28, 2015 5:12 PM, Robert Munteanu wrote: Hi Andrei, On Tue, Jan 27, 2015 at 5:33 PM, Andrei Zafiu wrote: > I am trying to do some performance testing on an apache sling server > regarding the upload of big data files using the chunked upload > functionality. I am using JMeter to put in place the testing scenario, and I > am testing against a standalone version of the Sling 7 application. In Jmeter > I am running 10 threads, each one uploading a 30 GB file to the apache server > to the same destination path. The threads start almost at the same time. The > problem is that the apache sling server changes the destination path for some > of the requests(the number may vary with each run of the test) from "/new" to > "/new[2]", "/new[3]" or even "/new[4]". The distribution of the files in > these paths is not consistent, most of the time about 6 or 7 files go into > the first path, and a single files gets uploaded in each of the other paths. > The problem is that the client only knows how to send to "/new" path and the > upload fails for those threads after the first chunk upload with: > javax.jcr.RepositoryException: no chunk upload found at > {/new/testfile_73b0fa135090.vmdk/jcr:content} > > which is correct since the file in question was persisted at "/new[2]". Is > there any size limitation for a given path, or some rules that the server > follows to create these new paths and distribute the files in them? > If you need any other information do not hesitate to ask me. It sounds like the /new intermediate path is not present at the time the test is started and is created implicitly when uploading a file to /new/testfile_XX . Does creating the /new node before runing the tests help? Robert
Re: Apache Sling big file upload
Hi Andrei, On Tue, Jan 27, 2015 at 5:33 PM, Andrei Zafiu wrote: > I am trying to do some performance testing on an apache sling server > regarding the upload of big data files using the chunked upload > functionality. I am using JMeter to put in place the testing scenario, and I > am testing against a standalone version of the Sling 7 application. In Jmeter > I am running 10 threads, each one uploading a 30 GB file to the apache server > to the same destination path. The threads start almost at the same time. The > problem is that the apache sling server changes the destination path for some > of the requests(the number may vary with each run of the test) from "/new" to > "/new[2]", "/new[3]" or even "/new[4]". The distribution of the files in > these paths is not consistent, most of the time about 6 or 7 files go into > the first path, and a single files gets uploaded in each of the other paths. > The problem is that the client only knows how to send to "/new" path and the > upload fails for those threads after the first chunk upload with: > javax.jcr.RepositoryException: no chunk upload found at > {/new/testfile_73b0fa135090.vmdk/jcr:content} > > which is correct since the file in question was persisted at "/new[2]". Is > there any size limitation for a given path, or some rules that the server > follows to create these new paths and distribute the files in them? > If you need any other information do not hesitate to ask me. It sounds like the /new intermediate path is not present at the time the test is started and is created implicitly when uploading a file to /new/testfile_XX . Does creating the /new node before runing the tests help? Robert
Apache Sling big file upload
I am trying to do some performance testing on an apache sling server regarding the upload of big data files using the chunked upload functionality. I am using JMeter to put in place the testing scenario, and I am testing against a standalone version of the Sling 7 application. In Jmeter I am running 10 threads, each one uploading a 30 GB file to the apache server to the same destination path. The threads start almost at the same time. The problem is that the apache sling server changes the destination path for some of the requests(the number may vary with each run of the test) from "/new" to "/new[2]", "/new[3]" or even "/new[4]". The distribution of the files in these paths is not consistent, most of the time about 6 or 7 files go into the first path, and a single files gets uploaded in each of the other paths. The problem is that the client only knows how to send to "/new" path and the upload fails for those threads after the first chunk upload with: javax.jcr.RepositoryException: no chunk upload found at {/new/testfile_73b0fa135090.vmdk/jcr:content} which is correct since the file in question was persisted at "/new[2]". Is there any size limitation for a given path, or some rules that the server follows to create these new paths and distribute the files in them? If you need any other information do not hesitate to ask me. Thank you,Andrei