Question Slow connections on OpenEdge 11.2 Character Client (Windows)

Xile

New Member
Hi all,

I have a client where the users complain about the slow response on their Character Client connections when running queiries and reports. They also use a web client application (connecting via Application Server connections to the same DB) that shows little or no lag.
I am unable to get network infrastructure from the client's internal IT department, but what I can give is the following:

Progress Version = OpenEdge 11.2 (character connections are through the Client Networking licence)
DB = Enterprise DB

Client PC's are all Win 7 machines with minimum spec of 2GB RAM and Core 2 Duo 2.5 CPU
Server is a virtual server running Server 2008 R2 with 8 GB RAM and 8 CPU's at 2.7.

I do know that the LAN connections are all 10/100 (which I suspect is the issue, but they state that there is no heavy traffic on the network)

Can anyone suggest a solution to speed up the response times or is it just down to a slow network? Also, please let me know if I need to provide any other information?

Thanks again.
 

TomBascom

Curmudgeon
I didn't realize that Win7 could run on Core 2 Duos with just 2GB of RAM! That's amazing.

You might try seeing what sort of ping times you get from client to server. That often helps to establish if the issue is a Progress issue or an infrastructure issue. Traceroute can also be helpful.

Can you get the server side -Ma -Mn, -Mi, & -Mm parameters?

Are they using any of the new -prefetch options?

Are the AppServer connections shared memory connections? They are on the same server so they /could/ be -- and that would certainly explain why they show no lag.
 

Xile

