Ticket UUID: | a483f0ab3f0d4da07bb764bf6bd0625a2faddcd7 | ||
Title: | tree checksum does not match repository after commit | ||
Status: | Open | Type: | Code_Defect |
Severity: | Critical | Priority: | Medium |
Subsystem: | Resolution: | Open | |
Last Modified: | 2010-11-13 14:54:41 | ||
Version Found In: | [64459dd091] | ||
Description & Comments: | |||
Cannot check in file changes to my repository, getting the error above, 100% repeatable. Repository is about 148MB. Repository file and content files to be applied by the commit available for download from a website I run on request.
drh added on 2010-06-07 12:18:38: Please checkout a separate copy of the source tree you are trying to commit against and run a recursive "diff" on the two directories and send me the results. Also please send the output of "fossil status". anonymous added on 2010-06-09 02:56:09: ----------------- Dr. Hipp, Attached is a diff and status output as requested. Note that the error occurs also in the latest fossil.exe from 5/21/10. Note that the repository is at M:\fileshare\dev\v73.fossil on my system. I created a separate copy of the tree at M:\fileshare\devcopy and ran the diff between those two directories. There are some files that in dev directory that I exclude from fossil, and the diff will show that. I can get you the entire M:\fileshare\dev directory zipped or otherwise compressed and put it on a website if you need that to reproduce the problem on your systems. Note that the problem will go away if I 'blow away' my checkout by removing the _FOSSIL_ and manifest files, and then do fossil open v73.fossil again, and update the files manually in this tree to match what they were before, so the problem appears to be corrupt checkout files rather than inability to handle the file changes in the directory tree. At this point the error is not critical for me, as I 'resolved' it last night by completely recreating the repository from scratch in a separate area in order to continue with my work. I recognize that that was a extreme solution, but did not know what else to do at that time. In the future, I would choose to resolve it instead by blowing away my checkout connection files '_FOSSIL_' and the 'manifests', and then do the open, apply changes, and commit again. I am keeping this set of files solely so that you can debug the problem in case fossil needs patching. If there is no real problem with fossil or nothing that you can do to debug and fix a potential code defect in fossil, let me know so that I can remove the old files from my system. Also, I tried to move M:\fileshare\dev to some other area to continue with the rest of my work, but it appears that the checkout file _FOSSIL_ hardcodes the absolute path to the v73.fossil repository file, and so moving it would result in a non-usable test case, unless I want to try editing the _FOSSIL_ file with HxD to relocate my repository. You might consider having _FOSSIL_ use a relative path instead to the repository if possible, since many people will choose to put their tree and repository in the same area. --------- repository: M:/Fileshare/dev/v73.fossil local-root: M:/Fileshare/dev/ server-code: 3eb7635abee9a2e55353eb8bdd0acef65f41e50c checkout: e327322ee19fcc6c2d1aa7aea2c2bccd4b2f9dfc 2010-06-07 00:38:19 UTC parent: ec426f797e99280e70ff5a4193267324544cb4fc 2010-05-25 02:51:54 UTC tags: trunk EDITED V73/Common/Common.vbproj EDITED V73/Common/Info.vb EDITED V73/Common/source/database/databaseLink.vb EDITED V73/Common/source/database/databaseLinkType.vb EDITED V73/Common/source/debug/debugMethods.vb EDITED V73/Common/source/generic/dictionary.vb EDITED V73/Common/source/generic/generics.vb EDITED V73/Common/source/generic/interface.vb EDITED V73/Common/source/generic/list.vb EDITED V73/Common/source/language/sql.vb EDITED V73/Common/source/language/xml.vb EDITED V73/Common/source/object/matchList.vb ADDED V73/Common/source/string/hexadecimal.vb EDITED V73/Common/source/string/stringMethods.vb ADDED V73/Common/source/windows/assembly.vb ADDED V73/Common/source/windows/controls.vb ADDED V73/Common/source/windows/encryption.vb ADDED V73/Common/source/windows/form.vb ADDED V73/Common/source/windows/guid.vb ADDED V73/Common/source/windows/path.vb ADDED V73/Common/source/windows/process.vb ADDED V73/Common/source/windows/registry.vb ADDED V73/CommonWeb/Info.vb ADDED V73/CommonWeb/Web.sln ADDED V73/CommonWeb/Web.vbproj ADDED V73/CommonWeb/source/web/cookie.vb ADDED V73/CommonWeb/source/web/web.vb DELETED V73/Fossil/Fossil-filetype.reg EDITED V73/Fossilizer/Fossilizer.sln DELETED V73/Fossilizer/Fossilizer.vbproj DELETED V73/Fossilizer/Info.vb DELETED V73/Fossilizer/MainForm.Designer.vb DELETED V73/Fossilizer/MainForm.resx DELETED V73/Fossilizer/MainForm.vb DELETED V73/Fossilizer/My Project/app.manifest DELETED V73/Fossilizer/bin/Debug/Fossilizer.exe DELETED V73/Fossilizer/bin/Debug/V73.Common.dll ADDED V73/Fossilizer/dll/FossilizerDll.vbproj ADDED V73/Fossilizer/dll/Info.vb ADDED V73/Fossilizer/dll/System.Data.SQLite.dll ADDED V73/Fossilizer/dll/fossil.exe ADDED V73/Fossilizer/dll/invoke/fossil.vb ADDED V73/Fossilizer/dll/invoke/sqlite.vb ADDED V73/Fossilizer/dll/object/dependency.vb ADDED V73/Fossilizer/dll/object/organization.vb ADDED V73/Fossilizer/dll/object/project.vb ADDED V73/Fossilizer/dll/object/projectFile.vb ADDED V73/Fossilizer/dll/object/server.vb ADDED V73/Fossilizer/dll/object/user.vb ADDED V73/Fossilizer/dll/object/workingDirectory.vb ADDED V73/Fossilizer/dll/workspace/userPreferences.vb DELETED V73/Fossilizer/file.vb DELETED V73/Fossilizer/global.vb ADDED V73/Fossilizer/main/Fossilizer.vbproj ADDED V73/Fossilizer/main/Info.vb ADDED V73/Fossilizer/main/My Project/app.manifest ADDED V73/Fossilizer/main/extensions/organization.vb ADDED V73/Fossilizer/main/extensions/project.vb ADDED V73/Fossilizer/main/extensions/user.vb ADDED V73/Fossilizer/main/extensions/workingDirectory.vb ADDED V73/Fossilizer/main/form/AddUser.Designer.vb ADDED V73/Fossilizer/main/form/AddUser.resx ADDED V73/Fossilizer/main/form/AddUser.vb ADDED V73/Fossilizer/main/form/Projects.Designer.vb ADDED V73/Fossilizer/main/form/Projects.resx ADDED V73/Fossilizer/main/form/Projects.vb ADDED V73/Fossilizer/main/form/SelectItem.Designer.vb ADDED V73/Fossilizer/main/form/SelectItem.resx ADDED V73/Fossilizer/main/form/SelectItem.vb ADDED V73/Fossilizer/main/fossilizer.exe.config ADDED V73/Fossilizer/main/global.vb DELETED V73/Web/Info.vb DELETED V73/Web/Web.sln DELETED V73/Web/Web.vbproj DELETED V73/Web/source/web/cookie.vb DELETED V73/Web/source/web/web.vb DELETED V73/Website/default.htm ADDED V73/Website/www/default.htm EDITED VCC/VCC/VCC.sln EDITED VCC/VCC/VCC.vbproj EDITED VCC/VCC/churchWeb/util.vb EDITED VCC/lifecrossings/Bin/V73.Common.dll EDITED VCC/lifecrossings/Bin/V73.Common.xml EDITED VCC/lifecrossings/Bin/VCC.dll EDITED VCC/lifecrossings/Bin/Web.dll EDITED VCC/lifecrossings/lifecrossings.sln EDITED VCC/menofvictory/bin/V73.Common.dll EDITED VCC/menofvictory/bin/V73.Common.xml EDITED VCC/menofvictory/bin/VCC.dll EDITED VCC/menofvictory/bin/Web.dll EDITED VCC/menofvictory/menofvictory.sln EDITED VCC/surrenderedband/App_Code/vcc/churchWeb/msgPostPage.vb EDITED VCC/surrenderedband/Global.asax.vb EDITED VCC/surrenderedband/surrenderedband.sln EDITED VCC/victorypeople/App_Code/calendar.vb EDITED VCC/victorypeople/App_Code/control.vb EDITED VCC/victorypeople/App_Code/dbTable.vb EDITED VCC/victorypeople/App_Code/document.vb EDITED VCC/victorypeople/App_Code/editPage.vb EDITED VCC/victorypeople/App_Code/email.vb EDITED VCC/victorypeople/App_Code/image.vb EDITED VCC/victorypeople/App_Code/input.vb EDITED VCC/victorypeople/aboutUs/staff.aspx.vb EDITED VCC/victorypeople/aboutUs/staffProfile.aspx.vb EDITED VCC/victorypeople/admin/eventSeries-edit.aspx.vb EDITED VCC/victorypeople/admin/recordedevent-edit.aspx.vb EDITED VCC/victorypeople/admin/recording-edit.aspx.vb EDITED VCC/victorypeople/bin/V73.Common.dll EDITED VCC/victorypeople/bin/V73.Common.xml EDITED VCC/victorypeople/bin/VCC.dll EDITED VCC/victorypeople/bin/Web.dll EDITED VCC/victorypeople/contactUs/eventSignup.aspx.vb EDITED VCC/victorypeople/contactUs/guestbook.aspx.vb EDITED VCC/victorypeople/contactUs/index.aspx.vb EDITED VCC/victorypeople/index.aspx.vb EDITED VCC/victorypeople/ministries/index.aspx.vb EDITED VCC/victorypeople/news/announcements.aspx.vb EDITED VCC/victorypeople/news/calendar.aspx.vb EDITED VCC/victorypeople/news/calendarday.aspx.vb EDITED VCC/victorypeople/news/calendaritem.aspx.vb EDITED VCC/victorypeople/news/events.aspx.vb EDITED VCC/victorypeople/resources/links.aspx.vb EDITED VCC/victorypeople/resources/podcast.aspx.vb EDITED VCC/victorypeople/test.aspx.vb EDITED VCC/victorypeople/test2.aspx.vb EDITED VCC/victorypeople/victorypeople.sln anonymous added on 2010-06-24 17:41:51: anonymous claiming to be RBerteig added on 2010-06-24 21:41:03: I haven't attempted to diagnose this in more detail, since the simple rule of closing the project before doing the final check in and wrapping up a delivery bundle fit well enough into my workflow. benoit added on 2010-06-25 07:54:39: Under Windows, file names are case insensitive. I had zipped a part and unzipped it with another software, which had messed up case in file names. Maybe you had the same issue. anonymous claiming to be honesthacker added on 2010-06-29 14:24:52: anonymous added on 2010-11-13 10:21:37: Today I've put Fossil under some unusual 'stress' using it to handle all the files I used for a video project done in Cinelerra. At the end, when I wanted to store everything in Fossil repo, I had instance of the subject's message, but even repeated attempt to commit everything did not succeed. Here is the snippet from the terminal: [gour@atmarama kartika] fossil stat repository: /home/gour/repos/fossil/kartika.fossil local-root: /home/gour/video/mama/kartika/ server-code: 4a68b14db6318b3979e3a68925a4cc5eee2f04c5 checkout: b80adf5577f7b54fc658889e3ed73132761d225d 2010-11-13 08:59:00 UTC parent: 2f766c14db19ef657b1d2a359d7bc5958de0a238 2010-11-13 08:44:03 UTC tags: trunk comment: oil-painting effect at the end (user: gour) ADDED Kartika-2.mpeg2video DELETED Kartika.osp ADDED audio/Prayers_to_the_Six_Gosvamis.mp3 ADDED dvd/VIDEO_TS/VIDEO_TS.BUP ADDED dvd/VIDEO_TS/VIDEO_TS.IFO ADDED dvd/VIDEO_TS/VIDEO_TS.VOB ADDED dvd/VIDEO_TS/VTS_01_0.BUP ADDED dvd/VIDEO_TS/VTS_01_0.IFO ADDED dvd/VIDEO_TS/VTS_01_0.VOB ADDED dvd/VIDEO_TS/VTS_01_1.VOB ADDED dvdwizard.cmd ADDED dvdwizard.xml ADDED kartika.ac3 ADDED kartika.m2v ADDED kartika.mpeg [gour@atmarama kartika] fossil ci emacsclient "/home/gour/video/mama/kartika/ci-comment-DFE0F3EE390F.txt" Waiting for Emacs... You need a passphrase to unlock the secret key for user: "Gour D. <gour@atmarama.net>" 4096-bit RSA key, ID CDBF17CA, created 2010-07-14 gpg: writing to `in-25E14E727C32D22DEC2B' gpg: RSA/SHA1 signature from: "CDBF17CA Gour D. <gour@atmarama.net>" New_Version: 6873ebb458aa2b5785a4b54a91c09917fdd4f104 fossil: tree checksums before and after commit do not match [gour@atmarama kartika] fossil stat repository: /home/gour/repos/fossil/kartika.fossil local-root: /home/gour/video/mama/kartika/ server-code: 4a68b14db6318b3979e3a68925a4cc5eee2f04c5 checkout: b80adf5577f7b54fc658889e3ed73132761d225d 2010-11-13 08:59:00 UTC parent: 2f766c14db19ef657b1d2a359d7bc5958de0a238 2010-11-13 08:44:03 UTC tags: trunk comment: oil-painting effect at the end (user: gour) ADDED Kartika-2.mpeg2video DELETED Kartika.osp ADDED audio/Prayers_to_the_Six_Gosvamis.mp3 ADDED dvd/VIDEO_TS/VIDEO_TS.BUP ADDED dvd/VIDEO_TS/VIDEO_TS.IFO ADDED dvd/VIDEO_TS/VIDEO_TS.VOB ADDED dvd/VIDEO_TS/VTS_01_0.BUP ADDED dvd/VIDEO_TS/VTS_01_0.IFO ADDED dvd/VIDEO_TS/VTS_01_0.VOB ADDED dvd/VIDEO_TS/VTS_01_1.VOB ADDED dvdwizard.cmd ADDED dvdwizard.xml ADDED kartika.ac3 ADDED kartika.m2v ADDED kartika.mpeg EDITED kartika.xml [gour@atmarama kartika] fossil ci emacsclient "/home/gour/video/mama/kartika/ci-comment-DCF36188F702.txt" Waiting for Emacs... You need a passphrase to unlock the secret key for user: "Gour D. <gour@atmarama.net>" 4096-bit RSA key, ID CDBF17CA, created 2010-07-14 gpg: writing to `in-6CFD19013B265AF9F89D' gpg: RSA/SHA1 signature from: "CDBF17CA Gour D. <gour@atmarama.net>" New_Version: 98454745ae3c37b22a11f6471ff2f75bff4ee4fb [gour@atmarama kartika] fossil stat repository: /home/gour/repos/fossil/kartika.fossil local-root: /home/gour/video/mama/kartika/ server-code: 4a68b14db6318b3979e3a68925a4cc5eee2f04c5 checkout: 98454745ae3c37b22a11f6471ff2f75bff4ee4fb 2010-11-13 10:00:38 UTC parent: b80adf5577f7b54fc658889e3ed73132761d225d 2010-11-13 08:59:00 UTC tags: trunk comment: complete project (audio, video, dvd…) (user: gour) EDITED dvd/VIDEO_TS/VTS_01_1.VOB EDITED kartika.mpeg [gour@atmarama kartika] ls -al ~/repos/fossil total 1,9G drwxr-xr-x 2 gour 4,0K Nov 13 11:01 . drwxr-xr-x 7 gour 4,0K Nov 8 13:07 .. -rw-r--r-- 1 gour 88K Nov 11 15:16 aur.fossil -rw-r--r-- 1 gour 3,9M Nov 11 15:34 bhagavad-gita-seminar.fossil -rw-r--r-- 1 gour 689K Nov 11 15:43 cfgfiles.fossil -rw-r--r-- 1 gour 1,8G Nov 13 11:01 kartika.fossil -rw-r--r-- 1 gour 70K Nov 13 09:07 mama.fossil -rw-r--r-- 1 gour 77K Nov 12 17:32 org.fossil -rw-r--r-- 1 gour 3,4M Nov 11 15:40 sqlite-books.fossil [gour@atmarama kartika] fossil help Usage: fossil help COMMAND. Available COMMANDs: add co import redo tag addremove commit info remote-url ticket all configuration init rename timeline annotate deconstruct leaves revert ui artifact delete ls rm undo branch descendants merge scrub unset cgi diff mv search update changes export new server user checkout extras open settings version ci finfo pull sha1sum wiki clean gdiff push sqlite3 zip clone help rebuild status close http reconstruct sync This is fossil version [ceab53718f] 2010-11-12 16:37:37 UTC [gour@atmarama kartika] fossil changes EDITED dvd/VIDEO_TS/VTS_01_1.VOB EDITED kartika.mpeg [gour@atmarama kartika] fossil ci emacsclient "/home/gour/video/mama/kartika/ci-comment-40B3CFC75419.txt" Waiting for Emacs... You need a passphrase to unlock the secret key for user: "Gour D. <gour@atmarama.net>" 4096-bit RSA key, ID CDBF17CA, created 2010-07-14 gpg: writing to `in-97E6EDA8FDA97AC9AD9D' gpg: RSA/SHA1 signature from: "CDBF17CA Gour D. <gour@atmarama.net>" New_Version: 9ebf6d08b2dd0d258fc7bd5a3c60c17087528b18 [gour@atmarama kartika] fossil changes EDITED dvd/VIDEO_TS/VTS_01_1.VOB EDITED kartika.mpeg [gour@atmarama kartika] fossil diff Index: dvd/VIDEO_TS/VTS_01_1.VOB =================================================================== --- dvd/VIDEO_TS/VTS_01_1.VOB +++ dvd/VIDEO_TS/VTS_01_1.VOB cannot compute difference between binary files Index: kartika.mpeg =================================================================== --- kartika.mpeg +++ kartika.mpeg cannot compute difference between binary files From the above it's visible that 2 files (dvd/VIDEO_TS/VTS_01_1.VOB and kartika.mpeg) cannot be properly checked-in. Sincerely, anonymous claiming to be gour added on 2010-11-13 13:13:24: [gour@atmarama kartika] fossil version This is fossil version [64459dd091] 2010-11-13 12:48:00 UTC [gour@atmarama kartika] fossil stat repository: /home/gour/repos/fossil/kartika.fossil local-root: /home/gour/video/mama/kartika/ server-code: 4a68b14db6318b3979e3a68925a4cc5eee2f04c5 checkout: 9ebf6d08b2dd0d258fc7bd5a3c60c17087528b18 2010-11-13 10:03:37 UTC parent: 98454745ae3c37b22a11f6471ff2f75bff4ee4fb 2010-11-13 10:00:38 UTC tags: trunk comment: finished project (user: gour) EDITED dvd/VIDEO_TS/VTS_01_1.VOB EDITED kartika.mpeg [gour@atmarama kartika] fossil ci emacsclient "/home/gour/video/mama/kartika/ci-comment-ED1E5806ACDF.txt" Waiting for Emacs... You need a passphrase to unlock the secret key for user: "Gour D. <gour@atmarama.net>" 4096-bit RSA key, ID CDBF17CA, created 2010-07-14 gpg: writing to `in-AD2FD4A375B206FB0DBD' gpg: RSA/SHA1 signature from: "CDBF17CA Gour D. <gour@atmarama.net>" New_Version: c353967e8ecbce7f64589b6eea2cdfcb9333a8a7 [gour@atmarama kartika] fossil stat repository: /home/gour/repos/fossil/kartika.fossil local-root: /home/gour/video/mama/kartika/ server-code: 4a68b14db6318b3979e3a68925a4cc5eee2f04c5 checkout: c353967e8ecbce7f64589b6eea2cdfcb9333a8a7 2010-11-13 13:10:04 UTC parent: 9ebf6d08b2dd0d258fc7bd5a3c60c17087528b18 2010-11-13 10:03:37 UTC tags: trunk comment: another attempt to checkin latest complete project (user: gour) EDITED dvd/VIDEO_TS/VTS_01_1.VOB EDITED kartika.mpeg anonymous claiming to be achavasse added on 2010-11-13 14:54:41: They didn't have the same content or size, but it seems when you do that windows copies over the modification date of the file (at last when you do it using the explorer), because the original file had the same modification time as the one I replaced. So the mtime check led fossil to believe the file hadn't changed and it didn't include it in the commit. Then when it compared the checksum of the files in the commit (including the old version of that file mentioned above) to the working directory which contained the latest version, the checksum didn't match. As a workaround, it is possible to disable mtime check with "fossil set mtimes-changes 0". |