savannah-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Savannah-cvs] [SCM] Savane-cleanup framework branch, master, updated. 0


From: Sylvain Beucler
Subject: [Savannah-cvs] [SCM] Savane-cleanup framework branch, master, updated. 0029af0725984195f888e264332fe6d875b5c193
Date: Fri, 31 Jul 2009 09:04:23 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Savane-cleanup framework".

The branch, master has been updated
       via  0029af0725984195f888e264332fe6d875b5c193 (commit)
       via  c0babdf51dd9bfb25d1e837b5deb18288724f417 (commit)
      from  1be10a21d01dca8cddfe539fa485794f2781180b (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.savannah.gnu.org/cgit/savane-cleanup/framework.git/commit/?id=0029af0725984195f888e264332fe6d875b5c193

commit 0029af0725984195f888e264332fe6d875b5c193
Author: Sylvain Beucler <address@hidden>
Date:   Fri Jul 31 11:04:14 2009 +0200

    Reference where user_id's are referenced in the old savane tables

diff --git a/tables_savane_users.txt b/tables_savane_users.txt
new file mode 100644
index 0000000..6e3a2ff
--- /dev/null
+++ b/tables_savane_users.txt
@@ -0,0 +1,65 @@
+-- Good reason to keep the user
+-- Also: if the referenced user doesn't exist, it should be set to
+--   100/None (and converted to Null when migrate to the new frontend)
+--   unless stated otherwise below
+SELECT COUNT(DISTINCT user_id) FROM user_group;
+SELECT COUNT(DISTINCT mod_by) FROM group_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM support;
+SELECT COUNT(DISTINCT added_by) FROM support_cc;
+SELECT COUNT(DISTINCT mod_by) FROM support_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM bugs;
+SELECT COUNT(DISTINCT added_by) FROM bugs_cc;
+SELECT COUNT(DISTINCT mod_by) FROM bugs_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM task;
+SELECT COUNT(DISTINCT added_by) FROM task_cc;
+SELECT COUNT(DISTINCT mod_by) FROM task_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM patch;
+SELECT COUNT(DISTINCT added_by) FROM patch_cc;
+SELECT COUNT(DISTINCT mod_by) FROM patch_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM cookbook;
+SELECT COUNT(DISTINCT added_by) FROM cookbook_cc;
+SELECT COUNT(DISTINCT mod_by) FROM cookbook_history;
+
+SELECT COUNT(DISTINCT submitted_by) FROM trackers_file;
+
+SELECT COUNT(DISTINCT posted_by) FROM forum;
+
+SELECT COUNT(DISTINCT submitted_by) FROM news_bytes;
+
+SELECT COUNT(DISTINCT created_by) FROM people_job;
+
+
+-- Rows to also remove if we remove the user
+DELETE FROM user WHERE user_id=...; -- hmmm
+DELETE FROM people_skill_inventory WHERE user_id=...;
+DELETE FROM form WHERE user_id=...;
+DELETE FROM trackers_watcher WHERE user_id=...;
+DELETE FROM trackers_watcher WHERE watchee_id=...;
+DELETE FROM trackers_notification WHERE user_id=...;
+DELETE FROM user_bookmarks WHERE user_id=...;
+DELETE FROM user_preferences WHERE user_id=...;
+DELETE FROM user_squad WHERE user_id=...;
+DELETE FROM user_votes WHERE vote_id=...;
+DELETE FROM task_filter WHERE user_id=...;
+DELETE FROM trackers_spamscore WHERE reporter_user_id=...;
+DELETE FROM trackers_spamscore WHERE affected_user_id=...;
+SELECT COUNT(DISTINCT user_id) FROM forum_monitored_forums;
+SELECT COUNT(DISTINCT user_id) FROM forum_saved_place;
+
+DELETE FROM user_group WHERE user_id=...;
+
+
+-- Rows to reset to user 'None' if the user is removed
+-- (user information is not crucial)
+UPDATE task_report SET user_id=100 WHERE user_id=...;
+UPDATE mail_group_list SET list_admin=100 WHERE list_admin=...;
+SELECT COUNT(DISTINCT assigned_to) FROM support;
+SELECT COUNT(DISTINCT assigned_to) FROM bugs;
+SELECT COUNT(DISTINCT assigned_to) FROM task;
+SELECT COUNT(DISTINCT assigned_to) FROM patch;
+SELECT COUNT(DISTINCT assigned_to) FROM cookbook;

http://git.savannah.gnu.org/cgit/savane-cleanup/framework.git/commit/?id=c0babdf51dd9bfb25d1e837b5deb18288724f417

commit c0babdf51dd9bfb25d1e837b5deb18288724f417
Author: Sylvain Beucler <address@hidden>
Date:   Fri Jul 31 11:03:09 2009 +0200

    Improve migration scripts to get rid of trivial warnings (so only real 
warnings remain)

diff --git a/migrate_old_savane.sql b/migrate_old_savane.sql
index 6b7a079..a3f2b00 100644
--- a/migrate_old_savane.sql
+++ b/migrate_old_savane.sql
@@ -16,28 +16,33 @@ DELETE FROM user
     );
 USE savane;
 -- Actual import
