[CWB] index (data) subdir secretly deleted?

Jiayue Wang arthur0421 at gmail.com
Tue Dec 13 08:52:32 CET 2016


Thanks a lot Andrew. The $cwb_datadir is configured as follows:

$cwb_datadir      = '/home/arthur/CWB_folders/index';

I added that line of code to admin-install.inc.php. In case of further 
problems I'll report.


Best,

Jiayue


On 13/12/16 06:09, Hardie, Andrew wrote:
> This is more or less what I thought was going on.
>
> The code that is doing this is as follows:
>
> 		$datadir = "{$Config->dir->index}/$corpus";
> 		if (is_dir($datadir))
> 			recursive_delete_directory($datadir);
> 		mkdir($datadir, 0775);
>
> (in admin-install.inc.php)
>
> That is, if the data directory for the specified corpus already exists, it is deleted and recreated to contain the *new* index data.
>
> However, this *should not* delete the containing directory. The function recursive_delete_directory() only goes downwards in the directory tree - not upwards. The only way it could would be if the $corpus variable is an empty string. But there are checks in place to prevent this.
>
> I have two ideas.
>
>
> FIRST,  can you report what value you set the variable $cwb_datadir to? (in config.inc.php). This may clarify matters. (note this variable is the source of the variable $Config->dir->index in the code sample above, ie they both contain the location of your index-data folder).
>
>
> SECOND, can you try modifying the code above to contain the following temporary check?
>
> 		$datadir = "{$Config->dir->index}/$corpus";
> if ("{$Config->dir->index}/" == $datadir) exiterror("aborting installation, data dir badly specified");
> 		if (is_dir($datadir))
> 			recursive_delete_directory($datadir);
> 		mkdir($datadir, 0775);
>
> ... which checks for the ought-to-be-impossible situation of an empty $corpus variable, and aborts if found?
>
> best
>
> Andrew.
>
>
> -----Original Message-----
> From: cwb-bounces at sslmit.unibo.it [mailto:cwb-bounces at sslmit.unibo.it] On Behalf Of Jiayue Wang
> Sent: 12 December 2016 18:37
> To: Open source development of the Corpus WorkBench
> Subject: Re: [CWB] index (data) subdir secretly deleted?
>
> Hi
>
> I reinstalled that particular corpus (a Vietnamese corpus), WITHOUT any
> modification to the corpus files, and the installation went ok. Then I
> could install the others.
>
> Now it seems that the disaster happened when I tried to reinstall a
> corpus immediately after an unsuccessful installation, i.e. without
> firstly deleting that corpus entry. But still, I have no idea why the
> entire index-data folder was deleted.
>
> Jiayue
>
>
> On 12/12/16 11:13, Jiayue Wang wrote:
>> Thanks anyway, Andrew. I'll re-install the corpora to see if it's
>> happening again.
>>
>> Best
>>
>> Jiayue
>>
>>
>> On 12/12/16 11:09, Hardie, Andrew wrote:
>>> Line 603 refers to the web-directory, not the index-data directory. So
>>> this error message does not seem to have any bearing on the problem at
>>> hand...
>>>
>>> best
>>>
>>> Andrew.
>>>
>>> -----Original Message-----
>>> From: cwb-bounces at sslmit.unibo.it [mailto:cwb-bounces at sslmit.unibo.it]
>>> On Behalf Of Jiayue Wang
>>> Sent: 12 December 2016 11:06
>>> To: Open source development of the Corpus WorkBench
>>> Subject: Re: [CWB] index (data) subdir secretly deleted?
>>>
>>> Thanks Andrew. I check the error log and found the only suspicious
>>> message to be
>>>
>>> PHP Warning:  chmod(): Operation not permitted in
>>> /home/arthur/www_root/CQPweb/lib/admin-install.inc.php on line 603 ...
>>>
>>> It seems the installation was unsuccessful because it failed to
>>> chmod($newdir, 0775) after creating that folder? But I don't see why
>>> this particular corpus was special - other corpora were installed
>>> without a problem.
>>>
>>> Jiayue
>>>
>>> On 12/12/16 10:38, Hardie, Andrew wrote:
>>>> I have a fairly good idea where in the code this is happening: when
>>>> the system detects that a data directory of the name of the new
>>>> corpus already exists, it attempts to delete it. However, I cannot
>>>> see why this would affect the entire index directory instead of just
>>>> that of the corpus to be created; there are already checks against
>>>> the name of the corpus being an empty string, which would be the
>>>> normal thing I would suspect.
>>>>
>>>> It's possible that your web server error log file may contain an
>>>> informative PHP message....
>>>>
>>>> best
>>>>
>>>> Andrew.
>>>>
>>>> -----Original Message-----
>>>> From: cwb-bounces at sslmit.unibo.it
>>>> [mailto:cwb-bounces at sslmit.unibo.it] On Behalf Of Jiayue Wang
>>>> Sent: 12 December 2016 08:49
>>>> To: Open source development of the Corpus WorkBench
>>>> Subject: [CWB] index (data) subdir secretly deleted?
>>>>
>>>> Hi
>>>>
>>>> I've experienced this quite a few times - when installing a corpus, the
>>>> whole index folder disappears. I don't know why, but it seems this
>>>> happens when the corpus handle is not too long or ill-formed. But the
>>>> problem is that all other corpora are lost too and must be re-installed.
>>>> Any ideas? Thanks for any help!
>>>>
>>>> Jiayue
>>>> _______________________________________________
>>>> CWB mailing list
>>>> CWB at sslmit.unibo.it
>>>> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
>>>> _______________________________________________
>>>> CWB mailing list
>>>> CWB at sslmit.unibo.it
>>>> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
>>>>
>>> _______________________________________________
>>> CWB mailing list
>>> CWB at sslmit.unibo.it
>>> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
>>> _______________________________________________
>>> CWB mailing list
>>> CWB at sslmit.unibo.it
>>> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
>>>
> _______________________________________________
> CWB mailing list
> CWB at sslmit.unibo.it
> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
> _______________________________________________
> CWB mailing list
> CWB at sslmit.unibo.it
> http://liste.sslmit.unibo.it/mailman/listinfo/cwb
>


More information about the CWB mailing list