EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #02942


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: Unable to upload files to repository


The ‘Cancel’ response to the initial POST is correct – it would display a button to cancel the upload – if it was on screen long enough!

 

If you copy the errors from the log into a text editor that doesn’t wrap the lines, it’s a bit clearer (although not necessarily easier to understand).

I can’t immediately see what the problem is.

 

Do you have any overridden plugins in the repository (anything in ~/archives/ARCHIVEID/cfg/cfg.d/plugins.pl)?

Anything in ~/archives/ARCHIVEID/cfg/plugins/EPrints/…?

 

Did you update the ‘files’ workflow stage when you upgraded?

 

Cheers,

John

 

From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Caldow, James
Sent: 24 April 2014 11:38
To: 'eprints-tech@ecs.soton.ac.uk'
Subject: [EP-tech] Re: Unable to upload files to repository

 

Hi John,

 

The progressid does exist in the upload_progress table, as below:

 

+----------------------------------+------------+---------+----------+
| progressid                       | expires    | size    | received |
+----------------------------------+------------+---------+----------+
| C58D8FC386EF49888DF11674E4E1E6AF | 1398934939 | 7378540 |  7378540 |
+----------------------------------+------------+---------+----------+

 

Permissions on the server are drwxrwsr-x for all folders in the archive and the owner is eprints:eprints. Apache is running as eprints:eprints too, so all should be in order there. SELinux permissions were set as per the wiki:

 

chcon -R -h -t httpd_sys_script_rw_t /usr/share/eprints/archives/eresearch/documents/

 

Firebug does have a POST entry, but the only information there is:

 

{"lib/submissionform:action_cancel":"Cancel"}

 

 

which does seem a bit odd, though I'd be hard pressed to understand why.

 

Tried the upload in Firefox, IE and Chrome with no difference in behaviour.

 

The only errors in the Apache logs are along the same lines as the one I posted in my original email. They all follow the same format, and are generated every time I try to upload a document.

 

I feel I might make some progress if I could actually understand what the error logs were telling me, but my lack of knowledge in that area is really letting me down on this one.

 

 

James


From: eprints-tech-bounces@ecs.soton.ac.uk <eprints-tech-bounces@ecs.soton.ac.uk> on behalf of John Salter <J.Salter@leeds.ac.uk>
Sent: 24 April 2014 11:01
To: 'eprints-tech@ecs.soton.ac.uk'
Subject: [EP-tech] Re: Unable to upload files to repository

 

Does that progressid exist in the upload_progress table?

I’m guessing it does – so it seems like there’s something else at play here.

 

Have you double-double checked the permissions?

Is Apache running as the user you expect it to?

 

Does it work in a different browser?

 

In Firebug, look at the Console from the point that you get to the upload page.

When you select a file, there should also be an Ajax POST – does this have any clues?

 

Normally there will be some trail through the error logs somewhere if something is failing like this…

 

Cheers,

John

 

From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Caldow, James
Sent: 24 April 2014 10:45
To: 'eprints-tech@ecs.soton.ac.uk'
Subject: [EP-tech] Re: Unable to upload files to repository

 

Hi John,

 

Many thanks for the pointers.

 

We upgraded from 3.1.3, which seemed to work fine. The database upgrades took some time to work through the various versions in between.

 

I've checked the database structure and we do have an "upload_progress" table and an "upload_progress__ordervalues_en" table. Hopefully that means all is well with the database?

 

I've checked Firebug when trying to upload a file, and the result of the GET is:

 

{
      "progressid": "C58D8FC386EF49888DF11674E4E1E6AF",
      "received": 4039,
      "uri": "http:\/\/eresearch.qmu.ac.uk\/id\/upload_progress\/C58D8FC386EF49888DF11674E4E1E6AF",
      "size": 7378540,
      "expires": 1398934939
    }

I'm still trying to track this one down but I am starting to feel pretty hopeless, (having been at it for weeks now!).

Any and all suggestions gratefully received at this point.


James

 


From: eprints-tech-bounces@ecs.soton.ac.uk <eprints-tech-bounces@ecs.soton.ac.uk> on behalf of John Salter <J.Salter@leeds.ac.uk>
Sent: 24 April 2014 09:44
To: 'eprints-tech@ecs.soton.ac.uk'
Subject: [EP-tech] Re: Unable to upload files to repository

 

James,

What have you upgraded from?

It might be worth checking you have an ‘upload_progress’ table in the db.

If you’ve got firebug (or a similar tool), use it to inspect the Ajax calls/response – they might also give you a clue.

 

Cheers,

John

 

From: eprints-tech-bounces@ecs.soton.ac.uk [mailto:eprints-tech-bounces@ecs.soton.ac.uk] On Behalf Of Caldow, James
Sent: 23 April 2014 16:28
To: eprints-tech@ecs.soton.ac.uk
Subject: [EP-tech] Unable to upload files to repository

 

We have recently migrated our repository to a new server, combined with an upgrade to 3.3.12.

 

