M1 -> M2 Upgrade Scripts

Official Zimbra news, events, releases, and updates.
marcmac
Elite member
Elite member
Posts: 2091
Joined: Fri Sep 12, 2014 9:53 pm

M1 -> M2 Upgrade Scripts

Post by marcmac »

[quote user="vaitguy"]Get ain immediate failure that the script cannot determine my ZCS version. when I manually run rpm -q zimbra-core, I get version zimbra-core-2005.0.0-39.FC3-1Armstrong
I see that in the script, its looking for zimbra-coor-3.0.xxxxxx.
Can I manually edit the script to return M1 as I have not run the M2 install yet?
I'm using this personally as my prod email right now (not the company, just myselft/deparment) and would prefer not to mess this up.
MW[/QUOTE]
The upgrade script (upgradeM1M2.pl) if for upgrades from M1 to M2. You're running the "Armstrong" release, which predates both of those, so the upgrade script won't help you - you'll need a complete reinstall.
vaitguy
Posts: 15
Joined: Fri Sep 12, 2014 9:55 pm

M1 -> M2 Upgrade Scripts

Post by vaitguy »

Ok, well I went through the motions, really had few problems. I am able to getin into the admin profile, but all of my past users are now still in db.mailbox. But the system does not recognize the logins at all. There were only a few logins created. I manually created a new me in the admin console, which is now in the ldap directory (no others are), but the mailbox entry is not created. Here is the report.
It seems like new accounts are great, its just mine w/ the calendar, and all that is hosed completely. Can I migrate this somehow? Can we anticipate hickups like this on the Network version (As our board is very interested in going that path):
msg - system failure: writing new mailbox for account 85a780ab-5ad2-11da-b5a0-6983575c14d7

com.zimbra.cs.service.ServiceException: system failure: writing new mailbox for account 85a780ab-5ad2-11da-b5a0-6983575c14d7

at com.zimbra.cs.service.ServiceException.FAILURE(ServiceException.java:99)

at com.zimbra.cs.db.DbMailbox.createMailbox(DbMailbox.java:95)

at com.zimbra.cs.mailbox.Mailbox.createMailbox(Mailbox.java:1202)

at com.zimbra.cs.mailbox.Mailbox.getMailboxByAccountId(Mailbox.java:980)

at com.zimbra.cs.mailbox.Mailbox.getMailboxByAccountId(Mailbox.java:939)

at com.zimbra.soap.DocumentHandler.getRequestedMailbox(DocumentHandler.java:82)

at com.zimbra.cs.service.mail.Search.handle(Search.java:87)

at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEngine.java:249)

at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:163)

at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:84)

at com.zimbra.soap.SoapServlet.doPost(SoapServlet.java:226)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)

at com.zimbra.cs.servlet.ZimbraServlet.service(ZimbraServlet.java:148)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)

at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)

at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)

at java.lang.Thread.run(Thread.java:595)

Caused by: java.sql.SQLException: Cannot add or update a child row: a foreign key constraint fails
Query being executed when exception was thrown:
com.mysql.jdbc.ServerPreparedStatement[3] - INSERT INTO mailbox(account_id, id, index_volume_id, item_id_checkpoint, comment) SELECT '85a780ab-5ad2-11da-b5a0-6983575c14d7', next_mailbox_id, index_volume_id, 255, 'michael.wilson@zimbra.rmxtalk.com' FROM current_volumes ORDER BY index_volume_id LIMIT 1

at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2926)

at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571)

at com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1120)

at com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:675)

at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1162)

at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1079)

at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1064)

at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:233)

at com.zimbra.cs.db.DbMailbox.createMailbox(DbMailbox.java:75)

... 27 more
code - service.FAILURE

method - ZmCsfeCommand.prototype.invoke

detail - soap:Receiver
vaitguy
Posts: 15
Joined: Fri Sep 12, 2014 9:55 pm

M1 -> M2 Upgrade Scripts

Post by vaitguy »

I just saw your follow up to my previous post. SO I need to blow it all away and go from there.
Is there, please please say yes, a way for me to grab one users Calendar/mailbox from the old 'armstrong' and import into the new, fresh install?
adobrin
Advanced member
Advanced member
Posts: 134
Joined: Fri Sep 12, 2014 9:56 pm

M1 -> M2 Upgrade Scripts

Post by adobrin »

you're best bet is probably going to be using imapsync to transfer to a third party imap server (install one on another box, or another port on that machine), and then back again once you install m2.
this won't of course save your calendar information. i'm guessing, and its probably a pretty well educated guess, that you could get the calendar information out of the mysql database and reimport it manually once you've done the upgrade.. probably a matter of ensuring a few key fields are inserted properly. of course, i haven't looked at the schema at all.
if you want to post a mysql dump of the armstrong database, i will see if i can get you a transfer insert statement.
vaitguy
Posts: 15
Joined: Fri Sep 12, 2014 9:55 pm

M1 -> M2 Upgrade Scripts

Post by vaitguy »

If I haven't said it, thanks for your help.
Which armstrong db do you need? Mailbox2 is the db in question. Do you need the appointment table?
To uninstall, I assume, I would just blow away the /zimbra dir? and reinstall everything? I have all the mail on our main postfix box, I was sending copies to Zimbra, but using the cal exclusively. Dumb me.
adobrin
Advanced member
Advanced member
Posts: 134
Joined: Fri Sep 12, 2014 9:56 pm

M1 -> M2 Upgrade Scripts

Post by adobrin »

MIke, it looks like the data i will need is the appointment table from Mailbox2 as well as the mail_item table matching item_id from appointment.
(the actual appointment data is stored as a mail item)
so, dump appointment from Mailbox2 and

select * from mail_item where id in (select item_id from appointment);


No promises on this, the data storage format might be more dificult to decipher than i originally though. i'm happy to give it a try though :)
vaitguy
Posts: 15
Joined: Fri Sep 12, 2014 9:55 pm

M1 -> M2 Upgrade Scripts

Post by vaitguy »

Don't worry about it. I think all the other people would rather see you put your time towards making this app the best we've ever seen (so far, I think we are almost there).
adobrin
Advanced member
Advanced member
Posts: 134
Joined: Fri Sep 12, 2014 9:56 pm

M1 -> M2 Upgrade Scripts

Post by adobrin »

Zimbra Guys.
Am i right in assuming the mysql database corresponds to Mailbox# where # is id from zimbra.mailbox?
do we have to worry about the UID field in appointment.. is that a foreign key?
14319KevinH
Ambassador
Ambassador
Posts: 4558
Joined: Fri Sep 12, 2014 9:52 pm

M1 -> M2 Upgrade Scripts

Post by 14319KevinH »

[quote user="adobrin"]Zimbra Guys.
Am i right in assuming the mysql database corresponds to Mailbox# where # is id from zimbra.mailbox?
do we have to worry about the UID field in appointment.. is that a foreign key?[/QUOTE]


Your right but to be honest we don't really want to try and support this type of upgrade. Better off just using the supported methods.
vaitguy
Posts: 15
Joined: Fri Sep 12, 2014 9:55 pm

M1 -> M2 Upgrade Scripts

Post by vaitguy »

I agree, and I might be the only tech person who keeps one of those franklin covey type planners still. glad I did on this occasion.
Post Reply