OJS 2.4.x - Galley files not uploaded and repeated empty entries

Hello all,

We are experiencing what I believe is some sort of network issue. I’m trying to upload several files at a time for an issue, on browser tab for each article. There are 15+ files to be uploaded.
Server hangs, no file is uploaded. Sometimes there’s a proxy error message page. When going back to the Editing stage, there are multiple uploaded empty files, as the process has not finished correctly.
I searched but couldn’t find anything related.
There were multiple requests to the database.
When I try a single article at a time, it works, very slowly, most of the time.
Largest single article is 2.5MB. Most are around 1MB or less in size.
If the file is larger than 15MB (full issue in PDF), then it doesn’t work.
Checked apache config and nothing was changed.

It used to work, but not anymore, especially after learning of the probable DoS attacks.
There are no errors logged.

Is there a fix for this?
How can I monitor DoS attacks myself?
Examples of problem:

Figure 1 - OJS hanging while attempting to upload galley file

32

Figure 2 - Browser error message after quite a while of waiting

59

Figure 3 - Multiple failed upload attempts when returning to editing stage of submission

image

Hello all,

Could this problem be related to multiple systems using the same MySQL login+password + persistent connections enabled?

Hello all,

Monitoring Apache error log only shows this:
[Wed Jan 31 09:25:22 2018] [error] [client 192.168.0.240] ojs2: 404 Not Found
Does this mean that there’s no 404 page setup?

Hello all,

Still attempting to upload a file.
After a long wait, the page to upload and check the galley file and label showed up.

Now, this error messages popped up on the error log. They don’t seem related to this problem though.

