diff --git a/core/modules/trigger/trigger.admin.inc b/core/modules/trigger/trigger.admin.inc
index 7509eb3..287486d 100644
--- a/core/modules/trigger/trigger.admin.inc
+++ b/core/modules/trigger/trigger.admin.inc
@@ -119,6 +119,7 @@ function trigger_assign_form($form, $form_state, $module, $hook, $label) {
   );
   $form['hook'] = array(
     '#type' => 'hidden',
+    '#maxlength' => 64,
     '#value' => $hook,
   );
   // All of these forms use the same validate and submit functions.
diff --git a/core/modules/trigger/trigger.install b/core/modules/trigger/trigger.install
index 7dded60..2c237e2 100644
--- a/core/modules/trigger/trigger.install
+++ b/core/modules/trigger/trigger.install
@@ -51,3 +51,11 @@ function trigger_install() {
   // Do initial synchronization of actions in code and the database.
   actions_synchronize();
 }
+
+/**
+ * Implements hook_update_N().
+ */
+function trigger_update_8001() {
+  db_drop_primary_key('trigger_assignments');
+  db_change_field('trigger_assignments', 'hook', 'hook', array('type' => 'varchar', 'length' => 64, 'not null' => TRUE, 'default' => '', 'description' => 'Primary Key: The name of the internal Drupal hook; for example, node_insert.', ), array('primary key' => array('hook', 'aid')));
+}
