View Full Version : Importing Mail from 3 to 4
TravisT
10-23-2007, 07:40 PM
I started the RUN command and this is what my screen filled up with over and over.
Any ideas?
Warning: rename(e:\Inetpub\wwwroot\cerb4\storage\mail\new\2 006-09\A000000013.msg,e:\Inetpub\wwwroot\cerb4\storage \mail\fail\A000000013.msg) [function.rename]: Permission denied in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 89
Reading A000000013.msg...
Decoding...
Warning: mailparse_msg_parse_file(e:\Inetpub\wwwroot\cerb4\ storage\mail\fail\A000000013.msg) [function.mailparse-msg-parse-file]: failed to open stream: No such file or directory in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 110
Warning: mailparse_msg_get_structure() expects parameter 1 to be resource, boolean given in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 111
Warning: mailparse_msg_get_part_data() expects parameter 1 to be resource, boolean given in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 112
Warning: Invalid argument supplied for foreach() in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 121
decoded! (54 ms)
Warning: mailparse_msg_free() expects parameter 1 to be resource, boolean given in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 194
Parsing... parsed! (0 ms) (Ticket ID: )
Warning: unlink(e:\Inetpub\wwwroot\cerb4\storage\mail\fail\ A000000013.msg) [function.unlink]: No such file or directory in e:\Inetpub\wwwroot\cerb4\plugins\cerberusweb.core\ cron.classes.php on line 202
TravisT
10-24-2007, 07:36 PM
I will post my own solution - once again.
It was necessary to give the IIS USR Modify permissions to the wwwroot\cerb4\ storage\mail directory. Once I did this and re-ran the RUN command from the web interface, it worked like a charm.
TR
jstanden
10-24-2007, 11:46 PM
In fairness, the Migration Docs do state:
Important: If you're using a Unix-based server be sure to set the ownership/permissions of the new files and directories in output/ to match your helpdesk installation.
However, I'll make that clearly apply to IIS as well, and I'll move the notice before the command to export tickets is given.
TravisT
10-24-2007, 11:50 PM
They were matched - that was the problem - I had to change them. Never a good idea to give the IIS USR modify permissions - EVER.
TR
jstanden
10-24-2007, 11:50 PM
Docs updated (and I attributed the IIS tweak to you):
http://wiki.cerberusdemo.com/index.php?title=Migrating_from_Cerberus_Helpdesk_3 .x_to_4.0&diff=400&oldid=379
TravisT
10-25-2007, 12:02 AM
I enabled logging to a file and here is the output that went into the file:
[24-Oct-2007 16:01:11] PHP Notice: Undefined offset: 2 in e:\Inetpub\wwwroot\cerb4\libs\devblocks\libs\adodb 5\adodb.inc.php on line 839
[24-Oct-2007 16:01:11] PHP Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in e:\Inetpub\wwwroot\cerb4\libs\devblocks\libs\adodb 5\drivers\adodb-mysql.inc.php on line 139
TR
jstanden
10-25-2007, 12:41 AM
They were matched - that was the problem - I had to change them. Never a good idea to give the IIS USR modify permissions - EVER.
The thing is, that's a local configuration issue.
You could set things up however you want, so long as the application has write access to those particular folders.
As a server admin, the 'permissions exercise' is left up to you. We can only offer guidelines because we don't have the perfect answer for 10,000+ situations. :)
jstanden
10-25-2007, 12:45 AM
I enabled logging to a file and here is the output that went into the file:
Alright!
From that point it would be more useful now to know the steps you go through to get the error message. The error you provided is in ADODB (though from data we're handing it) -- but as the database layer it's called from dozens of places.
If this is the same issue as your cron/permissions below for the parser, then it's likely not an issue anymore, right?
Thanks!
TravisT
10-25-2007, 01:14 AM
This is still an issue unled I need to enable modify permsission to another directoryother than sotarage and all of its children - here are the steps I use.
1. Export the KB articles via the kb_exporter.php from the migration tools.
2. I exported ALL and jsut one Category testing purposes.
3. This opens an XML file in IE.
4. I do a Save As and save it to my desktop.
5. I log into the KB as an editor.
6. I go to Configuration
7. Click on import artciles.
8. Browse to one of the XML files I just got from the Export process.
9. Click on Save.
10. After this the php error is written at the top of the screen.
11. Nothing is acutally written to the DB.
TR
TravisT
10-25-2007, 01:44 AM
For Testing Purposes - I downloaded PHP 5.2.4 and renamed my current PHP directory to php_orig, extracted the new release into php and copied my php.ini file over. As a result, Cerberus 3 still runs great. Cerberus 4 won't even load - 500 error. Maybe ther eis a bug in the PHP I need or am currently using?
TR
TravisT
10-25-2007, 01:59 AM
GOT IT - That was it - bad PHP version. I was running 5.1.2. Upgraded to 5.2.4 and modified the line in the php.ini that was calling for only 8 MB of memory and rammed it up to 40MB. Restarted IIS - pages came back up.
Imported the XML files - worked like a charm - getting there! WOO HOO!!
AND - the pages load faster.....swweeeeeeeeeeeeeeeeeeeeet.
TR
TravisT
10-25-2007, 02:02 AM
Oh - and I had to get the updated version of php_mailparse.dll for 5.2.
TR
jstanden
10-25-2007, 02:27 AM
Okay, that's really useful to know!
The new installer does require 16MB+ for the memory_limit as of a couple builds ago because random issues like this were popping up a lot.
Our code runs pretty lean, but we do some extensive caching for performance in Cerb4 and that can tie up PHP's memory_limit with 8MB.
If you enable memcache support from your framework.config.php those caches will use system memory and the memcache daemon (which is really fast and shared between webserver threads), but most of the time it's not worth setting up. For scalability it would be, but most people don't hit that point (e.g., short of 30-70 concurrent workers).
vBulletin® v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.