Sam Jarawan MSFT

We just started seeing a problem on our production and staging boxes of our site.

We're seeing virtual catalog rebuilds taking 2-6 hours where it use to be in the order of minutes and still is on our development and test environments.

A second problem is our staging push to production takes a very long time and we frequently have catalog timeout errors.

Any suggestions on things to look for

thanks,

Sam



Re: Commerce Server 2007 Virtual Catalog rebuilds extremely slow taking 2-6 hours and staging failures

Sam Jarawan MSFT

Here's 4 event logs when our staging push last failed. It's not consistent, sometimes the push works however:

Event Type: Error
Event Source: Commerce Server
Event Category: None
Event ID: 4104
Date: 6/26/2007
Time: 6:50:54 PM
User: N/A
Computer: TK2MSFTWBXX97
Description:
Pipeline Error: %1

For more information, see Help and Support Center at
http://go.microsoft.com/fwlink/events.asp.

Event Type: Error
Event Source: Commerce Server Web Services
Event Category: None
Event ID: 1
Date: 6/26/2007
Time: 7:46:18 PM
User: N/A
Computer: TK2MSFTWBXX97
Description:
An exception occurred in the 'CatalogWebService' Web service. Exception details follow:

Microsoft.CommerceServer.Catalog.CatalogDatabaseException: Could not get the root products for the catalog. ---> System.Data.SqlClient.SqlException: Invalid object name 'dbo.ATResource_en-US'.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
at Microsoft.CommerceServer.Catalog.Internal.SqlHelper.ExecuteDataset(SqlConnection connection, CommandType commandType, String commandText, CatalogDataSetType catalogDataSetType, SqlParameter[] commandParameters, String outParameterName, Object& outParameterValue)
at Microsoft.CommerceServer.Catalog.Internal.SqlHelper.ExecuteDataset(SqlConnection connection, String spName, CatalogDataSetType catalogDataSetType, Object[] parameterValues, String outParameterName, Object& outParameterValue)
at Microsoft.CommerceServer.Catalog.Internal.CatalogCache.GetDataset(ExecutionContext executionContext, CacheItemType cacheItemType, String storedProcedureName, CatalogDataSetType catalogDataSetType, Boolean getFromCache, Object[] parameters, String outParameterName, Object& recordCount, Boolean& obtainedFromCache)
at Microsoft.CommerceServer.Catalog.Internal.CatalogProducts.GetRootProducts(CatalogExecutionContext executionContext, String catalogName, Boolean isVirtualCatalog, String language, CatalogJoinType joinType, String targetTableName, String sourceJoinKey, String targetJoinKey, CatalogSearchOptions searchOptions, InventoryOptions inventoryOptions, Boolean getFromCache, Int32& totalRecords)
--- End of inner exception stack trace ---
at Microsoft.CommerceServer.Catalog.Internal.CatalogProducts.GetRootProducts(CatalogExecutionContext executionContext, String catalogName, Boolean isVirtualCatalog, String language, CatalogJoinType joinType, String targetTableName, String sourceJoinKey, String targetJoinKey, CatalogSearchOptions searchOptions, InventoryOptions inventoryOptions, Boolean getFromCache, Int32& totalRecords)
at Microsoft.CommerceServer.Catalog.Internal.Category.GetChildProducts(CatalogExecutionContext context, String baseCatalogName, Boolean isVirtualCatalog, String catalogName, String categoryName, Int32 oid, CatalogSearchOptions searchOptions, InventoryOptions inventoryOptions, Boolean recursive, JoinTableInformation joinTableInformation, String language, Boolean getFromCache, Int32& totalRecords)
at Microsoft.CommerceServer.Catalog.Internal.Category.GetChildProducts(CatalogExecutionContext context, String baseCatalogName, Boolean isVirtualCatalog, String catalogName, String categoryName, Int32 oid, CatalogSearchOptions cso, InventoryOptions inventoryOptions, Boolean recursive, String swc, JoinTableInformation joinTableInformation, String language, Boolean getFromCache, Int32& totalRecords)
at Microsoft.CommerceServer.Catalog.Internal.Category.PreLoadCategory(CatalogExecutionContext context, Category category, CategoryConfiguration config, Boolean getFromCache, Boolean relationshipsExist)
at Microsoft.CommerceServer.Catalog.Internal.Category.GetCategoryData(CatalogExecutionContext catalogExecutionContext, String catalogName, String categoryName, String language, Nullable`1 isVC, Nullable`1 validateLanguage, CategoryConfiguration config, Boolean getFromCache)
at Microsoft.CommerceServer.Catalog.Internal.CatalogServerContextBase.GetCategory(String catalogName, String categoryName, String language, CategoryConfiguration config, Boolean getFromCache, Nullable`1 isVirtualCatalog, Nullable`1 validateLanguage)

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

Event Type: Error
Event Source: Commerce Server Business UI
Event Category: None
Event ID: 100
Date: 6/26/2007
Time: 7:46:19 PM
User: N/A
Computer: TK2MSFTWBXX97
Description:
Microsoft.CommerceServer.ServerFaultException
at Microsoft.CommerceServer.ServiceAgent.TryHandleWebMethodException(Exception ex, SoapHttpClientProtocol serviceProxy)
at Microsoft.CommerceServer.Catalog.WebService.Proxies.CatalogWebService.AuthorizedInvoke(String methodName, Object[] parameters)
at Microsoft.CommerceServer.Catalog.WebService.Proxies.CatalogWebService.GetCategory(String catalogName, String categoryName, String language, CategoryConfiguration config)
at Microsoft.CommerceServer.Catalog.Category.Get(CatalogContext catalogContext, String catalogName, String categoryName, String language, CategoryConfiguration config, Nullable`1 isVirtualCatalog, Nullable`1 validateLanguage)
at Microsoft.CommerceServer.Catalog.Category.Get(CatalogContext catalogContext, String catalogName, String categoryName, String language, CategoryConfiguration config)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogCache.GetCategoryFromCatalogSystem(CatalogContext catalogContext, String catalogName, String categoryName, String language, CategoryConfiguration config)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogCache.GetCategory(CatalogContext catalogContext, String catalogName, String categoryName, CategoryConfiguration config, Boolean refreshItemFromCatalogSystem)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogCache.GetCategory(CatalogContext catalogContext, String catalogName, String categoryName, CategoryConfiguration config)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogManager.GetCategory(Boolean isVirtualCatalog, String catalogName, String categoryName)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogManager.LoadCategoryInTreeView(TreeNode treeNode)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogManager.DisplaySelectedCategory(Boolean expandNode, String selectedNodePath)
at Microsoft.CommerceServer.UI.CatalogManager.CatalogManager.CatalogFolderItemSelected(Object sender, TreeViewEventArgs e)

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Event Type: Error
Event Source: Commerce Server Staging
Event Category: None
Event ID: 61993
Date: 6/26/2007
Time: 8:44:05 PM
User: N/A
Computer: TK2MSFTWBXX97

Description:
Failed to import business data for 'Catalog' resource for project 'CSDatatoProd' : Microsoft.CommerceServer.Staging.StagingSubsystemException: CatalogImport failed. See log for details.398561:Failed to rebuild the virtual catalog 'USResource'.
Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

at Microsoft.CommerceServer.Staging.CatalogHandler.Import(String project, BusinessData businessData, String projectLocation, String destinationSite)
at Microsoft.CommerceServer.Staging.BusinessDataStagingEngine.ImportBusinessData(String projectName, String projectLocation)

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.