For SQLiteFileSystem::ensureDatabaseFileExists(const String& fileName, bool checkPathOnly), the second parameter is checkPathOnly and it means check path only when it's true, but the only place it's called is DatabaseTracker::openTrackerDatabase(), which calls ensureDatabaseFileExists() with parameter createIfDoesNotExist and it expect the file will be created if it doesn't existed already. I think SQLiteFileSystem::ensureDatabaseFileExists() should be changed to do as its function name indicates, create the file if it's not existed already.
My bad, it's not a bug.
close it