Hi Bojan,

Thanks for getting back to me on this. I was having an issue whereby I 
was loosing the connection to the DB through the context. In 
investigating this I found the problem was the calling of 
context.complete() in the ItemEntity constructor as the context.complete 
nulls the connection and any other Items created after a search in the 
SearchProvider will no longer have a connection to the Database. I have 
removed the context.complete() call - which will cause problems if this 
is used for updating entities I presume but at present all I interested 
in is search. I think that you may have put this in as a fix to the 
connection leak problem outlined into a previous mail.

Does this sound right to you?

Thanks,
Mark

-- 
Dr. Mark Melia
Analyst Programmer
Enovation Solutions Ltd.
The Friary, Bow Street, Dublin 7.
Follow us on Twitter: http://twitter.com/enovationire/
See our blog: http://blog.enovation.ie/

‘Celebrating 10 years providing high quality solutions to our clients’



On 23/03/11 14:39, Bojan Suzic wrote:
> Hi Mark,
>
> sorry for late answer. I think this error is related to number of 
> database connections opened. As you have already noticed in the code, 
> for each request it creates new Context object, which maintains 
> connection to the database. Under some circumstances/conditions, I 
> think this object is not correctly closed at the end of request. I 
> believe this is causing an error, as after some time it goes over 
> limit of connections defined by RDBMS and therefore cannot open new 
> request.
> I noticed that error before in some other segments. After thorough 
> investigation it has been fixed, but now it seems the bug is present 
> in some other parts too.
>
> I would suggest to try to increase number of db connections allowed 
> and to wait until problem gets fixed and updated in the source code..
>
> Regards
> Bojan
>
>
>
>> Hi Steve,
>>
>> Thanks for the reply - the only thing outputted on the logs when the
>> request is made is:
>>
>> 2011-03-15 10:14:15,017 INFO org.dspace.rest.providers.UserProvider @
>> user:anonymous:ip_addr=:entity_exists:29
>>
>> Thanks,
>> Mark
>>
>> On 15/03/11 10:16, Steve Swinsburg wrote:
>>> A 500 is an internal server error, what do the logs say?
>>>
>>> cheers,
>>> Steve
>>>
>>>
>>> On 15/03/2011, at 9:03 PM, Mark Melia wrote:
>>>
>>>> Hi Bojan,
>>>>
>>>> I have taken the latest code from the SVN address above and the
>>>> authentication issue is still there. I am not sure how you are able to
>>>> over come it without changing the code in the AbstractBaseProvider. I
>>>> have made the change you suggested - rather than just removing the
>>>> exception throw. (I can send you a patch file if you would like?)
>>>>
>>>> On another note - I am stil trying to get details for a specific
>>>> community I am doing this by calling the URL -
>>>>
>>>> http://localhost:8080/rest/communities/29.xml
>>>>
>>>>
>>>> as outlined below. Can you tell me if I am doing this correct - I am
>>>> still getting HTTP Status 500. If I have time I will look more deeply
>>>> into this - if you have no ideas on what is causing it?
>>>>
>>>> Thanks,
>>>> Mark
>>>>
>>>>
>>>> On 14/03/11 16:14, Mark Melia wrote:
>>>>> Hi Bojan,
>>>>>
>>>>> Thanks a million for your reply. I am thinking maybe I do have an
>>>>> earlier version of the code - Today I tried to get details on one
>>>>> particular collection using
>>>>>
>>>>> http://localhost:8080/rest/communities/29.xml - this resulted in 
>>>>> an error -
>>>>> HTTP Status 500 - Failure processing entity request
>>>>> (/communities/29.xml): null
>>>>>
>>>>> I will have to check the version I am running.
>>>>>
>>>>> Thanks again for your help.
>>>>> Mark
>>>>>
>>>>> On 14/03/11 15:51, Bojan Suzic wrote:
>>>>>> Hi Mark,
>>>>>>
>>>>>> I have just checked it and tried to reproduce locally.
>>>>>> So I tried the following:
>>>>>>
>>>>>> http://localhost:8080/rest/search.xml?query=test - got normal 
>>>>>> results
>>>>>>
>>>>>> http://localhost:8080/rest/search.xml?query=test&user=x...@xxx.com 
>>>>>> - got
>>>>>> exception 403, we have user but password is not provided
>>>>>>
>>>>>> http://localhost:8080/rest/search.xml?query=test&user=x...@xxx.com&pass=correct_password
>>>>>>  
>>>>>>
>>>>>> - got normal results again as the correct password is provided with
>>>>>> the user in the query
>>>>>>
>>>>>> So, the code you are referring to is executed only if user or 
>>>>>> pass are
>>>>>> provided in the query. If they are not provided, it uses anonymous
>>>>>> user and further should not execute this code.
>>>>>>
>>>>>> Maybe you are using some older version from svn? The actual 
>>>>>> version is
>>>>>> available at
>>>>>> http://scm.dspace.org/svn/repo/modules/rest/branches/dspace-rest-gsoc10/.
>>>>>>  
>>>>>>
>>>>>>
>>>>>> Also if this problem still persists, could you then try to change 
>>>>>> this
>>>>>> code to look like this:
>>>>>>
>>>>>> if (!(user.equals("")) {
>>>>>> try {
>>>>>> ...
>>>>>> } catch () ...
>>>>>>
>>>>>> }
>>>>>>
>>>>>> It could be that underlying code treats blank user differently.
>>>>>>
>>>>>> Kind regards
>>>>>> Bojan
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> The action I am calling is the search rest call I am making is 
>>>>>>> search -
>>>>>>> http://localhost:8080/dspace/search.xml?query=testitem
>>>>>>> When this is called it looks like the method refreshParams is 
>>>>>>> called in
>>>>>>> the AbstractBaseProvider class. This method checks if the user 
>>>>>>> is logged
>>>>>>> in and throws an EntityException if the user is not logged in, 
>>>>>>> which is
>>>>>>> the case for my search.
>>>>>>>
>>>>>>> try {
>>>>>>> EPerson eUser = EPerson.findByEmail(context, user);
>>>>>>> if ((eUser.canLogIn())&& (eUser.checkPassword(pass))) {
>>>>>>> context.setCurrentUser(eUser);
>>>>>>> loggedUser = eUser.getName();
>>>>>>> } else {
>>>>>>> throw new EntityException("Bad username or password", user, 403);
>>>>>>> }
>>>>>>>
>>>>>>> Any idea would be much appreciated. We are creating a plug-in 
>>>>>>> for Moodle
>>>>>>> 2.0 so that DSpace can be used as a repository.
>>>>> ------------------------------------------------------------------------------
>>>>>  
>>>>>
>>>>> Colocation vs. Managed Hosting
>>>>> A question and answer guide to determining the best fit
>>>>> for your organization - today and in the future.
>>>>> http://p.sf.net/sfu/internap-sfd2d
>>>>> _______________________________________________
>>>>> DSpace-tech mailing list
>>>>> DSpace-tech@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/dspace-tech
>>>> ------------------------------------------------------------------------------
>>>>  
>>>>
>>>> Colocation vs. Managed Hosting
>>>> A question and answer guide to determining the best fit
>>>> for your organization - today and in the future.
>>>> http://p.sf.net/sfu/internap-sfd2d
>>>> _______________________________________________
>>>> DSpace-tech mailing list
>>>> DSpace-tech@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/dspace-tech
>>
>> ------------------------------------------------------------------------------
>>  
>>
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit
>> for your organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> DSpace-tech mailing list
>> DSpace-tech@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/dspace-tech
>

------------------------------------------------------------------------------
Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software 
be a part of the solution? Download the Intel(R) Manageability Checker 
today! http://p.sf.net/sfu/intel-dev2devmar
_______________________________________________
DSpace-tech mailing list
DSpace-tech@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-tech

Reply via email to