Bug 181734 - ark fails to correctly extract multipart rar archive
Summary: ark fails to correctly extract multipart rar archive
Status: RESOLVED FIXED
Alias: None
Product: ark
Classification: Applications
Component: general (show other bugs)
Version: 2.12
Platform: Mandriva RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: Harald Hvaal
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-24 12:04 UTC by aapgorilla
Modified: 2009-05-10 06:17 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
konsole output from ark (43.90 KB, application/octet-stream)
2009-01-24 12:06 UTC, aapgorilla
Details

Note You need to log in before you can comment on or make changes to this bug.
Description aapgorilla 2009-01-24 12:04:04 UTC
Version:           2.12 (using KDE 4.1.96)
OS:                Linux
Installed from:    Mandriva RPMs

Ark fails to correctly extract multipart rar archives (non password protected) fileroller and squeeze have no problem.

ark 2.12
unrar 3.80
Comment 1 aapgorilla 2009-01-24 12:06:13 UTC
Created attachment 30557 [details]
konsole output from ark

Here's the output from konsole, even though it correctly shows it extracts the archive it only extracts a small part of it
Comment 2 aapgorilla 2009-01-24 12:34:39 UTC
I don't know if this is a duplicate of: 
https://bugs.kde.org/show_bug.cgi?id=179914

since I am using kde4.2rc1 (or maybe even a bit later)
Comment 3 Harald Hvaal 2009-01-30 06:53:09 UTC
I couldn't reproduce this with 4.2 version. Could you maybe try the same procedure as I did to see what happens?

1. Create a 1 gb file called big
$ dd if=/dev/urandom of=big bs=1024 count=$[ 1024 * 1024 ]  
2. Get the md5sum (and copypaste it somewhere)
$ md5sum big
3. Compress this file into roughly 80 pieces of 12mb each
$ rar a -v12m -m1 myarchive big 
4. Delete the file
$ rm big
5. Unpack the multivolume archive using ark
$ ark -b myarchive.part01.rar
6. Get the md5sum again and check if it is the same as step 2
$ md5sum big

I simply cannot understand how RAR can tell you in the log output "All OK", and there is still a problem with the files extracted. Ark does not infer at all with the extraction output; it just waits for it to finish.
Comment 4 aapgorilla 2009-01-30 09:07:32 UTC
ark works with the newly created archive but still fails all my other multipart archives whilst they are all correctly extracted by squeeze or fileroller

