Hi,

I am having problems using this module with products with large options lists.

E.g. a product has 5 attributes with 5, 2, 75, 4, 75 options in each respectively. When I click adjustments the page never loads and the Mysql CPU usage is massive.. I realise this is because the possible combinations of attribute/options is absolutely huge. I guess the question is do you think the module will ever be able to handle it?

Thanks

Comments

jpstrikesback’s picture

Project: Ubercart Dependent Attributes » Ubercart
Version: 6.x-1.x-dev » 6.x-2.x-dev
Category: support » feature

It's not just uc_dependent_attributes from what I can tell, it's the way the Ubercart Attribute Adjustments page is built and everything else has to play along... I'm in the same situation, and it's not just the mysql overhead that is a problem (tho mysql has timed out php on a dedicated machine), it's the admin overhead for a large (huge...1800+ adjustment pages - 36k+ combinations) amount of combinations that is another problem...

I think we need a better Attributes Adjustments system whereby:

- Possible Adjustments can be entered via multi-select widgets (One for each Attributes Options added to that product/class)

- Option Combinations are calculated from what is selected and creates "enabled adjustments" so rather than calculating all possible and only creating an enabled adjustment when you enter a new SKU, it stores enabled adjustments combos in the DB with both the original SKU and new SKU's

- Enabled Adjustments list on the Attribute Adjustments page

- Option Combinations are not required to include all available attribute-options (Size-Color-Material or just Size-Color) and validation on the product add to cart form would just ignore combinations that didn't exist and other modules like uc_aac/uc_dependent_attributes could leverage this to unset form elements that aren't in the combo

Thoughts? Since I don't know ubercart that well the things I see this touching are:

- Attribute Adjustments Page
- Any module that uses the attribute adjustments page such as Ubercart Dependent Attributes (perhaps some of the stock/adjustment modules?)
- Add to cart form validation (if you enter more options than are available, the cart ignores them, or sends you back to correct)

Is this a good idea? Bad Idea? Am I missing something vital? Can I do it in a module and override current functionality(while breaking a bunch of other contribs perhaps)?

Thanks for any thoughts, recommendations, help!
Jon

jpstrikesback’s picture

Title: Mysql Overhead with long options list » Mysql Overhead with long Attribute Options Adjustments list
jantoine’s picture

Status: Active » Closed (duplicate)