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

macOS Journal DB filename with dot underscore #5904

Closed
guruz opened this issue Jul 14, 2017 · 10 comments
Closed

macOS Journal DB filename with dot underscore #5904

guruz opened this issue Jul 14, 2017 · 10 comments
Assignees
Labels
Discussion ReadyToTest QA, please validate the fix/enhancement
Milestone

Comments

@guruz
Copy link
Contributor

guruz commented Jul 14, 2017

@dragotin did you notice that a filename like ._sync_7d56ce96981f.db is COMPLETELY INVISIBLE in Finder while .csync_journal.db is visible in light grey if you have
defaults write com.apple.finder AppleShowAllFiles YES set.

Did we think about the implications this could have for end users when moving files/folders/directories etc? @michaelstingl

But maybe normal users anyway don't have AppleShowAllFiles set?

FYI @ckamm @ogoffart @SamuAlfageme

Feel free to close this issue, I just wanted to mention it.

@michaelstingl
Copy link
Contributor

Did we think about the implications this could have for end users when moving files/folders/directories etc

If someone moves the full sync folder, it's included. I don't see a "real" problem,

@ogoffart
Copy link
Contributor

There was another issue because of ._ in the name: #5633 (but that was fixed by removing the _ for samba shares)

@matthiasschroder
Copy link

The problem is not only that it is hidden because of the leading dot, it is even a special hidden file. macOS reserves the ._xyz for storing extended attributes of a file xyz on filesystems that do not support extended attributes. As such the Finder will never display or make accessible in any form an item called ._xyz, even if the Show Hidden Files is activ. ._xyz is very special, and never ever visible. So using ._syncNNNNN is very bad prctice

@labkode
Copy link
Member

labkode commented Nov 27, 2018

@guruz @michaelstingl @ogoffart as @matthiasschroder described, we usually have to ask the user for this file while doing support as the owncloud sync longs are not enough for debugging the problem.
Having this file completely invisible (and we do not want to ask end-users to type commands in a Termninal) makes our support life more difficult. If there is not any strong technical reason for having that prefix I propose to change it back to .csync_journal.db or somethink alike.

@ckamm ckamm added this to the 2.6.0 milestone Dec 17, 2018
@ckamm
Copy link
Contributor

ckamm commented Dec 17, 2018

Since the effects from ._ were accidental we likely want to address this by changing the db name. A primary concern with the name was making sure it's excluded from sync. That was the prime reason for the ._ prefix in the first place; we were not aware of the OSX complications at that time.

@guruz
Copy link
Contributor Author

guruz commented Dec 17, 2018

@ckamm maybe the code here could just be swapped around a bit to prefer the non-underscore-path?
4291ea4#diff-0b6f105ffd4493a278873f32b7c170c1R84

@ckamm
Copy link
Contributor

ckamm commented Dec 18, 2018

@guruz Yes. We needed ._sync for client versions <= 2.3.2 apparently. Now that we don't support these versions anymore we could go for plain .sync by default. Since the journal file name is stored in the config it'd be easy and safe to do this for new folders without needing lots of migration code.

@ckamm ckamm self-assigned this Dec 18, 2018
ckamm added a commit that referenced this issue Dec 18, 2018
This is to avoid issues on OSX, where the ._ prefix has special meaning.

Originally (before 2.3.2) ._ was necessary to guarantee exclusion. But
since then the .sync_ prefix is excluded as well.

This does not affect existing database files.
ckamm added a commit that referenced this issue Dec 19, 2018
This is to avoid issues on OSX, where the ._ prefix has special meaning.

Originally (before 2.3.2) ._ was necessary to guarantee exclusion. But
since then the .sync_ prefix is excluded as well.

This does not affect existing database files.
ckamm added a commit that referenced this issue Dec 19, 2018
This is to avoid issues on OSX, where the ._ prefix has special meaning.

Originally (before 2.3.2) ._ was necessary to guarantee exclusion. But
since then the .sync_ prefix is excluded as well.

This does not affect existing database files.
@ckamm ckamm added ReadyToTest QA, please validate the fix/enhancement and removed PR available labels Dec 19, 2018
@ckamm
Copy link
Contributor

ckamm commented Dec 19, 2018

New databases will be created with the .sync_ prefix.

@labkode
Copy link
Member

labkode commented Jan 7, 2019

@ckamm @guruz Thank you!

@HanaGemela
Copy link
Contributor

New databases are created with the .sync_ prefix
Tested in 2.6.0alpha2 (build 12128), macOS 10.14.5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion ReadyToTest QA, please validate the fix/enhancement
Projects
None yet
Development

No branches or pull requests

7 participants