help in understanding GNUCash architecture

John Ralls jralls at ceridwen.us
Thu Mar 23 11:23:57 EDT 2017


> On Mar 23, 2017, at 8:13 AM, Станислав Тактаев <stanislav at taktaev.com> wrote:
> 
> Do I understand correctly, that you as yourself are not interested i in this line of development of GNUCash?
> 
No, but you seem not to understand that I refuse to have a private discussion about the development of GnuCash.
This will be my last reply to you until you start copying the list.

Regards,
John Ralls

> 
> 
> 23.03.2017 17:56, John Ralls пишет:
>> I'm not going to have a private conversation with you about this. Either subscribe to the list and discuss it publicly there or go away.
>> 
>> Regards,
>> John Ralls
>> 
>>> On Mar 23, 2017, at 7:19 AM, Станислав Тактаев <stanislav at taktaev.com <mailto:stanislav at taktaev.com>> wrote:
>>> 
>>> John, thank you for your answer!
>>> 
>>> Befor you say me,  I planned to use simple way, to substitute functions, that read and write data and copy data both locally (for speed) and distributed by calling blockchain API . What do you think, how big scope of such work, in programmer-monthes?
>>> 
>>> What class and methods responding for read/write?
>>> 
>>> 
>>> 
>>> 
>>> 23.03.2017 3:00, John Ralls пишет:
>>>> 
>>>>> On Mar 22, 2017, at 8:05 AM, stanislav at taktaev.com <mailto:stanislav at taktaev.com> wrote:
>>>>> 
>>>>> Dear Jonh!
>>>>> I saw git history on GNUCash and understood that you made a lot of commits to different modules.  
>>>>> I have the idea to connect blockchain to GNUCash as database. It seems to me very useful because, when successful,  GNUCash become first worldwide distributed accounting system.
>>>>> Can you help me to understand, how GNUcash DB engine designed and works "under the hood" and how do design and connect new DB engine?
>>>>> 
>>>>> If you are busy, could you recommend someone who can advise me about this?
>>>> 
>>>> Please do not contact developers directly. We have mailing lists for that: 
>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel <https://lists.gnucash.org/mailman/listinfo/gnucash-devel>
>>>> https://lists.gnucash.org/mailman/listinfo/gnucash-user <https://lists.gnucash.org/mailman/listinfo/gnucash-user>
>>>> 
>>>> Your question is a development one, so I'm copying gnucash-devel in this reply. You should subscribe to that list and be sure to copy the list on all of your future replies.
>>>> 
>>>> GnuCash at present uses the backend as a plain datastore: If the user has selected the XML backend, the file is loaded into memory at start up or when the user opens a new file, optionally saved (manually or automatically) periodically during the session, and saved again when the user closes GnuCash or opens a different file.
>>>> 
>>>> The SQL backend is similar in that the database is loaded in its entirety when opening a new session, but different in that any change to an object is immediately written back to the database.
>>>> 
>>>> Having to have everything in memory creates a bunch of limitations, especially with regards to multiple users accessing the data at once, so we have a long-term project to recast GnuCash as a normal SQL database application that loads only the data it immediately needs and can lock records for editing. Thanks to some poor design decisions
>>>> in the past and our decision to concurrently redo much of GnuCash's internals in C++ (from incorrectly done GObject code), this is a many-year project.
>>>> 
>>>> You're not the first to suggest a block-chain based backend, but so far no one has come up with a significant advantage or a reasonable plan for implementation. I'm looking forward to seeing what you propose.
>>>> 
>>>> Regards,
>>>> John Ralls
>>>> 
>>> 
>>> -- 
>>> С уважением, Станислав
>>> www.taktaev.ru <http://www.taktaev.ru/>
>>> www.facebook.com/s.taktaev <http://www.facebook.com/s.taktaev>
> 
> -- 
> С уважением, Станислав
> www.taktaev.ru <http://www.taktaev.ru/>
> www.facebook.com/s.taktaev <http://www.facebook.com/s.taktaev>


More information about the gnucash-devel mailing list