New Member
Thanks for the reply (you'd be surprised what machine can run Win7... Have a Celeron 1.8 with 1 GB RAM at home that I loaded)

I have requested that the client's IT department run a 10 min ping so that we can monitor the network speed.

The DB parameters (all of them to make sure) are as follows:

BROKER 0: (333) Multi-user session begin.
BROKER 0: (5326) Begin Physical Redo Phase at 3200 .
BROKER 0: (7161) Physical Redo Phase Completed at blk 3269 off 5423 upd 218.
BROKER 0: (13547) At end of Physical redo, transaction table size is 256.
BROKER 0: (452) Login by svc-sgl-proclin on CON:.
BROKER 0: (5644) Started for Proclin using tcp IPV4 address 0.0.0.0, pid 4812.
BROKER 0: (4234) Progress OpenEdge Release 11.2 build 1196 on WINNT .
BROKER 0: (4281) Server started by <username> on CON:.
BROKER 0: (6574) Started using pid: 4812.
BROKER 0: (4235) Physical Database Name (-db): <Db Path>\nhosdb.
BROKER 0: (4236) Database Type (-dt): PROGRESS.
BROKER 0: (4237) Force Access (-F): Not Enabled.
BROKER 0: (4238) Direct I/O (-directio): Not Enabled.
BROKER 0: (-----) LRU mechanism enabled.
BROKER 0: (-----) Number of LRU force skips (-lruskips): 0
BROKER 0: (-----) Number of LRU2 force skips (-lru2skips): 0
BROKER 0: (4239) Number of Database Buffers (-B): 2000.
BROKER 0: (-----) Number of Alternate Database Buffers (-B2): 0.
BROKER 0: (9422) Maximum private buffers per user (-Bpmax): 64.
BROKER 0: (4240) Excess Shared Memory Size (-Mxs): 61.
BROKER 0: (10014) The shared memory segment is not locked in memory.
BROKER 0: (4241) Current Size of Lock Table (-L): 5000000.
BROKER 0: (13953) Maximum Area Number (-maxArea): 32000.
BROKER 0: (4242) Hash Table Entries (-hash): 631.
BROKER 0: (4243) Current Spin Lock Tries (-spin): 48000.
BROKER 0: (6526) Number of Semaphore Sets (-semsets): 3.
BROKER 0: (13924) Maximum Shared Memory Segment Size (-shmsegsize) 1024 Mb.
BROKER 0: (4244) Crash Recovery (-i): Enabled.
BROKER 0: (6573) Database Blocksize (-blocksize): 4096.
BROKER 0: (4245) Delay of Before-Image Flush (-Mf): 3.
BROKER 0: (4247) Before-Image File I/O (-r -R): Reliable.
BROKER 0: (4249) Before-Image Truncate Interval (-G): 0.
BROKER 0: (4250) Before-Image Cluster Size: 524288.
BROKER 0: (4251) Before-Image Block Size: 8192.
BROKER 0: (4252) Number of Before-Image Buffers (-bibufs): 20.
BROKER 0: (-----) Record free chain search depth factor 5 (-recspacesearchdepth)
BROKER 0: (9238) BI File Threshold size (-bithold): 15.1 GBytes.
BROKER 0: (6552) BI File Threshold Stall (-bistall): Disabled.
BROKER 0: (4254) After-Image Stall (-aistall): Not Enabled.
BROKER 0: (4255) After-Image Block Size: 8192.
BROKER 0: (4256) Number of After-Image Buffers (-aibufs): 20.
BROKER 0: (-----) Partition Manager cache size (-mtpmsize): 1024
BROKER 0: (8527) Storage object cache size (-omsize): 1024
BROKER 0: (4257) Maximum Number of Clients Per Server (-Ma): 37.
BROKER 0: (4258) Maximum Number of Servers (-Mn): 5.
BROKER 0: (4259) Minimum Clients Per Server (-Mi): 1.
BROKER 0: (-----) Use pollset mechanism for client/server (-pollset): Disabled
BROKER 0: (-----) Server network message wait time (-Nmsgwait): 2
BROKER 0: (-----) Delay first prefetch message (-prefetchDelay): Disabled
BROKER 0: (-----) Prefetch message fill percentage (-prefetchFactor): 0
BROKER 0: (-----) Minimum records in prefetch msg (-prefetchNumRecs): 16
BROKER 0: (-----) Suspension queue poll priority (-prefetchPriority): 0
BROKER 0: (4260) Maximum Number of Users (-n): 151.
BROKER 0: (4261) Host Name (-H): <host name>.
BROKER 0: (4262) Service Name (-S): <service name>.
BROKER 0: (14268) TCP/IP Version (-ipver) : IPV4
BROKER 0: (4263) Network Type (-N): tcp.
BROKER 0: (4264) Character Set (-cpinternal): ISO8859-15.
BROKER 0: (4282) Parameter File: C:\Progress\OpenEdge112\nhosdb.pf.
BROKER 0: (5648) Minimum Port for Auto Servers (-minport): 3000.
BROKER 0: (5649) Maximum Port for Auto Servers (-maxport): 5000.
BROKER 0: (8865) This broker supports both 4GL and SQL server groups.
BROKER 0: (12540) Size of JTA transaction table (-maxxids): 100
BROKER 0: (9336) Created shared memory with segment_id: 40894464
BROKER 0: (12813) Allowed index cursors (-c): 60.
BROKER 0: (12814) Group delay (-groupdelay): 10.
BROKER 0: (12815) Lock table hash table size (-lkhash): 740951
BROKER 0: (12816) Maxport (-maxport): 5000
BROKER 0: (12817) Minport (-minport): 3000
BROKER 0: (12818) Message Buffer Size (-Mm): 1024
BROKER 0: (12821) Use muxlatches (-mux): 1
BROKER 0: (12823) Semaphore Sets (-semsets): 3
BROKER 0: (13870) Database Service Manager - IPC Queue Size (-pica) : 64.0 KBytes.
BROKER 0: (13896) TXE Commit lock skip limit (-TXESkipLimit): 10000.
BROKER 0: (15219) Encryption enabled: 0
BROKER 0: (15218) Encryption cache size (-ecsize): 1000
BROKER 0: (15824) Multi-tenancy enabled: 0
BROKER 0: (10471) Database connections have been enabled.


The AppServers are running shared memory, so like you said, that would account for the speed.
 

TomBascom

Curmudgeon
That is an almost completely untuned "out of the box" configuration. The only thing that seems to have been changed from defaults is -L 5,000,000 -- which is a crazy value. If the application truly needs 5 million locks you've got all sorts of problems.

Unless this db is less than 10MB -B 2000 is ridiculous. I rarely use a value less than 100,000.

-Mn should be 50, -Ma 5

-prefetchDelay should be enabled

Try -prefetchFactor 100 and -prefetchNumRecs 100

-Mm 8192 (must bet set for clients too)

Are you supporting SQL connections? If you are then you should have a dedicated SQL broker.

Is the data in type 2 storage areas? (show the .st file...)

Is after-imaging enabled? If your data is at all valuable and you want to keep your job it must be.
 

Chris Hughes

ProgressTalk.com Sponsor
Interesting BI threshold limit, probably something to do with that locks setting!

Out of interest are you writing your own systems?, because if you have purchased this solution I would hope that it ships with a better standard setup than this and or instructions on the key parameters.

BTW - I have no doubt that Tom and a handful of other guys on this forum, could turn your DB's into roaring lions if you give them the opportunity.

cheers.
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
You are also loading startup parameters from a file (C:\Progress\OpenEdge112\nhosdb.pf). You should post its contents as well.
 
Top