IP Driver/Server: Rebuild keys on start?

In the documentation under TopSpeed File Errors it says the following:
afbeelding

But does ip-server also automatically rebuild the keys?

The reason I am asking is that we’re having weird issues with our applications IP Server crashing, running a TPS fix on some files with params /A /K resolves it - even though it didn’t find any errors (I added /T but no log file is created, so I assume no errors are found) - and the docs also state it’s better to not use /K (See: tpsfix_command_line_parameters.htm [Clarion Community Help])

Yes.

The IP Driver Server can rebuild Key’s when the service is started.

When a user starts their exe, if the keys need to be rebuilt, the user’s exe can trigger the IPDS to rebuild the keys.

Now as this can be a long process rebuilding keys, its generally preferable to have the IPDS rebuild the keys, but there might be reasons why you wouldnt, like the user’s exe might want to build keys manually.

So you have the choice…

In both cases, one only has to start the coresponding .exe? So Client or IP Server?
Or does this need to be programmed in to function?

From memory, both.

[additional characters to breach the minimum 20 character limit]

Seems it doesn’t for our application, anything we need to configure?

What is it not doing? The IPDS not rebuilding the keys or the app?

I’ve never used the IP driver, but if you want to force a TPS table to build when you BUILD(), you’ll need to use “FULLBUILD” topspeed_driver_strings.htm [Clarion Community Help]

Otherwise, if the driver doesn’t detect a problem with the key, it won’t do a build.

I’ve been using the IP Driver since it was first released and I’ve never had a TPS keys problem.

Possibly, you will either need to use an IPEXEC procedure (initiated from the client app) or a source procedure that’s run when the data dll is loaded - in a multi user environment you’re not going to want every user doing this so you’d only want to do it on some condition or other.

Are you sure the error is Key related?

When the IP server crashes it normally creates an error text file. Your issue may not be the keys. There are other issues that can cause a crash or a freeze.

Have you run the radmin tool to ensure that all tables are read/write?

Are you running any procedures in the data dll that could be causing the problem?

Are you able to trap any fileerrors/errorcodes?

Have you excluded the IP Server data folder from anti-virus scanning?

Some strange table issues can be explained by how the ipdriver sets file names. especially in multithreaded environments. I created a template that puts a critical section around the naming of the file and after the file is open in the global ABC file section.

I have actually removed the IPDriver from most of my applications after using it for over 5 years. The biggest issue I have is if the database dies then you cant recover. The program just crashes. I have a closed network and regardless, I would still see clients with issues about 4 or 5 times a month. I have become much more adept at creating web API’s to do what I need over the network.

Jeff Hojka