(In reply to comment #3)
> I couldn't reproduce this with 4.2 version. Could you maybe try the same
> procedure as I did to see what happens?
> 
> 1. Create a 1 gb file called big
> $ dd if=/dev/urandom of=big bs=1024 count=$[ 1024 * 1024 ]  
> 2. Get the md5sum (and copypaste it somewhere)
> $ md5sum big
> 3. Compress this file into roughly 80 pieces of 12mb each
> $ rar a -v12m -m1 myarchive big 
> 4. Delete the file
> $ rm big
> 5. Unpack the multivolume archive using ark
> $ ark -b myarchive.part01.rar
> 6. Get the md5sum again and check if it is the same as step 2
> $ md5sum big
> 
> I simply cannot understand how RAR can tell you in the log output "All OK", and
> there is still a problem with the files extracted. Ark does not infer at all
> with the extraction output; it just waits for it to finish.
> 

Comment 5 aapgorilla 2009-01-30 09:24:17 UTC
I have tried extracting the archive it seems to extract once every 8-10/times, the filesizes of the failed extractions, created are not always the same though.

Here to runs, the top run correctly extracted the archive, the second (bottom) rurun failed

 $ ark -b Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar                                                                               
ark(8847)/ark (kdeutils) BatchExtract::addInput:                                    
ark(8847)/ark (kdeutils) Kerfuffle::factory:                                        
ark(8847)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from  "/var/tmp/kdecache-ffixxx/ksycoca4"                                              
ark(8847)/kdecore (trader) KMimeTypeTrader::query: query for mimeType  "application/x-rar" ,  "Kerfuffle/Plugin"  : returning  1  offers                                
ark(8847)/ark (kdeutils) Kerfuffle::factory: Loading library  "kerfuffle_rar"       
ark(8847)/ark (kdeutils) RARInterface::RARInterface: Rar plugin opening  "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar"                    
ark(8847)/ark (kdeutils) BatchExtract::start:                                       
ark(8847)/ark (kdeutils) BatchExtract::addExtraction:                               
ark(8847)/ark (kdeutils) RARInterface::list:                                        
ark(8847)/ark (kdeutils) RARInterface::executeRarProcess: Executing  "/usr/bin/rar" ("v", "-c-", "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar")                                                                               
ark(8847)/ark (kdeutils) Kerfuffle::ListJob::doWork: Finished                       
ark(8847)/ark (kdeutils) BatchExtract::addExtraction: "Registering job from archive /home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar, to /home/ffixxx, preservePaths 1"                                                            
ark(8847) KSharedUiServerProxy::KSharedUiServerProxy: kuiserver registered          
ark(8847)/ark (kdeutils) BatchExtract::start: Starting first job                    
ark(8847)/ark (kdeutils) main: Entering application loop                            
ark(8847)/ark (kdeutils) Kerfuffle::ExtractJob::doWork: Starting extraction with selected files  ()  Destination dir  "/home/ffixxx"  And options  QHash(("PreservePaths", QVariant(bool, true) ) )                                                         
ark(8847)/ark (kdeutils) RARInterface::copyFiles: () "/home/ffixxx"  with paths     
ark(8847)/ark (kdeutils) RARInterface::copyFiles: "orc-revrd1.avi"                  
ark(8847)/ark (kdeutils) RARInterface::executeRarProcess: Executing  "/usr/bin/rar" ("x", "-y", "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar", "orc-revrd1.avi")                                                              
ark(8847)/ark (kdeutils) BatchExtract::slotResult:                                  
^C                                                                                  
[ffixxx@localhost ~]$ ark -b Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar                                                                               
ark(8877)/ark (kdeutils) BatchExtract::addInput:                                    
ark(8877)/ark (kdeutils) Kerfuffle::factory:                                        
ark(8877)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from  "/var/tmp/kdecache-ffixxx/ksycoca4"                                              
ark(8877)/kdecore (trader) KMimeTypeTrader::query: query for mimeType  "application/x-rar" ,  "Kerfuffle/Plugin"  : returning  1  offers                                
ark(8877)/ark (kdeutils) Kerfuffle::factory: Loading library  "kerfuffle_rar"       
ark(8877)/ark (kdeutils) RARInterface::RARInterface: Rar plugin opening  "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar"                    
ark(8877)/ark (kdeutils) BatchExtract::start:                                       
ark(8877)/ark (kdeutils) BatchExtract::addExtraction:
ark(8877)/ark (kdeutils) RARInterface::list:
ark(8877)/ark (kdeutils) RARInterface::executeRarProcess: Executing  "/usr/bin/rar"("v", "-c-", "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar")
ark(8877)/ark (kdeutils) BatchExtract::addExtraction: "Registering job from archive/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar, to /home/ffixxx, preservePaths 1"
ark(8877) KSharedUiServerProxy::KSharedUiServerProxy: kuiserver registered
ark(8877)/ark (kdeutils) Kerfuffle::ListJob::doWork: Finished
ark(8877)/ark (kdeutils) BatchExtract::start: Starting first job
ark(8877)/ark (kdeutils) Kerfuffle::ExtractJob::doWork: Starting extraction with selected files  ()  Destination dir  "/home/ffixxx"  And options  QHash(("PreservePaths", QVariant(bool, true) ) )
ark(8877)/ark (kdeutils) RARInterface::copyFiles: () "/home/ffixxx"  with paths
ark(8877)/ark (kdeutils) RARInterface::copyFiles: "orc-revrd1.avi"
ark(8877)/ark (kdeutils) RARInterface::executeRarProcess: Executing  "/usr/bin/rar"("x", "-y", "/home/ffixxx/Revolutionary.Road.DVDSCR.XviD-ORC/CD1/orc-revrd1.part01.rar", "orc-revrd1.avi")
ark(8877)/ark (kdeutils) main: Entering application loop
ark(8877)/ark (kdeutils) BatchExtract::slotResult:
Comment 6 aapgorilla 2009-01-30 09:47:51 UTC
It gets even stranger, I was just trying to extract the archive a couple of times and then plasma crashed; I didn't see any system tray extraction/filecopying notifications anymore but the file did extract correctly afterwards all the time, whereas before it was only 1/10 times 
Comment 7 Raphael Kubo da Costa 2009-04-11 20:18:01 UTC
Does it still happen to you (with KDE 4.2.2 or trunk)? If so, can you attach a small multipart rar archive that presents this behaviour or point to any?
Comment 8 Harald Hvaal 2009-05-10 06:17:26 UTC
Known bug, fixed somewhere in 4.2.
4.1.96 is an old, unstable version.