Clean Dokeos documents inconsistencies on filesystem and database before upgrading to Chamilo

1,386 views

Published on

This presentation will show a tool that check the Dokeos filesystem and database to correct inconsistencies that may have occured with older version of Dokeos.

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,386
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Clean Dokeos documents inconsistencies on filesystem and database before upgrading to Chamilo

  1. 1. Chamilo Users day Author : Hubert Borderiou Date : 28/03/2011
  2. 2. Clean Dokeos documents inconsistencies on filesystem and database before upgrading to Chamilo
  3. 3. Why Dokeos documents database and filesystem need cleanup ? <ul><li>Start using Dokeos on 2004 with version 1.5.5 </li></ul><ul><li>Many changes in the code </li></ul><ul><li>Some changes in the database structure
  4. 4. Bugs
  5. 5. Users frantic clicks </li></ul>
  6. 6. A tool that checks and try to solves <ul><li>Paths in document table that don't exist in the item_property table
  7. 7. Duplicated paths in document table
  8. 8. Paths in document table that don't exist in the filesystem </li></ul><ul><li>Paths in the filesystem that don't exist in document table
  9. 9. Filenames with incorrect characters in document table and in filesystem </li></ul>(Every modified table or file are backuped before operation)
  10. 10. Check database and filesystem bijection Database dokeosU1ujf_TESTDSIGU.document Filesystem /home/ujf/www/courses/TESTDSIGU/document
  11. 11. Check database table correspondences Database dokeosU1ujf_TESTDSIGU.document Database dokeosU1ujf_TESTDSIGU.item_property
  12. 12. Let's check each process
  13. 13. <ul>Paths in document table that don't exist in the item_property table </ul><ul>Add them in the item_property table </ul>
  14. 14. Duplicated paths in document table Continue until path is unique Path already exists ? Regroup duplicated path used in one Id and modify database tables to use this Id Id used in other tables ? Last duplicated path ? Delete from database
  15. 15. <ul>Paths in document table that don't exist in the filesystem </ul><ul>Delete it from the document table </ul>
  16. 16. <ul>Paths in the filesystem that don't exists in document table </ul><ul>Delete it from the file system </ul>
  17. 17. <ul>Filenames with incorrect characters in the document table and in the filesystem </ul>RDC = Remove_Dangerous_Char eg : path=/doc/'help' {tool} RDC(path) = /doc/-help-_tool_ Build RDC(path) that doesn't already exist Rename path in document table Rename path in filesystem Path used in database tables ? (eg : intro tools) Path used in HTML user files ? Modify table field with RDC(path) Modify HTML file with RDC(path)
  18. 18. Tool presentation
  19. 19. Result sample with logs for users
  20. 20. Any questions ? [email_address]

×