Options

Failure in Step 2 of upgrade to 4.00

mrQQmrQQ Member Posts: 239
Hey,

i'm having problem finishing upgrade of 3.01 client db to 4.00. When processing SplitValueEntries, in Step 2 of upgrade process, navision crashes with message "Error 131 - An attempt was made to move file pointer before beginning of file.", or something like that.

Has anyone seen anything like that and knows a solution for it?

(upgrade is being done on sql db)

Comments

  • Options
    krikikriki Member, Moderator Posts: 9,090
    The error lets me think that the upgradeprocess is writing to a textfile.
    If the textfile gets too big (more than 2^31 - 1), you get the error.
    The reason is that the file-pointer is an integer and if it gets to 2^31 or higher it is interpreted as a negative number.
    Check out where the process is writing into the textfile and what he is writing. If you don't need the info, you can put in comment the file.WRITE-command.
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • Options
    mrQQmrQQ Member Posts: 239
    nope, nothing is written to any text file..
  • Options
    krikikriki Member, Moderator Posts: 9,090
    I am afraid that in that case you will have to enable the debugger to see where the error is. The problem is that the process will be a lot longer with the debugger.
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • Options
    mrQQmrQQ Member Posts: 239
    As this is a system error (eg, Navision crashes after closing message box. It's not some C/SIDE / C/AL error), the debugger doesn't jump on that error. I managed to find the line which causes it manually - and it's just a simple INSERT to temporary table...
  • Options
    krikikriki Member, Moderator Posts: 9,090
    mrQQ wrote:
    As this is a system error (eg, Navision crashes after closing message box. It's not some C/SIDE / C/AL error), the debugger doesn't jump on that error. I managed to find the line which causes it manually - and it's just a simple INSERT to temporary table...
    And there are a lot of records in this temporary table?
    I ask this because Navision writes temporary tables in memory and if the memory is not enough, it writes to the disk. If the temptable gets bigger than 2 GB, Navision generates this error. (I just tested this.)
    Possible solutions:
    Use another temptable that is smaller
    or instead of using a temptable, use a (NEW) real table in the DB. This last solution will increase the time necessary to process a lot.
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • Options
    mrQQmrQQ Member Posts: 239
    Are you sure temptable cannot be bigger than 2GB? If that's so, then upgrade toolkit is a really crappy solution, cause i'm trying this on a quite small company (we have 5x bigger ones to convert!)

    Ok, i'll try to change it to temporary table, and see if it fixes the problem..
  • Options
    krikikriki Member, Moderator Posts: 9,090
    mrQQ wrote:
    Are you sure temptable cannot be bigger than 2GB?
    Yes, I just tried it. I created a temptable and filled it up. Meanwhile I looked at the temp-directory and there was 1 file growing until it reached 2GB. Then it stopped, and I looked at Navision and there was your error.
    Regards,Alain Krikilion
    No PM,please use the forum. || May the <SOLVED>-attribute be in your title!


  • Options
    mrQQmrQQ Member Posts: 239
    Boy, MS should really be slapped!
Sign In or Register to comment.