dbox icon indicating copy to clipboard operation
dbox copied to clipboard

pull won't get all changes always correctly

Open alexanderadam opened this issue 10 years ago • 1 comments

Somehow we now have the issue that the gem won't get all changes and therefore files are missing.

The last entry in the log is

D, [2014-10-07T10:39:05.110118 #2466] DEBUG -- : Executing changes:

(nothing after this but before this life everything seems to be okay) and the returned result is empty:

:002 > Dbox.pull ...
 => [{:created=>[], :deleted=>[], :updated=>[], :failed=>[]}]

Is there any recommended way of investigate errors like this (it is not possible for us to give out credentials with the data causing this :crying_cat_face:)?

UPDATE:

It seems that the issue is an case error.

I removed the complete local dropbox folder & tmp files and pulled again. The first time i will get an exception:

Errno::ENOENT: No such file or directory @ rb_file_s_mtime - /home/www-data/dropbox/Assets/hi/COVER
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:85:in `mtime'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:85:in `saving_timestamp'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:93:in `saving_parent_timestamp'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:339:in `create_dir'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:192:in `block in execute'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:186:in `each'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:186:in `execute'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox/syncer.rb:15:in `clone'
        from [..]/vendor/bundle/ruby/2.1.0/gems/dbox-0.8.2/lib/dbox.rb:39:in `clone'

The folder Assets/hi/COVER doesn't exist but there is a folder named Assets/Hi/COVER. If I execute the pull a second time, no changes will be aggregated.

alexanderadam avatar Oct 07 '14 08:10 alexanderadam

Maybe this helps a bit:

I've commented out the saving_parent_timestamp block on line 340 in syncer.rb to see what would happen if it just tried creating the dir without updating timestamp. This resulted in the 'Oops, you have multiple files with the same case.' RuntimeError...

effkay avatar Oct 10 '14 06:10 effkay