I know that there are a great number of people that think Drupal should paired with a HA environment. There are obviously other alternatives available other than MySQL cluster including master/slave 1:1 replication but the cluster is becoming easier to implement as it matures and is within reach of most people's abilities now. BLOB was a major problem before but seems to solved in ndb 7.6 so there is no reason to use bloated tables anymore.

Drupal is very close to allowing it to work out of the box with cluster. One of the last things that needs sorting is the schema for certain tables that are too big to support ndb. The main one is menu_router. It uses varchar 255's where it doesn't need to and therefore prevents the tables' creation.

My solution is to swap out the varchar 255s with a more reasonable figure or change them for dynamic TEXT columns with no default values.

Path => Varchar 100
Page_Callback => text no default
Tab_Parent => Varchar75
Tab_Root => Varchar75
Title_callback => text no default
Title_agruments => text no default
block_callback => text no default
position=> text no default

Just changing the schema definition in system.install allows d7 dev to be installed without a problem. It is so simple perhaps there is something i am missing and i know that maybe some of the column must be varchar instead for but there must be an arrangement that suits.

I really like drupal and I believe that cluster support out of the box will help it become a big player in commercial cms tools.

I hope something happens.

Comments

1fast6’s picture

Title: Drupal 7 Database API can support MySQL with simple schema alterations! Lets get this done and supported » Drupal 7 Database API can support MySQL Cluster with simple schema alterations! Lets get this done and supported

We also need the ability to specify the mysql engine type to use instead of defaulting to innodb. Otherwise hacking core is necessary for that bit.

catch’s picture

Title: Drupal 7 Database API can support MySQL Cluster with simple schema alterations! Lets get this done and supported » {menu_router} schema prevernts use of MySQL Cluster
Component: system.module » menu system
Category: feature » task
Status: Needs review » Active

Changing component to menu system and retitling- there was a fair bit of discussion of {menu_router} column lengths in #371458: Missing index menu_router tab_root - that might help you figure out what the practical limits are in terms of shortening them. Looks like chx didn't want path to go below 128 - is 100 a hard limit? Or just what you picked as reasonable?

You should open a separate issues against database system for specifying storage engine in hook_schema() - that's a different issue to the menu schema.

Setting this back to active since it doesn't seem like the patch made it.

catch’s picture

Title: {menu_router} schema prevernts use of MySQL Cluster » {menu_router} schema prevents use of MySQL Cluster

Opened #566548: Add storage engine support to schema API. for the schema API request.

stephencamilo’s picture

Status: Active » Closed (won't fix)
hestenet’s picture

Status: Closed (won't fix) » Active

Reset issue status.