Highlighted

removeOnExceptions is true for ourdsn error

Engaged ,
Jun 07, 2019

Copy link to clipboard

Copied

Hi,

We see a lot of these errors in coldfusion-out.log:

"removeOnExceptions is true for ourdsn. Closed the physical connection."

The errors are expected in this case, but we get a lot of them. Is there any way to disable this specific error? There was an article online about editing one of CF's XML files, but it was for CFMX and we are on CF2018 Enterprise. Advice appreciated, as always.

Thanks,

Mark

TOPICS
Advanced techniques

Views

733

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

removeOnExceptions is true for ourdsn error

Engaged ,
Jun 07, 2019

Copy link to clipboard

Copied

Hi,

We see a lot of these errors in coldfusion-out.log:

"removeOnExceptions is true for ourdsn. Closed the physical connection."

The errors are expected in this case, but we get a lot of them. Is there any way to disable this specific error? There was an article online about editing one of CF's XML files, but it was for CFMX and we are on CF2018 Enterprise. Advice appreciated, as always.

Thanks,

Mark

TOPICS
Advanced techniques

Views

734

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Jun 07, 2019 0
Adobe Community Professional ,
Jun 07, 2019

Copy link to clipboard

Copied

It looks like you have two problems.

First, that's not an error you should see a lot. It indicates that you're having JDBC connection pooling issues. Maybe you have too many or too few concurrent connections allowed. I'd definitely try to tune that so that you have fewer of these errors, because this is not a good thing.

ColdFusion MX: RemoveOnException errors in serverlog

For example, you might have an unlimited pool size (the default setting). Try capping that at 40 and see what happens. Tuning queues can significantly boost application performance, even if the error messages don't bother you.

Second, I sympathize with just not wanting to see any more of some error message or another. But that's a bad approach to error handling. If you go that route, you're basically saying that you're willing to close your eyes to a problem because it's not bothering you all that much right now. But what if that error increases tenfold or a hundredfold? You won't know about it.

Instead, I recommend that you look at logs like you would a database. Instead of reading through your data line-by-line, you want it to be stored in a searchable pool, and use that as your log UI. I highly recommend Splunk for this. It is a third-party product, and you do have to pay to use it. But you can use it to actually get useful information and do all sorts of neat things, and you can use it with all kinds of products that generate log files. Personally, I'd prefer to never look at a raw log file again if I had my way. You can whip up tools to dump logs in Elasticsearch or whatever, which'll get you partway there, but you have to spend time to do that of course.

Dave Watts, Eidolon LLC

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jun 07, 2019 1
Engaged ,
Jun 07, 2019

Copy link to clipboard

Copied

Hi Dave,

Thanks for the reply. We are aware of the errors and expected them. Our legacy system does not talk properly to the modern JDBC database drivers and leaves connections hanging open, so we have a process that kills the connections that are zombied.

We don't ignore our logs, we just want them to know if we can rid them of this particular error, that's all.

The link you sent is for CF MX and seems quite old. We are on CF 2018 Enterprise - is there a setting for that?

Disabling "Maintain Connections" seems not to be what we want, since we want to maintain and re-use connections where possible.

Splunk looks good but it doesn't solve our root issue.

Regards,

Mark

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jun 07, 2019 0
Adobe Community Professional ,
Jun 07, 2019

Copy link to clipboard

Copied

JDBC configuration options haven't changed much since ColdFusion 6 to be honest, so the link should still be pretty accurate. What is your current connection pool ceiling?

Ideally, no, you don't want to disable "Maintain Connections" for performance reasons, but if you're having connection pooling problems anyway you might find that it helps. Being able to reuse connections requires that the pool be in good working order, and I'm not sure from the error that it is. Anyway, it's something you can experiment with.

As for Splunk solving your root issue, I guess it depends on what your root issue really is. If all you're concerned about is this one error coming up all the time, and you're concerned about this because you're manually reading your log files, Splunk does solve that issue - ideally, you shouldn't be manually reading your log files in the first place! Because manually reading log files sucks. I have to say, moving to a system where I could treat aggregated log files as searchable pools of data instead of having to read them one by one definitely changed my life quite a bit. It does cost some money, but I think it's worth the money, especially as you add more systems you monitor. Check the dedup command mentioned here - it's basically the equivalent of a "SELECT DISTINCT" from SQL.

Select distinct events - Question | Splunk Answers

Dave Watts, Eidolon LLC

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jun 07, 2019 0
Engaged ,
Jun 08, 2019

Copy link to clipboard

Copied

Hi Dave,

Disabling "Maintain connections" does indeed remove the "removeOnExceptions" error from the logs, but at what cost to performance?

We'll give Splunk a go on trial and see how we get on.

Regards,

Mark

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jun 08, 2019 0
Adobe Community Professional ,
Jun 08, 2019

Copy link to clipboard

Copied

Disabling "Maintain connections" does indeed remove the "removeOnExceptions" error from the logs, but at what cost to performance?

I have no idea. You mentioned that you were using a legacy database. I don't know how frequently connections are reused in your JDBC pool. It's possible that they're not being reused at all, which would make performance worse than not having reusable connections in the first place. Like I said earlier, I would fiddle around with the ceiling for the number of connections you allow before disabling "Maintain connections", but the only way to see what's really happening is to load test your application. And if you do change the ceiling, you'll probably need to see how many times you have that error. By default, there is no ceiling.

Dave Watts, Eidolon LLC

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jun 08, 2019 0