forkAt: 25 gem transactions

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

forkAt: 25 gem transactions

GLASS mailing list
Ciao.

I started a gem session with topaz.

After in this session i run some sub processes: [...................] forkAt: 25

        each of which with a tcp-ip connection read the data from a printer device,

                checking that the responses received are consistent with the data sent to the device.

At this point it is not clear to me how each sub-process manages the transaction with commit or abort.
       
Any sub process is independent from this point of view?

Any reference, indication?

Are there any limits to the number of subprocesses (forkAt:) that the system - a gem session can handle?

Thank you,

        Dario
_______________________________________________
Glass mailing list
[hidden email]
https://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: forkAt: 25 gem transactions

GLASS mailing list
Hello Dario,

A Smalltalk Process impacts the scheduling of execution of code but does not impact the object space visible to that code. Each Smalltalk Process instance runs in the same Gem and shares the same object space. Any  changes made to any object in that Gem is visible to all code running in that Gem. Any commit or abort made by any code in that Gem will affect all objects and code in that Gem.

I’m not aware of any design limit on the number of forked processes.

James

> On Mar 1, 2020, at 6:25 AM, dario.trussardi65 via Glass <[hidden email]> wrote:
>
> Ciao.
>
> I started a gem session with topaz.
>
> After in this session i run some sub processes: [...................] forkAt: 25
>
> each of which with a tcp-ip connection read the data from a printer device,
>
> checking that the responses received are consistent with the data sent to the device.
>
> At this point it is not clear to me how each sub-process manages the transaction with commit or abort.
>
> Any sub process is independent from this point of view?
>
> Any reference, indication?
>
> Are there any limits to the number of subprocesses (forkAt:) that the system - a gem session can handle?
>
> Thank you,
>
> Dario
> _______________________________________________
> Glass mailing list
> [hidden email]
> https://lists.gemtalksystems.com/mailman/listinfo/glass
>

_______________________________________________
Glass mailing list
[hidden email]
https://lists.gemtalksystems.com/mailman/listinfo/glass
Reply | Threaded
Open this post in threaded view
|

Re: forkAt: 25 gem transactions

GLASS mailing list
In reply to this post by GLASS mailing list
As James answered already ... transaction management of multiple sub processes within one gem can get very difficult and may lead to pretty difficult to find errors.

We have done a project around 1997-2005 with VA and Versant as an object oriented database and also had lots of sub processes and it took very much time to find all the errors in this structure.

So unless you know what you are doing ... try to live with one transaction process within one process

Marten
"dario.trussardi65 via Glass" < [hidden email]> hat am 1. März 2020 um 15:25 geschrieben:


Ciao.

I started a gem session with topaz.

After in this session i run some sub processes: [...................] forkAt: 25

each of which with a tcp-ip connection read the data from a printer device,

checking that the responses received are consistent with the data sent to the device.

At this point it is not clear to me how each sub-process manages the transaction with commit or abort.

Any sub process is independent from this point of view?

Any reference, indication?

Are there any limits to the number of subprocesses (forkAt:) that the system - a gem session can handle?

Thank you,

Dario
_______________________________________________
Glass mailing list

_______________________________________________
Glass mailing list
[hidden email]
https://lists.gemtalksystems.com/mailman/listinfo/glass