From ed17503ff85c267132a160c74e87df0e03cee350 Mon Sep 17 00:00:00 2001 From: wenshao Date: Sun, 30 Jun 2013 16:56:24 +0800 Subject: [PATCH] fixed MySqlExceptionSorter --- .../pool/vendor/MySqlExceptionSorter.java | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/alibaba/druid/pool/vendor/MySqlExceptionSorter.java b/src/main/java/com/alibaba/druid/pool/vendor/MySqlExceptionSorter.java index d09dcae74b..b35240d67b 100644 --- a/src/main/java/com/alibaba/druid/pool/vendor/MySqlExceptionSorter.java +++ b/src/main/java/com/alibaba/druid/pool/vendor/MySqlExceptionSorter.java @@ -71,15 +71,21 @@ public class MySqlExceptionSorter implements ExceptionSorter { case 1037: // ER_OUTOFMEMORY case 1038: // ER_OUT_OF_SORTMEMORY return true; + default: + break; + } + + if (errorCode >= -10000 && errorCode <= -9000) { + return true; } - if (StringUtils.isNotBlank(e.getMessage())) { - final String errorText = e.getMessage().toUpperCase(); + String message = e.getMessage(); + if (message != null && message.length() > 0) { + final String errorText = message.toUpperCase(); - if (errorCode == 0 - && (errorText.indexOf("COMMUNICATIONS LINK FAILURE") > -1 || errorText - .indexOf("COULD NOT CREATE CONNECTION") > -1) - || errorText.indexOf("NO DATASOURCE") > -1 + if ((errorCode == 0 && (errorText.indexOf("COMMUNICATIONS LINK FAILURE") > -1) // + || errorText.indexOf("COULD NOT CREATE CONNECTION") > -1) // + || errorText.indexOf("NO DATASOURCE") > -1 // || errorText.indexOf("NO ALIVE DATASOURCE") > -1) { return true; } @@ -87,4 +93,10 @@ public class MySqlExceptionSorter implements ExceptionSorter { return false; } + @Override + public void configFromProperties(Properties properties) { + // TODO Auto-generated method stub + + } + }