Announcement

Collapse
No announcement yet.

Community Server Import Issues

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Community Server Import Issues

    ImpEx version: 1.86 (downloaded yesterday)

    Type of import: clean

    Source board: Community Server 2007 (3.0.20611.960)
    Source database: MS SQL Server 2005

    Target version: 3.6.8 patch level 1

    Module error occurred on: User Import

    SQL error reported: none

    I'm running PHP 5.2.4 and MySql 5.0.45. Both databases are running on a separate machine from the web server (IIS + FastCGI).

    I know the release notes for the communityserver import package say that it's intended for CS 2.0, but I don't think the relevant tables changed for CS 2007, but I have to start somewhere.....


    The first step in the process (database conversion) runs and is marked "successful", but the tables from the CS database all seem to be not found.

    I skipped the second step (associate users).

    The third step (import users) reports that it's importing 0 users, and returns without marking the "successful" field.

    The MS SQL Profiler doesn't seem to show any incoming connections. I've double-checked the connection string details, and they are correct (although I noticed that if I change the password to an incorrect one, ImpEx doesn't report an error). I'm using the default table prefix of "cs_", which is reflected correctly in the output from the first step. I've checked for the common errors that came to mind -- firewall settings, including the php_mssql.dll extension in php.ini, etc -- but everything looks OK.

    Any suggestions on how to debug this would be appreciated.

    EDIT: I tried running ImpEx in standalone mode, where it did report a connection failure to MS SQL. I built a small test case that just calls mssql_connect(), and it also fails. I know the machine name, login and password are correct, and that there isn't a firewall problem because another process on the same machine can successfully connect using those credentials.
    Last edited by Sharkman; Sun 4th Nov '07, 2:54am.
    http://anime.myfavoritegames.com/

  • #2
    I found a fix for the first problem. It looks like the PHP mssql library is probably trying to use named pipes, which are disabled on my system. To force client code to use a protocol that's supported, I set the following registry key:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo\DSQUERY = DBNETLIB

    So now my simple mssql_connect() test case works. The first step in ImpEx reports that the first 7 tables are found. I'm hoping that's because the others are needed... I know CS doesn't use a uniform table prefix scheme, so I'm sure that's the problem.

    Unfortunately, step 2 is still failing in the same way -- 0 users.

    I can see from the MS SQL Profiler that although the query that counts the number of users succeeds, the one afterwards that tries to pull over the first 2000 users fails. From the look of the query, it seems like this code hasn't been finished yet, even for CS 2.0.

    I can slog through this myself, but if anyone has some tips that would make it easier, please let me know. I just bought the software, but can't deploy unless / until I can import the existing users and posts.
    Last edited by Sharkman; Sun 4th Nov '07, 3:47am.
    http://anime.myfavoritegames.com/

    Comment


    • #3
      Open up the MS SQL manager and do a select * from a table, see if it adds another table prefix, then once you have found that, add it to ImpExConfig source table prefix config.
      I wrote ImpEx.

      Blog | Me

      Comment


      • #4
        The problem was that the queries in 000.php weren't correct. I would be surprised if they worked on CS 2.0, but they're definitely not compatible with CS 2007.

        I went through all of the queries and completely rewrote them to return the right information. I removed the use of table prefixes, because two different ones are used ("cs_" and "aspnet_"). I also added SQL 2005-style data paging, which helps improve performance. Although I ran into a lot of timeout issues along the way (the system has about 400,000 posts), I have now been able to complete a basic import.

        The biggest outstanding issue is that most of the posts include a lot of HTML, mixed in with some BBcode. The HTML is limited in CS to just a dozen or so tags and a similarly restricted set of attributes. It looks like the cleaner is the recommended way to fix this, by changing the HTML to BBcode, although it looks like that will be a long, painful and error-prone process. Is there a better way? I can enable HTML in the forums, to make everything look right, but that doesn't seem like a viable long-term solution. Is there by any chance a way to mark the old posts as being OK to use HTML, while at the same time preventing the use of HTML in new posts?

        I would also like to import a few more fields than what was included with the basic CS package. For example, what values should be in votenum and votetot? Importing avatars would be cool, too, but I'm not sure where to start there yet, since I think CS stores avatars in the filesystem.
        Last edited by Sharkman; Mon 5th Nov '07, 2:03pm.
        http://anime.myfavoritegames.com/

        Comment


        • #5
          The importer was written for 2.0 as displayed by the importer. With out access to newer versions or test data I can't update the importer.

          The best way I could help is if you are willing to share a copy of the database I could update the importer to the 2007/3.0 version if that is the latest.
          I wrote ImpEx.

          Blog | Me

          Comment


          • #6
            Sure, I'm happy to send you a copy of the test database. If you have SQL Litespeed, the backup file is about 1.5GB, otherwise it's probably around 2GB for a standard backup. What's the best way to get that to you?

            I can also send the version of the communityserver package that I've modified, and that's now working, if you're interested. If you're not familiar with CS, some of the queries are a little messy....

            I will keep plugging away at it myself while you have a look at it. Any suggestions you might have on the HTML questions I posted earlier would be especially helpful.
            http://anime.myfavoritegames.com/

            Comment


            • #7
              The standard back up would be best due to the MSSQL server I test and dev on, the best way is to create the back up archive it then host it some where and start a support ticket here in the members area, ask for me and send the link or download details to it.
              I wrote ImpEx.

              Blog | Me

              Comment


              • #8
                I'm looking for a current version of the Community Server 2007 importer as well. How long does it generally take to create a new import script?

                Comment


                • #9
                  It took me about 5 or 6 hours to rewrite and test the SQL in the importer for CS 2007, which handles users, forums, threads and posts -- although some of that time was spent managing numerous timeout issues with FastCGI under IIS. I'm guessing it will be another 4 to 8 hours to fix the HTML and the other remaining problems.
                  Last edited by Sharkman; Thu 29th Nov '07, 8:17pm.
                  http://anime.myfavoritegames.com/

                  Comment


                  • #10
                    Originally posted by 007 View Post
                    I'm looking for a current version of the Community Server 2007 importer as well. How long does it generally take to create a new import script?
                    Doesn't take me long at all, I will be updating this one now. It all depends on the version changes.
                    I wrote ImpEx.

                    Blog | Me

                    Comment


                    • #11
                      Is there support for CS 2007 yet?

                      ASP / ASP.NET / PHP 5 / SQL 2005 / MySQL 5.x / DOTNETPANEL / SMARTERMAIL

                      Comment


                      • #12
                        That last update I did was for version 2, to support 2007 I'd need to see the source database.
                        I wrote ImpEx.

                        Blog | Me

                        Comment


                        • #13
                          Originally posted by Jerry View Post
                          That last update I did was for version 2, to support 2007 I'd need to see the source database.
                          Can the source db be SQL and the destination be MySQL? I also want to migrate from CS2007 to vB, but need to get all of my content over first.

                          Comment


                          • #14
                            Originally posted by DanaSoft View Post
                            Can the source db be SQL and the destination be MySQL? I also want to migrate from CS2007 to vB, but need to get all of my content over first.
                            MSSQL you mean ? and yes a lot of imports do that, though you must have MSSQL and MySQL support in the PHP build that is running impex.
                            I wrote ImpEx.

                            Blog | Me

                            Comment


                            • #15
                              Originally posted by Jerry View Post
                              MSSQL you mean ? and yes a lot of imports do that, though you must have MSSQL and MySQL support in the PHP build that is running impex.
                              Okay, thanks. As far as getting CS2007 converted; were you able to get a database to work from for an importer?

                              Comment

                              widgetinstance 262 (Related Topics) skipped due to lack of content & hide_module_if_empty option.
                              Working...
                              X