Search globally (incl. within subfolders), and by rating?

Please report back what you find when you got time for it.

As a software engineer with over 30 years experience, I am well aware of that :sunglasses: My point is that it doesn’t require a dedicated database that has to be maintained by the app. Apple spent years perfecting the indexing algorithm - after a very shaky start apparently. So the logical thing to do was for me not to re-invent the wheel.

Another advantage of using the Spotlight mechanism is that I could leverage any saved search, executed from within Finder and execute it again from within my app.

The Spotlight APIs allow me to execute searches asynchronously and the resulting query stays active as long as I want to monitor for changes, so I can change (for example) a keyword on a file from within any other app and respond to that change by removing the changed file from the search results in my app. We use my app at our club photo to rate images for exhibitions because it gives us the ability to narrow down the search results whilst reviewing the thumbnails.

It would be really good if Microsoft’s mechanism is as flexible but I no longer program for Windows as it costs money for the developer tools, which are free from Apple.

@TorsteinH It appears that my drives are indexed but the tests I was conducting were on files held on a USB3 SSD (a SATA SSD connected via an adapter) which was not indexed at that time unlike the rest of my disks.

I conducted one search and didn’t find the RAW images on the USB3 drive and went to do another search and File Explorer suggested that if my other searches had been slow then I should try indexing the drive which I did and then appeared to find the RAW images?

So I will move the tests to an HDD which is already marked as being indexed. I will use all my test images and set XnViewMP to search.

So I set XnViewMP to find all images with a 2 star rating and 22:52 minutes later it had processed 62,567 files and found 23,446 JPG, 87 TIF, 8,011 RW2 & 614 DNG (I believe it processed 62,567 indexed file entries) and found 409 files that fitted the search criteria.

Here is a snapshot showing some JPGs and RAW files meeting the criteria

I selected all the images and attempted to pass them to PL6.3.0 but that initially failed until I was able to pass 239 successfully followed by the rest. I selected the ‘External selections’ and created a project with the first 239 images and then added the 167 to create a ‘Project’.

Up to this point things had gone reasonably well but then they turned a little “weird”.

I placed a search request for “**” and this was the response

image

I didn’t get 406 images I got 326 images albeit very quickly?

What had happened to the “missing” images well 66 have become 5 star, 8 have become 4 star, 10 have become 3 star, 319 are still 2 star (earlier tests account for the additional 2 star images found in the search), 1 has become 1 star and 2 have become 0 star!

How can this happen, unfortunately very easily since DxO changed the rules of “first discovery” on release PL5.3.0 with this option set this way

Prior to that release the metadata would always be taken from the image metadata when an image was first discovered, the metadata in the DOP was ignored.

But from PL5.3.0 onwards DxPL will take the metadata (in this case the ‘Rating’) from the DOP in preference to the sidecar file with the setting as shown, AS(OFF),

i.e.

from the DOP

instead of the Xmp sidecar file

I am not a fan of the change since it was introduced @DxO_Support-Team and @Musashi it should always have been an additional option to take the metadata from the image/sidecar on “first discovery” even with AS(OFF), the option has been “overloaded” unnecessarily, in my opinion.

Now I have the issue of the wrong data in the database which in this case I could ignore since it is only a test.

However, I try not to walk away from a challenge so

  1. I could use all the ‘Filters’ I used to locate the entries which were not 2 star in this case and ‘Read from image’ to pull the metadata from the sidecar file or

  2. ‘Write to image’ to overwrite the metadata with the values from the database, that came from the “old” DOPs when they were “discovered” and imported by the revised “first discovery” procedure with Auto Synchronisation off AS(OFF).

  3. But what I can’t do is reverse a 2 star ‘Filter’ or a 2 star (“**”) search, i.e. ‘Filter’ on NOT 2 star or ‘Search’ on NOT 2 star to locate all the entries that need “fixing” at the same time.

@Joanna the only reason for my “ire” was the way that you used to apparently “criticise” DxPL and its use of a database in old posts, it seemed to me that you considered databases as an unnecessary element.

As it happens this unnecessary element is used by most other products, yours included except that yours is an operating system database rather than an SQLite database and yours cannot be moved to the Windows platform as a consequence.

I actually applaud your use of a reliable element of the operating system, I simply had not spotted your cunning “ruse”.

They don’t call me Baldrick for nothing you know - in fact they don’t call me Baldrick at all :crazy_face: :roll_eyes:

1 Like

I wouldn’t dare call you anything :grin: