cancel
Showing results for 
Search instead for 
Did you mean: 

What might prevent a JAR file from getting EBF'ed?

VolkerBarth
Contributor
4,281

Lately, applying 12.0.1 EBFs on my box tends to leave me alone with that undesired

"The jodbc.jar build does not match the shared object build."

message. That has happened with both 12.0.1.3537 and 12.0.1.3554. In contrast to Karim's very helpful explanation that DLLs may be locked and can not be updated, whereas JAR files can, the situation seems just opposite here (at least currently):

  • The DLLs (dbjdbc12.dll, dbjodbc12.dll) are updated to build 12.0.1.3554
  • Some of the jar files (jodbc.jar, sajdbc.jar, sajdbc4.jar) are updated to build 12.0.1.3554
  • One of them (jodbc4.jar) is not updated - it's still on 12.0.1.3519

Unfortunately, the latter one seems to get used by DBISQL and causes the error.

Note: I assured that neither DBSIQL nor SCView (nor their fast launchers) were running when the EBF was applied. There was no SQL Anywhere process running at all (and no other JDBC process, as far as I can tell), and I had restarted the box immediately before and after applying the EBF.

Well, I can copy the files from another box where EBF get applied without problems, but I would like to get to know what might cause this failing upgrade.

May this be due to the Java Quick Starter (jqs.exe) that was running by default? - That seems to be a program that might load often used JARs... - but I don't know whether it will preload some of the SQL Anyhwere jars and whether it will lock them.

Accepted Solutions (1)

Accepted Solutions (1)

VolkerBarth
Contributor

Lately, I tried to install 12.0.1.3769 and made sure that

  • the box was rebooted before (yes, even a cow knows that),
  • no SQL Anywhere processes were running and
  • no SQL Anywhere file was in use (by means of Jeff's hint to use the SysInternals HANDLE tool).

Still, after applying the EBF, the same bunch of JAR files was left unchanged. So apparently, they were not left unchanged because of being in use otherwise.

After that I checked the freshly generated setup log files, i.e. a SAInstall.log (with no clue) and a randomly named MSIzzzzz.LOG. The latter gave some clues:

Whereas for the correctly patched jodbc.jar file, the log was telling:

File: C:\\Programme\\Sybase\\SQL Anywhere 12\\Java\\jodbc.jar; Overwrite; Won't patch; Existing file is unversioned and unmodified - hash doesn't match source file

the problematic files had messages like the following one:

File: C:\\Programme\\Sybase\\SQL Anywhere 12\\Java\\jodbc4.jar; Won't Overwrite; Won't patch; Existing file is unversioned but modified

I don't know why they are treated as "modified" (other than I had copied them from another machine as stated in the question), but I then simply deleted them from the folder and re-applied the EBF.

That gave some "File xxx is missing" warnings, however those desired files have been copied now, with the MSIyyyy.LOG telling that

File: C:\\Programme\\Sybase\\SQL Anywhere 12\\Java\\jodbc4.jar; To be installed; Won't patch; No existing file

So in the end, I hope this strange problem is fixed (and I didn't have to uninstall and reinstall SA 12.0.1).

Former Member
0 Kudos

where did u find the MSIzzzz.LOG?

VolkerBarth
Contributor
0 Kudos

Like the SAInstall.log and other related files, in the TEMP directory - note, "zzzz" is a placeholder:)

Answers (0)