Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » EGit / JGit » Using JGit in multi threaded content management system(Using JGit in multi threaded content management system)
Using JGit in multi threaded content management system [message #1758161] Fri, 24 March 2017 07:32 Go to next message
vishal shah is currently offline vishal shahFriend
Messages: 2
Registered: March 2017
Junior Member
Hello All,

We are creating system which requires to store user documents. We want to give versioning support for documents. Can we use JGit for storing user document versions.

We are trying to figure out following points.
1. This is a load balanced server application so multiple users will upload their documents on multiple servers simultaneously. Can JGit support multiple concurrent commits from different machines if we put repository on network shared drive?
2. How to update head in case of concurrent multiple commits?
3. How to decide Parent Commit Id for new commits in case of concurrent commits? Are race conditions possible here?

Can you please guide us whether this is possible with JGit or not? And if yes then how?

Please forgive if question is very subjective and not specific Smile

Thanks and Regards.
Re: Using JGit in multi threaded content management system [message #1759721 is a reply to message #1758161] Mon, 17 April 2017 14:33 Go to previous messageGo to next message
Daniel Holz is currently offline Daniel HolzFriend
Messages: 3
Registered: April 2017
Junior Member
Git and JGit aren't a good fit for this model: git is good for tracking text-based content where you might need to ask difficult questions about the history of the content (e.g. when did this paragraph/line/word get changed, who by, what was their justification). Being able to see an older version of a document is a handy trick of git (not one of its headline features).

I'd recommend using a versioning file/document/object store, such as an S3 bucket with versioning (great scaling, concurrent updates with no races).

To answer your questions:

  1. yes, as well as git does
  2. by default, last update wins, so your system would have to ensure only one file was saved at a time e.g. with a distributed lock & queue
  3. merge conflicts are your bigger problem; you can enforce a linear history with the above

Re: Using JGit in multi threaded content management system [message #1760201 is a reply to message #1759721] Mon, 24 April 2017 14:09 Go to previous message
vishal shah is currently offline vishal shahFriend
Messages: 2
Registered: March 2017
Junior Member
Hello Daniel,

Thank you for the answer with helpful explanation. This will surely help us.

Thanks and Regards,
Vishal
Previous Topic:Clone single branch does not work
Next Topic:egit Broken after upgrade
Goto Forum:
  


Current Time: Thu Aug 17 02:09:23 GMT 2017

Powered by FUDForum. Page generated in 0.05906 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software