Is DevonThink sync half-baked?

To my understanding, the newly introduced and much-touted sync feature is irrelevant for those of us who work primarily with indexed, rather than imported, material.

Case in point: I maintain a large bibliographic database (Bookends), with PDF attachments residing in my Dropbox and easily accessible via the Finder.

All these PDFs are also indexed within my DevonThink database. I use DevonThink to link research notes with the PDFs and add PDF annotations.

Obviously, Bookends attaches these PDFs to bibliographic entries via hard links. I cannot move the PDFs to another folder or, alas, import them into PDF, because my bibliography database would perish all its attachments.

Given this scenario, how could the sync feature be applicable? I do not want DevonThink to create a copy of my indexed files because these files are already synced via Dropbox and, more important, must remain on the same path for the sake of Bookends.


Do you need to sync to another machine? Do you need another machine to access your database(s)?

Yes, and yes.

To bump this thread, and to further specify issue, why not enable DevonThink to sync all imported items and only hard links to indexed items? Such indexed items could then be synced via Finder & Dropbox as usual, and it would be the user’s responsibility to ensure that they do not become orphaned (as has always been the case with synced items anyway).

“Syncing only hard links to indexed items” could be a user-selectable option, of course. As such it would leave currently satisfied users of the sync feature unaffected while making it usable for those of us who index our content.

A couple of other users have suggested different behavior for indexed items. I am completely fine with this and will cheerfully implement any suggestion that can’t be proven harmful. I don’t have a strong opinion about how indexed files are handled. I don’t have any opinion, really, since I’ve never used them.

The only issue is that I can’t implement every individual feature, as much as I’d like to. Sync is complex and difficult to test, which is why the development process has taken as long as it has. If you’d be kind enough to start a thread (or edit this one) and add a poll, and get some sort of consensus or “mandate from the masses” on what to do about indexed files, I’ll cheerfully do it.

The only catch is that it has to work perfectly with how indexed files are currently handled (e.g. if you share a database with someone who has the opposite setting, you need to be able to get what you want from each other without losing anything of your own), and that is extremely difficult with Sync as it is currently designed.

Thanks, ndouglas.

I do not have your authority on the tech aspects of the matter, of course, but that last requirement does indeed seem like a tall order, and possibly quite error-prone. Could it be that syncing and sharing have been somewhat too conflated into a single feature? Syncing, to my mind, should merely replicate the exact data structure on multiple machines. Which means that, if I chose to sync only the hard links to indexed items, and not the indexed items themselves, I would expect the very same content to be synced across machines, including the hard links but not the indexed files themselves.

It seems to me a bit contradictory to “allow” indexed items to become orphaned locally (e.g. simply by moving or renaming a file with the Finder), while at the same time being so “protective” of indexed content across machines.

I don’t see how that’s possible since a hard link to an indexed item would be essentially identical to that item. Copying or synching that link would copy the content. Maybe you mean symbolic (soft) links?

Coming in late but sjk is right. A hardlink cannot cross filesystem boundaries, even Mac to Mac ones. You can hardlink on the same volume but not on two different ones. And even with a symbolic link, I don’t see how this would work as the link could point to an unavailable source.

Sorry, but I’m a bit confused by the suggestion.

Me, too… partly because I don’t know how syncing currently handles indexed items.

Does it? I’d certainly expect synced indexed items to remain unchanged, whether they reference valid files or become orphans relative to an active database instance. Plenty of reasons it would be undesirable, at least by default, to “follow” them and copy content.

If anything, I’d think (and hope) it’s an issue of indexed items being “followed” or not when copying, moving, or (now) syncing databases rather than being something sync-specific.

[edit: I guessed wrong about how indexed items are synched, according to Nathan’s explanation. :blush:]

OK gentlemen, apologies for the confusion and thanks for the responses. I’m ceasing fire for now to explore this a little better. Will strike back if needed.

OK gentlemen, apologies for the confusion and thanks for the responses. I’m ceasing fire for now to explore this a little better. Will strike back if needed.

It’s all good, macula. And no offense, I hope. Hardlinks are very cool things but not without their weak spots too.

Likely only temporary confusion, which I don’t mind. :slight_smile:
I’m especially curious about desktop syncing topics/issues right now, which motivated me to butt in.

I was anticipating a “… their soft spots (links)” joke in there. :slight_smile:

LOL, sjk! 8)
Shame on me for missing a good pun opportunity (or would that be a ‘punportunity’ - UGH! :unamused: )

To close this OT drift, just wanted to mention this interaction was hilarious to me:

Glad I can amuse you, sjk. ROFL.