[Wed Jan 31 10:12:46 2018] [error] [client 192.168.0.240] ojs2 has produced an error\n  Message: USER ERROR: Smarty error: [in file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl line 32]: syntax error: unrecognized tag '/literal' (Smarty_Compiler.class.php, line 590)\n  In file: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php\n  At line: 1093\n  Stacktrace: \n   File: (unknown) line (unknown)\n     Function: PKPApplication->errorHandler(256, "Smarty error: [in file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl line 32]: syntax error: unrecognized tag '/literal' (Smarty_Compiler.class.php, line 590)", "/var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php", 1093, Array(2))\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php line 1093\n     Function: trigger_error("Smarty error: [in file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl line 32]: syntax error: unrecognized tag '/literal' (Smarty_Compiler.class.php, line 590)", 256)\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php line 1815\n     Function: Smarty->trigger_error("[in file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl line 32]: syntax error: unrecognized tag '/literal' (Smarty_Compiler.class.php, line 590)", 256)\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty_Compiler.class.php line 2256\n     Function: Smarty->_trigger_fatal_error("syntax error: unrecognized tag '/literal'", "file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl", 32, "/var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty_Compiler.class.php", 590, 256)\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty_Compiler.class.php line 590\n     Function: Smarty_Compiler->_syntax_error("unrecognized tag '/literal'", 256, "/var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty_Compiler.class.php", 590)\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty_Compiler.class.php line 312\n     Function: Smarty_Compiler->_compile_tag("/literal")\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php line 1489\n     Function: Smarty_Compiler->_compile_file("file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl", "{**\n * plugins/citationFormats/bibtex/citation.tpl\n *\n * Copyright (c) 2013-2017 Simon Fraser University\n * Copyright (c) 2003-2016 John Willinsky\n * Distributed under the GNU GPL v2. For full terms see the file docs/COPYING.\n *\n * Article reading tools -- Capture Citation BibTeX format\n *\n *}\n<div class="separator"></div>\n<div id="citation">\n{literal}\n<pre style="font-size: 1.5em; white-space: pre-wrap; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">@article{{/literal}{$journal->getLocalizedInitials()|bibtex_escape}{$articleId|bibtex_escape}{literal},\n\tauthor = {{/literal}{assign var=authors value=$article->getAuthors()}{foreach from=$authors item=author name=authors key=i}{assign var=firstName value=$author->getFirstName()}{assign var=authorCount value=$authors|@count}{$firstName|bibtex_escape} {$author->getLastName()|bibtex_escape}{if $i<$authorCount-1} {translate key="common.and"} {/if}{/foreach}{literal}},\n\ttitle = {{/literal}{$article->getLocalizedTitle()|strip_tags|bibtex_escape}{literal}},\n\tjournal = {{/literal}{$journal->getLocalizedTitle()|bibtex_escape}{literal}},\n{/literal}{if $issue}{literal}\tvolume = {{/literal}{$issue->getVolume()|bibtex_escape}{literal}},\n\tnumber = {{/literal}{$issue->getNumber()|bibtex_escape}{literal}},{/literal}{/if}{literal}\n\tyear = {{/literal}{if $article->getDatePublished()}{$article->getDatePublished()|date_format:'%Y'}{elseif $issue->getDatePublished()}{$issue->getDatePublished()|date_format:'%Y'}{else}{$issue->getYear()|escape}{/if}{literal}},\n\tkeywords = {{/literal}{$article->getLocalizedSubject()|bibtex_escape}{literal}},\n\tabstract = {{/literal}{$article->getLocalizedAbstract()|strip_tags:false|bibtex_escape}{literal}},\n{/literal}{assign var=onlineIssn value=$journal->getSetting('onlineIssn')}\n{assign var=issn value=$journal->getSetting('issn')}{if $issn}{literal}\tissn = {{/literal}{$issn|bibtex_escape}{literal}},{/literal}\n{elseif $onlineIssn}{literal}\tissn = {{/literal}{$onlineIssn|bibtex_escape}{literal}},{/literal}{/if}\n{if $article->getPages()}{if $article->getStartingPage()}\tpages = {literal}{{/literal}{$article->getStartingPage()}{if $article->getEndingPage()}--{$article->getEndingPage()}{/if}{literal}}{/literal},{/if}{/if}\n{if $article->getPubId('doi')}\tdoi = {ldelim}{$article->getPubId('doi')|escape}{rdelim},\n{/if}\n\turl = {ldelim}{url|bibtex_escape page="article" op="view" path=$article->getBestArticleId()}{rdelim}\n{rdelim}\n</pre>\n{/literal}\n</div>\n", Null)\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php line 1422\n     Function: Smarty->_compile_source("file:/var/www/devojs.ibict.br/plugins/citationFormats/bibtex//citation.tpl", "{**\n * plugins/citationFormats/bibtex/citation.tpl\n *\n * Copyright (c) 2013-2017 Simon Fraser University\n * Copyright (c) 2003-2016 John Willinsky\n * Distributed under the GNU GPL v2. For full terms see the file docs/COPYING.\n *\n * Article reading tools -- Capture Citation BibTeX format\n *\n *}\n<div class="separator"></div>\n<div id="citation">\n{literal}\n<pre style="font-size: 1.5em; white-space: pre-wrap; white-space: -moz-pre-wrap !important; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">@article{{/literal}{$journal->getLocalizedInitials()|bibtex_escape}{$articleId|bibtex_escape}{literal},\n\tauthor = {{/literal}{assign var=authors value=$article->getAuthors()}{foreach from=$authors item=author name=authors key=i}{assign var=firstName value=$author->getFirstName()}{assign var=authorCount value=$authors|@count}{$firstName|bibtex_escape} {$author->getLastName()|bibtex_escape}{if $i<$authorCount-1} {translate key="common.and"} {/if}{/foreach}{literal}},\n\ttitle = {{/literal}{$article->getLocalizedTitle()|strip_tags|bibtex_escape}{literal}},\n\tjournal = {{/literal}{$journal->getLocalizedTitle()|bibtex_escape}{literal}},\n{/literal}{if $issue}{literal}\tvolume = {{/literal}{$issue->getVolume()|bibtex_escape}{literal}},\n\tnumber = {{/literal}{$issue->getNumber()|bibtex_escape}{literal}},{/literal}{/if}{literal}\n\tyear = {{/literal}{if $article->getDatePublished()}{$article->getDatePublished()|date_format:'%Y'}{elseif $issue->getDatePublished()}{$issue->getDatePublished()|date_format:'%Y'}{else}{$issue->getYear()|escape}{/if}{literal}},\n\tkeywords = {{/literal}{$article->getLocalizedSubject()|bibtex_escape}{literal}},\n\tabstract = {{/literal}{$article->getLocalizedAbstract()|strip_tags:false|bibtex_escape}{literal}},\n{/literal}{assign var=onlineIssn value=$journal->getSetting('onlineIssn')}\n{assign var=issn value=$journal->getSetting('issn')}{if $issn}{literal}\tissn = {{/literal}{$issn|bibtex_escape}{literal}},{/literal}\n{elseif $onlineIssn}{literal}\tissn = {{/literal}{$onlineIssn|bibtex_escape}{literal}},{/literal}{/if}\n{if $article->getPages()}{if $article->getStartingPage()}\tpages = {literal}{{/literal}{$article->getStartingPage()}{if $article->getEndingPage()}--{$article->getEndingPage()}{/if}{literal}}{/literal},{/if}{/if}\n{if $article->getPubId('doi')}\tdoi = {ldelim}{$article->getPubId('doi')|escape}{rdelim},\n{/if}\n\turl = {ldelim}{url|bibtex_escape page="article" op="view" path=$article->getBestArticleId()}{rdelim}\n{rdelim}\n</pre>\n{/literal}\n</div>\n", Null, "/var/www/devojs.ibict.br/cache/t_compile/%%CD^CD2^CD2A13F3%%citation.tpl.inc")\n   File: /var/www/devojs.ibict.br/lib/pkp/lib/smarty/Smarty.class.php line 1261\n     Function: Smarty->_compile_resource("file:/var/ww
[Wed Jan 31 10:17:59 2018] [error] [client 192.168.0.240] ojs2: 404 Not Found

[/details]

Hello all,

How can I check if server is being overloaded?
Unfortunately, our IT support is not handling the issue as it should…
It’s been a week and nothing has improved…
AWstats and/or Webalizer could help?
I don’t think they’re installed on our sever, but must be confident the IT Support must have some sort of monitoring tool for this virtual machine.

[UPDATE]
What does “[Wed Jan 31 12:25:15 2018] [error] [client 192.168.0.240] no acceptable variant: /var/www/devojs.ibict.br/index” mean?

Sorry if these questions seem a bit off general topic.

[UPDATE 2]
We have finally identified that it’s probably a local network issue. Our floor is on a different, very old infrastructure, network which may be breaking the general network connections.