Hello Taher, I would like to work on to provide patches for this effort.
Thanks & Regards, Devanshu Vyas. On Thu, Jul 20, 2017 at 12:15 PM, Taher Alkhateeb < slidingfilame...@gmail.com> wrote: > Thank you all for your feedback and votes. I just counted 12 positive > votes to go ahead. > > I have created a JIRA [1] for this task and I will work on it, but it > would be fantastic if someone is willing to take the lead on this so > that I can focus on refactoring the rest of the core framework. Also > any volunteers to commit or provide patches are more than welcomed. > > [1] https://issues.apache.org/jira/browse/OFBIZ-9501 > > On Tue, Jul 18, 2017 at 6:57 PM, Nicolas Malin <nicolas.ma...@nereide.fr> > wrote: > > +1 > > > > > > > > Le 14/07/2017 à 11:59, Taher Alkhateeb a écrit : > >> > >> Hello Everyone, > >> > >> Data loading in OFBiz is quite fragile. A small change could crash the > >> system and finding out the reason can be difficult. I really felt the > >> pain of this when trying to disentangle the framework from data > >> dependencies on plugins [1]. > >> > >> I've been thinking about a solution to reduce fragility, and here are > >> my thoughts: > >> - The less data files the better. > >> - The less data the better. > >> - The less distance (e.g. same directory) between data files the better. > >> - No circular dependencies (file dependencies should be like a tree). > >> - Fail fast [2]. > >> > >> Therefore, I suggest the following action points: > >> - Create a directory structure similar to [3] in the datamodel > component. > >> - For any data that two or more files depend on, immediately move it > >> to the common-<reader>.xml file. > >> - For any data that does not belong to any domain (e.g. marketing, > >> content, etc ..) move it to the common-<reader>.xml. > >> - Maintain a strict dependency hierarchy of demo -> seed -> > seed-initial. > >> - Gradually and carefully move data from all applications to the > >> datamodel component as per above guidelines. > >> - Cleanup and refactor the data as we move it including any tests that > >> depend on it. > >> > >> What do you think of this proposal? Does it sound reasonable? Also > >> given the size of what I'm proposing I think we need multiple people > >> to work on this. So is anyone interested in taking part in this > >> initiative? > >> > >> Cheers, > >> > >> Taher Alkhateeb > >> > >> [1] https://issues.apache.org/jira/browse/OFBIZ-9322 > >> [2] > >> https://lists.apache.org/thread.html/a18b5d4086a07ff34a0cb950999e8f > 8e869a6aa7efa2fc866a75a7b6@%3Cdev.ofbiz.apache.org%3E > >> [3] directory structure: > >> data/ > >> ├── demo > >> │ ├── accounting-demo.xml > >> │ ├── common-demo.xml > >> │ ├── content-demo.xml > >> │ ├── humanres-demo.xml > >> │ ├── manufacturing-demo.xml > >> │ ├── marketing-demo.xml > >> │ ├── order-demo.xml > >> │ ├── party-demo.xml > >> │ ├── product-demo.xml > >> │ ├── shipment-demo.xml > >> │ └── workeffort-demo.xml > >> ├── seed > >> │ ├── accounting-seed.xml > >> │ ├── common-seed.xml > >> │ ├── content-seed.xml > >> │ ├── humanres-seed.xml > >> │ ├── manufacturing-seed.xml > >> │ ├── marketing-seed.xml > >> │ ├── order-seed.xml > >> │ ├── party-seed.xml > >> │ ├── product-seed.xml > >> │ ├── shipment-seed.xml > >> │ └── workeffort-seed.xml > >> └── seed-initial > >> ├── accounting-seed-initial.xml > >> ├── common-seed-initial.xml > >> ├── content-seed-initial.xml > >> ├── humanres-seed-initial.xml > >> ├── manufacturing-seed-initial.xml > >> ├── marketing-seed-initial.xml > >> ├── order-seed-initial.xml > >> ├── party-seed-initial.xml > >> ├── product-seed-initial.xml > >> ├── shipment-seed-initial.xml > >> └── workeffort-seed-initial.xml > >> > > >