Bare repos can be at time transferred at the filesystem level (with the target location in read-only until the transfer is complete) across Gerrit servers.
I am running on defaults for JGit and Gerrit.
Example:
Server-1 (read-only) has repo1.git bare repository
Server-2 (read-only) receives repo1.git via rsync and stay in read-only until the transfer is complete
I do not see anything wrong with the above approach, as long as Server-2 is read-only until the transfer is complete.
Steps to reproduce the problem
Rsync repo1.git repo with the exception of the bitmap
run a git clone against Server-2 / repo1.git using Git/SSH
Observe on the Server-2 in the sshd_log that the bitmap is not used
Complete the rsync of repo1.git, which will transfer the bitmap
run a git clone against Server-2 / repo1.git using Git/SSH
Actual behavior
At point 5. the sshd_log shows that the bitmap is not used. After a full restart of Gerrit, the action 5. reports that the bitmap is used in the sshd_log.
Expected behavior
At point 5. the sshd_log shows that the bitmap is used
Relevant log output
See the log of the sshd_log execution on a Gerrit v3.5.6 (JGit 6.6.0 @74fa245b3c3ccf13afcbec7911c7c8459e48527d)
Version
All releases from v4.10.* onwards
Operating System
Linux/Unix
Bug description
Context
Bare repos can be at time transferred at the filesystem level (with the target location in read-only until the transfer is complete) across Gerrit servers.
I am running on defaults for JGit and Gerrit.
Example:
I do not see anything wrong with the above approach, as long as Server-2 is read-only until the transfer is complete.
Steps to reproduce the problem
Actual behavior
At point 5. the sshd_log shows that the bitmap is not used. After a full restart of Gerrit, the action 5. reports that the bitmap is used in the sshd_log.
Expected behavior
At point 5. the sshd_log shows that the bitmap is used
Relevant log output
See the log of the sshd_log execution on a Gerrit v3.5.6 (JGit 6.6.0 @74fa245b3c3ccf13afcbec7911c7c8459e48527d)
At point 2. clone without bitmap:
At point 5. clone with bitmap:
After a Gerrit restart, at point 5. clone with bitmap:
Other information
See Change 1174396