Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Properties & Annotations missing after copying commercial Qiqqa to Open Source Qiqqa library #286

Open
jaysmestad opened this issue Jan 6, 2021 · 4 comments
Labels
🐛bug Something isn't working 🤔question Further information is requested or this is a support question

Comments

@jaysmestad
Copy link

We copied our V79 Qiqqa libraries to V82 Internet Libraries by adding documents to the Internet Libraries from the local V79 libraries. In doing so, we lost many of our Annotations and received parse errors in Properties due to " " spaces. How can we migrate documents + metadata - including annotations, etc... from V79 Qiqqa to V82 open source Qiqqa - without loosing this critical information?

@GerHobbelt GerHobbelt added 🐛bug Something isn't working 🤔question Further information is requested or this is a support question labels Jan 6, 2021
@GerHobbelt
Copy link
Collaborator

We copied our V79 Qiqqa libraries to V82 Internet Libraries by adding documents to the Internet Libraries from the local V79 libraries.

Could you help me understand what you did exactly by elaborating on how you did this exactly? (Did you do this via right-mouse popup menu > copy document, or via another set of actions?)

How can we migrate documents + metadata - including annotations, etc... from V79 Qiqqa to V82 open source Qiqqa - without loosing this critical information?

The quickest and simplest way to do that would be to just install v82 over v79 (following the setup installer prompts, OK which the 'different version already present' message box appears and default choices all the way), in which case v82 should 'discover' all your local libraries, including intranet libs and v79 commercial Qiqqa Cloud libraries and everything should be available then, including annotations, as is. Note: as open source Qiqqa (v80 & upwards) doesn't know about Qiqqa Cloud, this will be your local copy, so when you know your local copy is out-of-sync with your cloud-stored lib, then please install v79 and use that one to sync to local, then re-install v82 to 'migrate'. From that point onwards these libraries will be marked as local/legacy.

Main issues I can come up with are:

  • none of the open source qiqqa versions are able to access Qiqqa Cloud: see above. Workaround is sync using v79, then re-installing v82 after sync
  • ex-cloud libraries are discovered but marked as 'read-only' in the Sync overview. Also, there's not yet an option to change the sync point, i.e. sync directories. (This currently is available in the bleeding edge dev code, but not yet released; here the libraries are then considered to have become 'Intranet' libraries and all except imported 'Qiqqa Bundle' libraries will have their read-only marker in Sync removed, but that change has not yet been released in a new Qiqqa version.

Despite the issues, you should at least be able to have qiqqa discover the (local copies of these) libs and you should be able to view and edit the PDF documents' metadata (BibTeeX, annotations, etc.) - the 'read-only marker' I mention above only concerns itself with the 'sync' ability & permission.


I still have the feeling, after writing this, that I might have misunderstood, so please correct me if I did. Thanks!

@jaysmestad
Copy link
Author

Thank you for your response. I had already followed the procedure that you described. I have a number of contributors that use the same Qiqqa libraries, so I setup a mapped network drive q:\Internet_Libraries and then created a new Internet Library for each local library that I had on v79 and are now local on my upgraded v82 version. I then added documents to the Internet Libraries I created by using the copy Library option to add documents. All of the documents were copied over to the new Internet Library, however the annotations were missing and there were parse errors on Properties for any original entry that had a " " space character in it. The question is, how can I migrate all content (annotations, etc...) from my local Libraries to my new Internet Libraries?

@jaysmestad
Copy link
Author

Since we use Qiqqa daily, can we rollback to V72 (premigration) and use the Web Libraries without the worry of loosing the data/functionality, or is there an end date where the Web Library storage will be turned off? Just asking if this is an option until we have functionality on V82+. Thank you!

@GerHobbelt
Copy link
Collaborator

Sorry for late response. You can roll back to Commercial Qiqqa v79 (I wouldn't advise going as far back as v72, as I never checked Qiqqa binary compatibility for downgrades below v79-commercial.)

In response to your question:

I then added documents to the Internet Libraries I created by using the copy Library option to add documents. All of the documents were copied over to the new Internet Library, however the annotations were missing and there were parse errors on Properties for any original entry that had a " " space character in it. The question is, how can I migrate all content (annotations, etc...) from my local Libraries to my new Internet Libraries?

Welllll, you might want to try the following method: it's nasty and comes with a couple of caveats, but should do the trick.
Before I describe that one, there's v83+ to consider as an alternative, as you can convert any library you have to an Intranet Library with that version onwards. (Currently there are only TEST releases for that version available, which may or may not exhibit other problems, so YMMV there at the day of writing (2021-jan-21).

Copying a library in it's entirety

Suppose you have a library 'X' you wish to copy to library 'Y'.

You have created library 'Y', say, as an Intranet Library. It is currently empty.

For example, say you only had the 'Guest' library before and created a new Intranet library 'Target', then you have two libraries in your Base Path like this:

image

** Note the cryptic INTRANET_... folder name: Qiqqa assigns unique GUID/Hash folder names like that, so you'll have to look carefully searching for your empty library.**

An empty library has an empty documents directory and very little else, except a tiny 5KByte Qiqqa.Library metadata database, as shown here:

image

Now we go to the directory where your source library is, for example my 'Guest' library.

Select all files and directories in there, EXCEPT the ones which have NOT been selected here either: copying those files would cause some havoc later on!

image

In Explorer, Copy and then go to the Target library's directory as shown before, where you PASTE, so Windows will copy everything into there.

NOTE: Windows Explorer will yak about overwriting the Qiqqa.Library file, which we SHOULD do: overwrite with your bigger source library file:

image

and

image

Caveats

Be very very careful with this procedure: copying data like that into a Qiqqa library directory will destroy any data that was previously stored in that library. Hence use this only for copying to newly created libraries, which are guaranteed to be empty.

Notes

I've noticed that more folks ask about 'copying libraries': apparently this is generally asked about due to the lack of a UI to edit a library's sync path and type. That has been resolved (if somewhat rudimentary) by v83, where you can go to the Sync Dialog and edit the sync path for any library, thus making any library you have instantly share-able via any Windows folder that's on USB stick, HD or part of your DropBox, Google Drive, etc. shared folders.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛bug Something isn't working 🤔question Further information is requested or this is a support question
Development

No branches or pull requests

2 participants