Most things appear to be working, (though there is a list of issues that remain unsolved).

 

The most pressing issue is that file uploads seem not to be working since the move/upgrade. From the "Upload" section of the edit item workflow, clicking on "Browse" from the "File" section of "Add a new document" brings up the correct browse window. Clicking on a file, followed by "Open" produces a very brief flash of a progress bar, followed by nothing at all.

 

Checking the Apache error log shows the following, (which I am unable to debug):

 

document.4640 failed to create subdataobj on document.files at /usr/share/eprints/perl_lib/EPrints/DataObj.pm line 313
    EPrints::DataObj::create_from_data('EPrints::DataObj::Document', 'EPrints::Repository=HASH(0x7f625f2fce98)', 'HASH(0x7f625f2d40d0)', 'EPrints::DataSet=HASH(0x7f625fb88700)') called at /usr/share/eprints/perl_lib/EPrints/DataObj/SubObject.pm line 78
    EPrints::DataObj::SubObject::create_from_data('EPrints::DataObj::Document', 'EPrints::Repository=HASH(0x7f625f2fce98)', 'HASH(0x7f625f2d40d0)', 'EPrints::DataSet=HASH(0x7f625fb88700)') called at /usr/share/eprints/perl_lib/EPrints/DataObj/Document.pm line 313
    EPrints::DataObj::Document::create_from_data('EPrints::DataObj::Document', 'EPrints::Repository=HASH(0x7f625f2fce98)', 'HASH(0x7f625f2d40d0)', 'EPrints::DataSet=HASH(0x7f625fb88700)') called at /usr/share/eprints/perl_lib/EPrints/DataSet.pm line 1012
    EPrints::DataSet::create_dataobj('EPrints::DataSet=HASH(0x7f625fb88700)', 'HASH(0x7f625f2d40d0)') called at /usr/share/eprints/perl_lib/EPrints/DataObj.pm line 395
    EPrints::DataObj::create_subdataobj('EPrints::DataObj::EPrint=HASH(0x7f625ff9f1d8)', 'documents', 'HASH(0x7f625f2d40d0)') called at /usr/share/eprints/perl_lib/EPrints/Plugin/Screen/EPrint/UploadMethod/File.pm line 109
    EPrints::Plugin::Screen::EPrint::UploadMethod::File::action_add_format('EPrints::Plugin::Screen::EPrint::UploadMethod::File=HASH(0x7f...') called at /usr/share/eprints/perl_lib/EPrints/Plugin/Screen.pm line 240
    EPrints::Plugin::Screen::from('EPrints::Plugin::Screen::EPrint::UploadMethod::File=HASH(0x7f...') called at /usr/share/eprints/perl_lib/EPrints/Plugin/InputForm/Component/Upload.pm line 84
    EPrints::Plugin::InputForm::Component::Upload::update_from_form('EPrints::Plugin::InputForm::Component::Upload=HASH(0x7f62600d...', 'EPrints::ScreenProcessor=HASH(0x7f62600a2bc0)') called at /usr/share/eprints/perl_lib/EPrints/Plugin/Screen/EPrint/Edit.pm line 74
    EPrints::Plugin::Screen::EPrint::Edit::from('EPrints::Plugin::Screen::EPrint::Edit=HASH(0x7f62600e7d70)') called at /usr/share/eprints/perl_lib/EPrints/ScreenProcessor.pm line 310
    EPrints::ScreenProcessor::process('EPrints::ScreenProcessor', 'session', 'EPrints::Repository=HASH(0x7f625f2fce98)', 'template', undef, 'url', '/cgi/users/home') called at /usr/share/eprints/cgi/users/home line 25
    ModPerl::ROOT::ModPerl::Registry::usr_share_eprints_cgi_users_home::handler('Apache2::RequestRec=SCALAR(0x7f625efeedb0)') called at /usr/lib64/perl5/vendor_perl/ModPerl/RegistryCooker.pm line 204
    eval {...} called at /usr/lib64/perl5/vendor_perl/ModPerl/RegistryCooker.pm line 204
    ModPerl::RegistryCooker::run('ModPerl::Registry=HASH(0x7f626009f818)') called at /usr/lib64/perl5/vendor_perl/ModPerl/RegistryCooker.pm line 170
    ModPerl::RegistryCooker::default_handler('ModPerl::Registry=HASH(0x7f626009f818)') called at /usr/lib64/perl5/vendor_perl/ModPerl/Registry.pm line 31
    ModPerl::Registry::handler('ModPerl::Registry', 'Apache2::RequestRec=SCALAR(0x7f625efeedb0)') called at -e line 0
    eval {...} called at -e line 0

 

I have checked for file permissions, SELinux permissions, etc. Everything seems to be correct, but file uploads still will not work.

 

Adding a new document from a URL does work, which I think would point to the problem not being permissions based, (though I could be completely wrong).

 

Does anyone have any pointers as to where I should be looking?

 

Many thanks,

 

James