Bugzilla – Bug 3925
Misconfigured database + Index service registration == messy logs
Last modified: 2006-02-07 01:42:43
You need to log in before you can comment on or make changes to this bug.
I have an upstream setup in my hierarchy.xml for MDS, but I have not setup RFT. Every 60s, I get: 2005-11-18 14:42:46,629 ERROR impl.QueryAggregatorSource [Thread-12,pollGetMulti ple:149] Exception Getting Multiple Resource Properties from https://140.221.8.1 09:8443/wsrf/services/ReliableFileTransferFactoryService: java.rmi.RemoteExcepti on: Failed to serialize resource property org.globus.transfer.reliable.service.f actory.TotalNumberOfBytesTransferred@17892d5; nested exception is: org.apache.commons.dbcp.DbcpException: Connection refused. Check that th e hostname and port are correct and that the postmaster is accepting TCP/IP conn ections. It would be nicer to return some kind of exceptional value here, I think, rather than throwing an exception. I leave it up to architects whether that means returning -1 or nil, or whatever. Maybe in the future some kind of "canConnectToDB" RP would be useful, not sure.
I will make RFT send -1 when database is not configured to talk to RFT and QueryAggregatorSource.java should be changed to treat that special
What is the real issuse here? Is that the service throws an exception? That the mds code logs this error over & over again? Or that WebMDS doesn't display information indicating a problem with the service? The bottom line to me is that the service should throw an error and the code that queries the service should catch the error and handle it appropriately. Returning -1 or nill or exposing RP such as 'canConnectToDB' or whatever is not right to me because 1) it does not explain the real error and 2) exposes too much detail about the implementation. Maybe RFT shouldn't register itself to MDS in the first place if it does not have DB (or whatever else) configured properly. Also, maybe the mds code should use exponential back off when queries fail so that these log messages don't keep showing up frequently.
I committed a fix for this in trunk. I made RFT not register to MDS when it is not properly configured.