4.2.12 & External Storage plugin errors

Hello,

I’m currently working on a new installation of RT 4.2.12 on Ubuntu
14.04. The install was done using the standard instructions and the
basics works. We were able to install several plugins including RT-IR
3.2.0 and everything worked fine.

Now, I’m trying to use the External Storage plugin
(https://metacpan.org/pod/RT::Extension::ExternalStorage), but I can’t
seem to get it to work consistently.
The “extract-attachments” script does its job (the db is changed and the
files are stored on disk), but in most cases the attachments are no
longer accessible from the website. When testing with .docx documents
for example, we usually get empty documents, or documents containing
only “unknown encoding type: external”. There were also many files which
should have been moved but weren’t (pictures, .html, and .csv files).

More importantly, while the first Apache2 restart after the installation
works (most of the time), I eventually get a segmentation fault and
cannot start Apache again until the plugin is disabled:
Segmentation fault (core dumped)
Action ‘start’ failed.
The Apache error log may have more information.

The Apache log contains no information about the incident, and syslog
only contains:
/usr/sbin/apach[3785]: segfault at c ip b72791a1 sp bfa3b0d0 error 4 in
libperl.so.5.18.2[b720e000+18d000]

After failing with my current config, I tried using the plugin with the
simplest configuration possible:
Set( $rtname, ‘example.com’);

Set(%ExternalStorage,
Type => ‘Disk’,
Path => ‘/opt/rt4/var/attachments’,
);
Plugin(‘RT::Extension::ExternalStorage’);
1;
This still didn’t work.

I’ve also made sure www-data has read and write access to the
attachments folder.

Is there an issue with the plugin? Is it a problem with the version of
RT we are using?
Or am I just doing something wrong?

Regards,

Benjamin Baugnies
Belnet • CERT
Louizalaan 231 Avenue Louise
Brussel 1050 Bruxelles
België • Belgique
www.belnet.be

I found the source of some of the issues:

Some files not being externalized -> Hardcoded threshold of 10Mb under
which images are not moved (this now a documented parameter in 4.4.0)
Files not available from web interface -> www-data apparently requires
execute permission on the directory to retrieve the files.

Didn’t find the source of the segfaults, but its not an issue in 4.4.0On 04/27/2016 11:08 AM, benjamin baugnies wrote:

Hello,

I’m currently working on a new installation of RT 4.2.12 on Ubuntu
14.04. The install was done using the standard instructions and the
basics works. We were able to install several plugins including RT-IR
3.2.0 and everything worked fine.

Now, I’m trying to use the External Storage plugin
(https://metacpan.org/pod/RT::Extension::ExternalStorage), but I can’t
seem to get it to work consistently.
The “extract-attachments” script does its job (the db is changed and the
files are stored on disk), but in most cases the attachments are no
longer accessible from the website. When testing with .docx documents
for example, we usually get empty documents, or documents containing
only “unknown encoding type: external”. There were also many files which
should have been moved but weren’t (pictures, .html, and .csv files).

More importantly, while the first Apache2 restart after the installation
works (most of the time), I eventually get a segmentation fault and
cannot start Apache again until the plugin is disabled:

Segmentation fault (core dumped)
Action ‘start’ failed.
The Apache error log may have more information.

The Apache log contains no information about the incident, and syslog
only contains:
/usr/sbin/apach[3785]: segfault at c ip b72791a1 sp bfa3b0d0 error 4 in
libperl.so.5.18.2[b720e000+18d000]

After failing with my current config, I tried using the plugin with the
simplest configuration possible:

Set( $rtname, ‘example.com’);

Set(%ExternalStorage,
Type => ‘Disk’,
Path => ‘/opt/rt4/var/attachments’,
);
Plugin(‘RT::Extension::ExternalStorage’);
1;

This still didn’t work.

I’ve also made sure www-data has read and write access to the
attachments folder.

Is there an issue with the plugin? Is it a problem with the version of
RT we are using?
Or am I just doing something wrong?

Regards,