B4J Question B4XTable v. 1.24

LucaMs

Expert
Licensed User
Longtime User
I drove myself crazy trying to figure out why two versions of my project were executing IDENTICAL SQLite queries (the entire Sub was identical) with vastly different execution times.

After a couple of hours—and even trying to get help from Copilot—I discovered that ONLY unchecking the B4XTable library made the slow project run just as fast as the other one.

Naturally, I removed everything related to B4XTable and now I only display the data in the Logs window; but believe me, what was slowing down the processing was simply the "presence" of the B4XTable library!
 

aeric

Expert
Licensed User
Longtime User
Why not use v1.25?
B4X:
Version=1.25
B4J.DependsOn=B4XFormatter.b4xlib, jSQL, sqlite-jdbc, XUI Views
B4A.DependsOn=B4XFormatter.b4xlib, SQL, XUI Views
B4i.DependsOn=B4XFormatter.b4xlib, iSQL, XUI Views
 
Upvote 0

LucaMs

Expert
Licensed User
Longtime User
Why not use v1.25?
B4X:
Version=1.25
B4J.DependsOn=B4XFormatter.b4xlib, jSQL, sqlite-jdbc, XUI Views
B4A.DependsOn=B4XFormatter.b4xlib, SQL, XUI Views
B4i.DependsOn=B4XFormatter.b4xlib, iSQL, XUI Views
Because I saw...
1789464524373.png


Anyway, I modified the Manifest file :confused: (sqlite-jdbc-3.47.0.0) and now, 2 o 3 HOURS after ☹️ , my project is "fast"
 
Upvote 0

aeric

Expert
Licensed User
Longtime User
If I am not mistaken, B4XTable v1.25 is shipped with B4J v10.7

edit:
 
Upvote 0

aeric

Expert
Licensed User
Longtime User
...which I uninstalled ☹️ because it causes issues with CustomListView and Java 8. Only Java 8 generates standalone executable .jar files (UI).
Oh, but I prefer Jdk11+ with InnoSetup. So far I don't get any error using new versions of B4J.
 
Upvote 0

LucaMs

Expert
Licensed User
Longtime User
So the latest B4J do not have this B4XTable slow sql bug, right ?
Just to confirm from this discussion for better good for all readers.
SQLite queries slow down significantly if the project uses a different SQLite driver than the one used by the B4XTable library.

Based on what @aeric wrote:
B4J.DependsOn=B4XFormatter.b4xlib, jSQL, sqlite-jdbc, XUI Views
I think that in B4J version 10.7, the driver version is no longer specified in the Manifest and this might have resolved the issue.
 
Upvote 0

aeric

Expert
Licensed User
Longtime User
in B4J version 10.7, the driver version is no longer specified in the Manifest
In the past, we need to rename newer version to 3.7.2 or edit the version number in manifest inside the B4XTable.b4xlib to point to a specific version.
Actually it is not much different.
It still point to sqlite-jdbc but it seems it makes more sense than having a newer version 3.47.0 with the name sqlite-jdbc-3.7.2.
I never tested a project using two different versions of SQLite, one used by B4XTable, the other for general SQL queries. I think it will be conflicted.
 
Upvote 0
Top