[
https://issues.apache.org/jira/browse/DERBY-3060?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12525385
]
Jørgen Løland commented on DERBY-3060:
--------------------------------------
The network server was started with -noSecurityManager
> DRDA incorrectly assumes that all SQLExceptions with error code 08004 are
> caused by an authentication failure.
> --------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-3060
> URL: https://issues.apache.org/jira/browse/DERBY-3060
> Project: Derby
> Issue Type: Bug
> Components: Network Server
> Affects Versions: 10.3.1.4, 10.4.0.0
> Reporter: Jørgen Løland
>
> DRDAConnThread#getConnFromDatabaseName incorrectly assumes that all
> SQLExceptions with error code 08004 thrown when trying to connect to a
> database are caused by an authentication failure.
> DRDAConnThread lines 1295-1296:
> ------8<------
> if (sqlState.regionMatches(0,SQLState.LOGIN_FAILED,0,5))
> return CodePoint.SECCHKCD_USERIDINVALID;
> ------>8------
> I have added an exception to BasicDatabase#setupConnection with error code
> 08004.C.7. The exception is thrown if the connection is refused because the
> database has been booted in slave replication mode. This exception is,
> however, translated into an authentication exception by DRDAConnThread:
> When the NetworkServer has already booted a database 'test' in slave
> replication mode, I get the following output from ij:
> ij> connect 'jdbc:derby://localhost/test';
> ERROR 08004: Connection authentication failure occurred. Reason: userid or
> password invalid.
> If I change the SQL code of the exception to XRE02.C and repeat, I get:
> ij> connect 'jdbc:derby://localhost/test';
> ERROR XRE02: DERBY SQL error: SQLCODE: -1, SQLSTATE: XRE02, SQLERRMC: Connect
> refused to database 'test' because it is in replication slave mode.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.