Ticket #298 (closed Bug)
Uploading a gif image from local machine crashed Merlin and corrupted repository
| Reported by: | petri.sirkkala@… | Owned by: | somebody |
|---|---|---|---|
| Priority: | Critical | Milestone: | |
| Component: | Frontend (wiki) | Version: | 1.5 |
| Keywords: | Cc: |
Description
[jira2trac import : issue created on June 22, 2006 5:26:02 AM CEST http://issues.cocoondev.org/browse/DSY-298 ]
When uploading a gif image the repository process crashed and left the repository corrupted. The log files and a complete error report page are included in attachment.
Attachments
Change History
Changed 3 years ago by paul
- Attachment 10557_tutlogo.gif added
comment:1 Changed 3 years ago by paul
- Status changed from new to closed
[jira2trac import : comment created by petrisirkkala on June 22, 2006 5:26:42 AM CEST]
The complete error page.
comment:2 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 5:27:26 AM CEST]
Full logs from Repository Server and Wiki.
comment:3 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 5:28:09 AM CEST]
Screen logs from Repository Server and Wiki.
comment:4 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 6:53:45 AM CEST]
To repeat the bug do the following:
- Create new document
- Add some text
- click the insert image button
- select 'upload from local...'
- Give a name (I used "TTY Ratas logo 60 x 60 siniselle (#79AADF) pohjalle" for the name)
- Browse for image (the one I used is attached to the report)
- After the form has finished uploading the image click the upload button at the bottom of the form
comment:5 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 6:54:24 AM CEST]
The image that was used when repeating the bug.
comment:6 Changed 3 years ago by paul
[jira2trac import : comment created by bruno on June 22, 2006 6:57:42 AM CEST]
The crash is probably caused by the image thumbnail generation (I've never tried it with a gif actually, though it shouldn't cause a JVM to crash)
About the problem that the repository server doesn't start afterwards:
- this is not related to some corruption of repository data, so no need to worry about that
- if you have an older version of Daisy installed too, it might be that the DAISY_HOME points to the wrong Daisy (assuming you opened a new terminal to start Daisy the second time)
comment:7 Changed 3 years ago by paul
[jira2trac import : comment created by stevenn on June 22, 2006 6:57:56 AM CEST]
this looks somewhat familiar to http://www.detailedbalance.net/glove-compartment/2006/04/18/os-x-java-15-javaawtheadless-and-death
comment:8 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 7:23:38 AM CEST]
I came to think that this might be a missing java headless option.
Even so the repository should not break when upload crashes.
comment:9 Changed 3 years ago by paul
[jira2trac import : comment created by bruno on June 22, 2006 8:17:20 AM CEST]
The java headless option is part of the startup script.
I'm not sure what you mean with your second remark "Even so the repository should not break when upload crashes.". If it means the JVM shouldn't crash, then we can't control that. However, you could avoid it by disabling the thumbnail generation. This can be done in <datadir>/conf/myconfig.xml, by removing (or commenting out) the element <config documentType="Image"> ... </config>
comment:10 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 9:49:15 AM CEST]
First of all I apologize if I sounded a bit harsh or negative in tone earlier, english is not my native language.
My second remark "Even so the repository should not break when upload crashes" was based on the false assumption that the document operations would be transactional and rollback in case they fail.
With daisy 1.4.1 the OpenJMS was running on a separate JVM and it was better protected from business logical failures. But I seem to have misunderstood some parts of the persistance earlier, so this is most likely false too.
I have made backups of the repository databases and files when it was corrupted. I can send them for inspection if you see that it would be usefull.
Thank you for your help!
comment:11 Changed 3 years ago by paul
[jira2trac import : comment created by stevenn on June 22, 2006 9:58:38 AM CEST]
I think we're just a bit confused about what you mean with "corruption". Is there data corruption in the repository after the JVM crash? Can't you start the repo again and reconnect to it?
AFAICT, this is an Apple JVM bug, and we can't do much about it. Did you find a workaround with the link I gave you?
comment:12 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 22, 2006 10:48:57 AM CEST]
Yes, the repository won't start again after the crash. It is corrupted.
I have not had time to test the workaround yet, but as the OS X is only a developement environment for this project, it does not matter if the bug happens on OS X only.
comment:13 Changed 3 years ago by paul
[jira2trac import : comment created by bruno on June 22, 2006 11:02:21 AM CEST]
Hi Petri,
In what way is the repository corrupted?
Your assumption that document operations are transaction is not false, but true. The repository does everything transactional.
If it's the error in the logs you've given earlier ("Illegal attempt to set a configuration value for ...") then this is not a corruption of the repository. See my earlier comment about making sure DAISY_HOME is correctly set.
comment:14 Changed 3 years ago by paul
[jira2trac import : comment created by petrisirkkala on June 24, 2006 10:32:42 AM CEST]
Hello again,
First, the repository was _NOT_ corrupted. I am sorry for the hasty report on that one.
As it was suggested the DAISY_HOME environment variable was pointing to an old installation when I thought that the repository was corrupted.
Secondly the workaround that was suggested [1] works and with it images can be uploaded correctly.
Again I am very sorry that I reported wrong on the repository corruption.
Thank you for your excellent support and beutifully designed CMS!
This bug report should now be tagged as solved and the workaround [1] should be noted to work in this situation.
[1] http://www.detailedbalance.net/glove-compartment/2006/04/18/os-x-java-15-javaawtheadless-and-death
comment:15 Changed 3 years ago by paul
[jira2trac import : comment created by bruno on July 9, 2006 7:30:05 AM CEST]
Thanks for confirming the solution.
I've added a FAQ entry for this.
tutlogo.gif