none
Can't create new Workflow Farm RRS feed

  • Question

  • Hi, I have tried in two separate environments to create a new workflow farm and am getting the following error. I have already installed the Feb CU for both workflow manager and the service bus. I rebooted all servers after installing.

    I noticed a message in the UI saying "Configuration operation failed. Please drop databases and use ‘Create a New Farm’ again." When I look in SQL Management Studio no databases have been created. The new farm wizard fails on the first step.

    Any ideas on a fix for this? I am using a SQL alias on my server, would this cause any problems? When I test the connection to the DB from the wizard all tests pass.

    Error:

    System.Management.Automation.CmdletInvocationException: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.
    An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.
    An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name. ---> System.Data.SqlClient.SqlException: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.
    An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.
    An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name. For other statements, look for empty alias names. Aliases defined as "" or [] are not allowed. Change the alias to a valid name.
       в System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
       в System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
       в System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
       в System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
       в System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite)
       в System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
       в System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
       в System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
       в System.Data.Linq.SqlClient.SqlProvider.Execute(Expression query, QueryInfo queryInfo, IObjectReaderFactory factory, Object[] parentArgs, Object[] userArgs, ICompiledSubQuery[] subQueries, Object lastResult)
       в System.Data.Linq.SqlClient.SqlProvider.ExecuteAll(Expression query, QueryInfo[] queryInfos, IObjectReaderFactory factory, Object[] userArguments, ICompiledSubQuery[] subQueries)
       в System.Data.Linq.SqlClient.SqlProvider.System.Data.Linq.Provider.IProvider.Execute(Expression query)
       в Microsoft.ServiceBus.Commands.Common.ServerManagementStoreDataContext.CreateServerAdministratorLogin(String loginName)
       в Microsoft.ServiceBus.Commands.Common.SecurityHelper.CreateServerAdministratorRole(String accountName, String connectionString)
       в Microsoft.ServiceBus.Commands.NewSBFarmBase.InstallManagementDB(String connectionString, String adminGroup, String runAsName)
       в Microsoft.ServiceBus.Commands.NewSBFarmBase.ProcessRecord()
       --- Конец трассировки внутреннего стека исключений ---
       в System.Management.Automation.PowerShell.EndInvoke(IAsyncResult asyncResult)
       в Microsoft.Workflow.Deployment.ConfigWizard.CommandletHelper.InvokePowershell(Command command, Action`2 updateProgress)
       в Microsoft.Workflow.Deployment.ConfigWizard.ProgressPageViewModel.CreateSBFarm(FarmCreationModel model)


    Thursday, April 11, 2013 6:07 PM

All replies

  • I know it works with SQL Aliases, so I doubt that itself is the problem.  Is the Alias setup for both 32 and 64 bit architectures?  If you do the custom setup you can specify each database name, then perform a test.  If you do that, and use unique names, do you get the same problem?  Does every database name pass muster?
    Thursday, April 11, 2013 7:46 PM
  • I only added aliases in cliconfg (I'm guessing 64-bit is default). I believe I only tested the first database name actually which passed fine. 

    It was strange that the wizard seemed to accept all my inputs but then fall over on step 1.

    My run-as account is sysadmin on sql and I believe my install account has dbcreator and securityadmin. The error wouldn't suggest anything wrong with my SQL permissions so I don't know what's up.

    Thursday, April 11, 2013 8:27 PM
  • So there are indeed two cliconfg.exe locations, and it needs to be set up in both or it can cause weird issues.  The first one is in the windows\syswow64\ folder and the second is in windows\system32.

    The problem is, in the information I found from Microsoft it didn't actually indicate that it needed to be set up in both, but searching blogs and the like seemed to imply it was required.  Give that a shot and let me know how it goes.

    Thursday, April 11, 2013 9:07 PM
  • I've just installed tonight in my VM environment using an alias (64-bit cliconfg only) and everything works exactly as expected. 

    The only thing I can think of trying again in the customer environment is using full domain name for user account like workflowaccount@my.customer.com instead of workflowaccount@my.

    Thursday, April 11, 2013 10:22 PM
  • All sorted, was missing the domain prefix in front of my admin group so it must have looked for a local group instead. Schoolboy error!
    Friday, April 12, 2013 10:13 AM
  • Awesome!  Well, good to know you don't have to do both of those for the workflow manager.  Thanks!
    Friday, April 12, 2013 1:29 PM
  • Just following on from this...

    Whenever you run the command Register-SPWorkflowService to create a binding between SharePoint and the workflow manager, there is a property called WorkflowHostUri.

    Assuming I have 3 workflow servers, can I use the machinename:port of any of those or do I have to add references to all machines in the workflow farm?

    I'm guessing that simply pointing to any node is adequate for creating the association.

    Friday, April 12, 2013 4:45 PM