unable to configure sqlserver datasource | Test Failed

Certified Senior Developer

Hi Everyone,

I am trying to connect to sqlserver as a new data source from admin console  and providing the connection url , username and password as provided by the client.

Additionally trying to create the connected system with the same credentials but both the time I am getting Test Failed. Please suggest if am missing something.

Thank You!

  Discussion posts and replies are publicly visible

  • 0
    Certified Senior Developer

    This is the error log which we are getting when we are trying to establish the connection from Data Source from Appian.

     2023-02-14 18:02:25,337 [ajp-nio-0.0.0.0-8009-exec-235] ERROR com.appiancorp.expr.server.scriptingfunctions.DataSourceFunctions - Failed datasource validation com.appiancorp.rdbms.datasource.DataSourceValidationException: java.sql.SQLException: Unable to obtain a connection within configured timeout at com.appiancorp.rdbms.datasource.TeneoDataSourceValidator.validateDataSource(TeneoDataSourceValidator.java:73) at com.appiancorp.rdbms.datasource.TeneoDataSourceValidator.validateAndCloseDataSource(TeneoDataSourceValidator.java:47) at com.appiancorp.rdbms.datasource.TeneoDataSourceValidator.testDataSourceConnection(TeneoDataSourceValidator.java:40) at com.appiancorp.expr.server.scriptingfunctions.DataSourceFunctions.testDataSource_appian_internal(DataSourceFunctions.java:99) at sun.reflect.GeneratedMethodAccessor5888.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.appiancorp.process.expression.CustomFunction$1.call(CustomFunction.java:846) at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:27) at com.appiancorp.process.expression.CustomFunction.evaluate(CustomFunction.java:840) at com.appiancorp.process.expression.CustomFunction.evalDynamic0(CustomFunction.java:248) at com.appiancorp.process.expression.CustomFunction.evalDynamic(CustomFunction.java:236) at com.appiancorp.process.expression.CustomFunction.eval0(CustomFunction.java:208) at com.appiancorp.core.expr.DefaultEvaluable.eval(DefaultEvaluable.java:214) at com.appiancorp.process.expression.ExpressionEvaluator.evaluate(ExpressionEvaluator.java:318) at com.appiancorp.core.expr.tree.performancelog.PerformanceLogPageFunction.eval0(PerformanceLogPageFunction.java:100) at com.appiancorp.core.expr.tree.TreeEvaluable.evalWrapped(TreeEvaluable.java:106) at com.appiancorp.core.expr.Tree.eval(Tree.java:445) at com.appiancorp.core.expr.tree.SpecialFunction.eval0(SpecialFunction.java:112) com.appiancorp.security.changelog.AuditLogLocationService.callWithLocation(AuditLogLocationService.java:25) at com.appiancorp.sailapp.SailApplicationUtils.evaluate0(SailApplicationUtils.java:96) at com.appiancorp.sailapp.SailApplicationUtils.evaluateUiWithPlog(SailApplicationUtils.java:75) at com.appiancorp.sailapp.SailApplicationUtils.evaluateSailApplicationUI(SailApplicationUtils.java:57) at com.appiancorp.rest.standalone.SailApplicationRestService.reeval(SailApplicationRestService.java:118) at sun.reflect.GeneratedMethodAccessor2444.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1688) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:750) Caused by: java.sql.SQLException: Unable to obtain a connection within configured timeout at com.appiancorp.rdbms.datasource.ConnectionTimeoutBasicDataSource.getConnection(ConnectionTimeoutBasicDataSource.java:56) at com.appiancorp.rdbms.datasource.TeneoDataSourceValidator.validateDataSource(TeneoDataSourceValidator.java:61) ... 860 more Caused by: java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:205) at com.appiancorp.rdbms.datasource.ConnectionTimeoutBasicDataSource.getConnection(ConnectionTimeoutBasicDataSource.java:52) ... 861 more

    Thank You!

  • 0
    Certified Lead Developer
    in reply to gauravkumar

    Seems like a timeout issue. Are you sure that the Appian environment has access to that database server?

  • 0
    Certified Senior Developer
    in reply to Stefan Helzle

    How can we check if the Appian environment has access to the database server? I think data source is the way

    to provide access to Appian environment for the specific Database server.(Please correct if I am wrong)

    When we try to connect directly through sql server using same credentials it connects. In cmd we are are able to ping

    the server. But when we try to create Data Source it fails. Is there any other configuration needed from Admin console?

  • 0
    Certified Lead Developer
    in reply to gauravkumar

    Is this about an on premise setup or cloud? In any case, you need to make sure that there is a working network connection from Appian to that DB server.

    Create an integrated system to access the DB. This is the modern way. Setting up datasources in the admin console works as well, but you cannot restrict access.