a mistake error id is 642

sharkdim

Member
i have met a mistake error id is 642
"Disconnected because of PROGRESS client/server version mismatch. (642)"

in my system ,i have 2 version progress 8.3E and 9.1D

when i start 8.3E db server , the db server will be listened in port 40001,40010,40020
when i start 9.1D db server , the db server will be listened in port 50001,50010,50020

there are not any problem , when i start 9.1D client, it also is not any problem

but

when i start 8.3E client , the client will give me this error message (error id :642)

After testing, i found when i run 9.1D client ,the progress db will listened in port 3001
and when i run 8.3E client, the progress db will listened in port 3001,

so , i think it maybe has some conflict?

but when the first running client is 8.3E client and the 2st running is 9.1D ,it has not any problem... and listend in port 3001 and 3001...........................

It is a much vexed problem

my os : win2003 server ,
it is tested in the server(only one machine)

who can give me any suggestion?
 

TomBascom

Curmudgeon
9.1D is ancient, obsolete and unsupported.

8.3 is roughly 5 eons more ancient, obsolete and less supported.

The rule for connections between client and server is that the client must be the same release or 1 newer than the server. Thus a 9.1 client can connect to an 8.3 server but not vice versa.
 

sharkdim

Member
DLC91D:

db start scripts:
%DLC%\bin\_mprosrv %prodb%\testdb -L 8000 -c 350 -B 1000 -H localhost -S S_test -N TCP

client scripts:
%DLC%\bin\_progres -c 30 -d mdy -yy 1920 -Bt 350 -D 100 -mmax 3000 -nb 20 -s 20 -noshvarfix -pf %profile%\test.pf -ininame %profile%\progress.chr

test.pf:
-db testdb -ld test db -H localhost -S S_test -N TCP -trig triggers

S_test:
S_test 43500/tcp

===================================================
8.3E

....

services:
S_test2 52500/tcp
 

RealHeavyDude

Well-Known Member
You can't connect a Progress V8 client to a Progress V9 database. What will work is connecting a Progress V8 database from a Progress V9 client.

The -minport and -maxport settings are relevant if you are connecting through a firewall or explicitely want to limit the range where the database broker will dynamically allocate IP port numbers for the remote servers. The database broker will always use the next free IP port within the range as long as it can find one. If it can't you get a completely different error message.

The -S parameter specifies the IP port (or service name) on which the database broker is listening for connects. Immediately after the successfull connect the client will connect to one of the remote servers. If you try to start a second database broker with the same -S setting your will get an error stating that in the database log file.

HTH, RealHeavyDude.
 

sharkdim

Member
maybe call "spawned servers" listen at 3000 port....

======from progress kb
Progress spawned servers bind to whatever non-committed free
port they can find within the UNIX range 1025 to 2000, or
on Windows NT, within the 3000 to 5000 range.

=======
 

sharkdim

Member
the kb number:16158 give me the notes:
NOTE: You should not worry about reserving some ports
between the ranges. The spawned server code bypasses
reserved ports automatically.
 

sharkdim

Member
After testing ,when i modified the database startup script like below, i solved this mistake
add -minport and -maxport in 8.3E db start scripts.

db start scripts: 9.1D
%DLC%\bin\_mprosrv %prodb%\testdb -L 8000 -c 350 -B 1000 -H localhost -S S_test -N TCP -minport 5001 -maxport 5299



maybe:
9.1D/8.3E has a bug for it...... or my profile.......
 
Top