This is going to sound strange, but its now happened to me four times.
I have the latest BVCommerce (with some additional modification by myself to handle multiple warehouses and server side on the fly image resizing). I'm running it on a powerful new 2005 web server, and I have SQL Server 2005, latest SP, running on a second server (quad proc, tons of memory), both in my colo.
I've got a really large catalog of products (4000+) and a bunch of categories (380).
Here's the issue : 4 times in the last 40 days (since I went live), the bvc_Product_ByCategory_s stored procedure will time out on every single execution made over the SQL Native Client. This happens on the cart (no products show on the category pages, effectively shutting down the cart), my development machine and any SQL Native Client connection to the database server. If I execute the sp on the server itself in the Enterprise Mgr, it runs and returns the result in less than a second.
The first 3 times this happened, I ended up having to fully reboot the SQL Server to resolve. The fourth time, I tried switching the connection string to try the OLEDB provider instead (which failed, of course) and then switched back, at which time it started working. I've now created a fully mirrored database on a second server and plan on trying to force failover on the next failure and see if that fixes it (I'm pretty sure it will).
Has anyone ever seen anything like this before? I find it mindboggling. Any hints on where to look for issues would be greatly appreciated.
By the way, the cart is here :
http://phoenixcigar.com/shop/If you want to see the on the fly image resizing, take a look at the Cigar Brands page. All those images are a very wide variety of sizes on the server, but are scaled server side, with proportions intact. I had some serious issues with the built-in image resizing (partly because its done browser side, and partly because it didn't maintain proportions).
You won't see the warehousing from the customer side. When an order is placed, the order processor (person) checks stock at multiple warehouses, selects warehouses to ship each product (to condense shipping packages), and then the notices are handled like drop shipper notices. Inventory on the cart is summed across all warehouses.