+-- Using a heuristic to split realname in firstname/lastname; we can't
+-- place all in firstname because it's 30 chars long, while realname
+-- is 32 chars long :/
 TRUNCATE auth_user;
 INSERT INTO auth_user
     (id, username, first_name, last_name, email,
      password, last_login, date_joined, is_active,
      is_superuser, is_staff)
-  SELECT user_id, user_name, realname, '', email,
+  SELECT user_id, user_name,
+      SUBSTRING_INDEX(realname, ' ', 1),
+      TRIM(REPLACE(realname, SUBSTRING_INDEX(realname, ' ', 1), '')),
+      email,
       CONCAT('md5$$', user_pw), now(), FROM_UNIXTIME(add_date), status='A',
       0, 0
     FROM savane_old.user
     WHERE savane_old.user.user_id != 100;
 
 -- Import all extended information except for the 'None' user (#100)
--- (X or 0) means 'if V==NULL then 0 else V'
 TRUNCATE svmain_extendeduser;
 INSERT INTO svmain_extendeduser
     (user_ptr_id, status, spamscore, authorized_keys,
      authorized_keys_count, people_view_skills, people_resume,
      timezone, theme, email_hide, gpg_key, gpg_key_count)
-  SELECT user_id, status, spamscore, authorized_keys,
+  SELECT user_id, status, spamscore, IFNULL(authorized_keys, ''),
       authorized_keys_count, people_view_skills,
-      people_resume, timezone, theme,
-      (email_hide or 0), gpg_key, gpg_key_count
+      people_resume, IFNULL(timezone, ''), IFNULL(theme, ''),
+      IFNULl(email_hide, 0), IFNULL(gpg_key, ''), gpg_key_count
     FROM savane_old.user
     WHERE savane_old.user.user_id != 100;
 
@@ -192,6 +197,8 @@ INSERT INTO auth_group
 --
 -- Using LEFT JOIN so that if the license isn't known, the project is
 -- not ignored (with license_id=NULL).
+-- Using X+0 to convert empty string to 0 without warning
+TRUNCATE svmain_extendedgroup;
 INSERT INTO svmain_extendedgroup
     (group_ptr_id, full_name, license_id, devel_status_id, type_id,
      register_time,
@@ -240,53 +247,53 @@ INSERT INTO svmain_extendedgroup
      url_task,
      url_patch,
      url_extralink_documentation)
-  SELECT group_id, group_name, svmain_license.id, devel_status+1, type,
+  SELECT group_id, group_name, svmain_license.id, IFNULL(devel_status+1, 8), 
type,
       FROM_UNIXTIME(register_time),
       is_public,
       status,
-      short_description,
-      long_description,
-      license_other,
-      register_purpose,
-      required_software,
-      other_comments,
-      registered_gpg_keys,
-      use_homepage,
-      use_mail,
-      use_patch,
-      use_task,
-      use_cvs,
-      use_arch,
-      use_svn,
-      use_git,
-      use_hg,
-      use_bzr,
-      use_news,
-      use_support,
-      use_download,
-      use_bugs,
-      use_extralink_documentation,
-      url_homepage,
-      url_download,
-      url_support,
-      url_mail,
-      url_cvs,
-      url_cvs_viewcvs,
-      url_cvs_viewcvs_homepage,
-      url_arch,
-      url_arch_viewcvs,
-      url_svn,
-      url_svn_viewcvs,
-      url_git,
-      url_git_viewcvs,
-      url_hg,
-      url_hg_viewcvs,
-      url_bzr,
-      url_bzr_viewcvs,
-      url_bugs,
-      url_task,
-      url_patch,
-      url_extralink_documentation
+      IFNULL(short_description, ''),
+      IFNULL(long_description, ''),
+      IFNULL(license_other, ''),
+      IFNULL(register_purpose, ''),
+      IFNULL(required_software, ''),
+      IFNULL(other_comments, ''),
+      IFNULL(registered_gpg_keys, ''),
+      IFNULL(use_homepage+0, 0),
+      IFNULL(use_mail+0, 0),
+      IFNULL(use_patch+0, 0),
+      IFNULL(use_task+0, 0),
+      IFNULL(use_cvs+0, 0),
+      IFNULL(use_arch+0, 0),
+      IFNULL(use_svn+0, 0),
+      IFNULL(use_git+0, 0),
+      IFNULL(use_hg+0, 0),
+      IFNULL(use_bzr+0, 0),
+      IFNULL(use_news+0, 0),
+      IFNULL(use_support+0, 0),
+      IFNULL(use_download+0, 0),
+      IFNULL(use_bugs+0, 0),
+      IFNULL(use_extralink_documentation+0, 0),
+      IFNULL(url_homepage, ''),
+      IFNULL(url_download, ''),
+      IFNULL(url_support, ''),
+      IFNULL(url_mail, ''),
+      IFNULL(url_cvs, ''),
+      IFNULL(url_cvs_viewcvs, ''),
+      IFNULL(url_cvs_viewcvs_homepage, ''),
+      IFNULL(url_arch, ''),
+      IFNULL(url_arch_viewcvs, ''),
+      IFNULL(url_svn, ''),
+      IFNULL(url_svn_viewcvs, ''),
+      IFNULL(url_git, ''),
+      IFNULL(url_git_viewcvs, ''),
+      IFNULL(url_hg, ''),
+      IFNULL(url_hg_viewcvs, ''),
+      IFNULL(url_bzr, ''),
+      IFNULL(url_bzr_viewcvs, ''),
+      IFNULL(url_bugs, ''),
+      IFNULL(url_task, ''),
+      IFNULL(url_patch, ''),
+      IFNULL(url_extralink_documentation, '')
     FROM savane_old.groups LEFT JOIN savane.svmain_license ON 
savane_old.groups.license = savane.svmain_license.slug
     WHERE savane_old.groups.group_id != 100;
 
@@ -337,6 +344,7 @@ INSERT INTO auth_user_groups
     (user_id, group_id)
   SELECT user_id, group_id
     FROM savane_old.user_group;
+TRUNCATE svmain_membership;
 INSERT INTO svmain_membership
     (user_id, group_id, admin_flags, onduty)
   SELECT user_id, group_id, admin_flags, onduty
diff --git a/src/savane/svmain/models.py b/src/savane/svmain/models.py
index 91211a2..18fd7a4 100644
--- a/src/savane/svmain/models.py
+++ b/src/savane/svmain/models.py
@@ -333,7 +333,7 @@ class ExtendedGroup(auth_models.Group):
     """Django base Group class + extra Savane fields"""
     
     type = models.ForeignKey(GroupConfiguration)
-    full_name = models.CharField(max_length=30, blank=True,
+    full_name = models.CharField(max_length=255, blank=True,
       help_text="Full project name (not Unix system name)")
     is_public = models.BooleanField(default=False)
     status_CHOICES = (

-----------------------------------------------------------------------

Summary of changes:
 migrate_old_savane.sql      |  106 +++++++++++++++++++++++--------------------
 src/savane/svmain/models.py |    2 +-
 tables_savane_users.txt     |   65 ++++++++++++++++++++++++++
 3 files changed, 123 insertions(+), 50 deletions(-)
 create mode 100644 tables_savane_users.txt


hooks/post-receive
-- 
Savane-cleanup framework




reply via email to

[Prev in Thread] Current Thread [Next in Thread]