[ANN] Magma 1.4

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

[ANN] Magma 1.4

Chris Muller-3
cc: Magma list


---------- Forwarded message ----------
From: Chris Muller <[hidden email]>
Date: Fri, Dec 28, 2012 at 3:53 PM
Subject: [squeak-dev] [ANN] Magma 1.4
To: squeak dev <[hidden email]>


I am pleased to announce the release of Magma 1.4 for Squeak 4.4.
Magma is a database for Squeak that allows complex domain models to be
developed with virtually no regard for persistence issues.  Said
models can run entirely in memory without Magma even loaded in the
image or, by loading Magma, the size of the domain model can exceed
the size of RAM and be simultaneously accessed and updated by multiple
clients over a network with ACID properties.  Further, by copying the
database files to another machine on same network and starting a
server on them, uninterrupted 24x7 service is gained automatically --
either server can go down at any time and will be automatically sync'd
from the other when restarted.

Magma regards data-integrity as a top priority.  My oldest critical
database still running today was "born" in 2004 and has survived major
domain refactorings, 8 years of Magma upgrades, two hard-drive crashes
and several power-outages.  By hashing the contents of every commit,
and writing them atomically to disk (among other security measures),
Magma is an ultra-safe place to develop and store mission-critical
objects.  Correct mcz versions of domain code can be co-located in the
same repository as the model it runs, ensuring full application
recoverability even in the worst circumstances.

I've learned that transparent persistence is a complex problem that,
IMO, only a mature framework can deliver in a mature way.  Magma 1.4
brings heightened levels of stability, robustness and performance over
its predecessor.  Applications just run better, faster, with better
memory management, usability and performance.  The change-log has all
of the gory details.  This, combined with the recent release of Cog
2640, IMO, makes Squeak+Magma a fantastic platform.

PS - Even if you don't use Magma for persistence in your own
applications, simply starting an empty database and copying all of
your mcz's to it allows the Squeak IDE to show all "mc versions" and
the "mc origin" of any method as options on the methods menu, very
nice for general development.
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

mmimica
So where is the changelog?


On 28 December 2012 23:13, Chris Muller <[hidden email]> wrote:
cc: Magma list


---------- Forwarded message ----------
From: Chris Muller <[hidden email]>
Date: Fri, Dec 28, 2012 at 3:53 PM
Subject: [squeak-dev] [ANN] Magma 1.4
To: squeak dev <[hidden email]>


I am pleased to announce the release of Magma 1.4 for Squeak 4.4.
Magma is a database for Squeak that allows complex domain models to be
developed with virtually no regard for persistence issues.  Said
models can run entirely in memory without Magma even loaded in the
image or, by loading Magma, the size of the domain model can exceed
the size of RAM and be simultaneously accessed and updated by multiple
clients over a network with ACID properties.  Further, by copying the
database files to another machine on same network and starting a
server on them, uninterrupted 24x7 service is gained automatically --
either server can go down at any time and will be automatically sync'd
from the other when restarted.

Magma regards data-integrity as a top priority.  My oldest critical
database still running today was "born" in 2004 and has survived major
domain refactorings, 8 years of Magma upgrades, two hard-drive crashes
and several power-outages.  By hashing the contents of every commit,
and writing them atomically to disk (among other security measures),
Magma is an ultra-safe place to develop and store mission-critical
objects.  Correct mcz versions of domain code can be co-located in the
same repository as the model it runs, ensuring full application
recoverability even in the worst circumstances.

I've learned that transparent persistence is a complex problem that,
IMO, only a mature framework can deliver in a mature way.  Magma 1.4
brings heightened levels of stability, robustness and performance over
its predecessor.  Applications just run better, faster, with better
memory management, usability and performance.  The change-log has all
of the gory details.  This, combined with the recent release of Cog
2640, IMO, makes Squeak+Magma a fantastic platform.

PS - Even if you don't use Magma for persistence in your own
applications, simply starting an empty database and copying all of
your mcz's to it allows the Squeak IDE to show all "mc versions" and
the "mc origin" of any method as options on the methods menu, very
nice for general development.
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma



--
Milan Mimica
http://sparklet.sf.net

_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Chris Muller-4
The MC history.  For past Magma releases, there were new features but
for this release all the "features" are simply things to make apps run
better; like now if two clients change the same object, it won't be a
commit-conflict if they changed it exactly the same way.  Another is a
timeout stretch -- where the timeout is temporarily doubled for each
successive retry, so that if an app has just one large read/commit
that takes just over the timeout, it won't require fiddling with
timeout period..

But you can see these type of new features bogs down the press-release
with excruciating detail.  That's the nature of the release and so
that's why I refer


On Sat, Dec 29, 2012 at 6:50 AM, Milan Mimica <[hidden email]> wrote:

> So where is the changelog?
>
>
> On 28 December 2012 23:13, Chris Muller <[hidden email]> wrote:
>>
>> cc: Magma list
>>
>>
>>
>> ---------- Forwarded message ----------
>> From: Chris Muller <[hidden email]>
>> Date: Fri, Dec 28, 2012 at 3:53 PM
>> Subject: [squeak-dev] [ANN] Magma 1.4
>> To: squeak dev <[hidden email]>
>>
>>
>> I am pleased to announce the release of Magma 1.4 for Squeak 4.4.
>> Magma is a database for Squeak that allows complex domain models to be
>> developed with virtually no regard for persistence issues.  Said
>> models can run entirely in memory without Magma even loaded in the
>> image or, by loading Magma, the size of the domain model can exceed
>> the size of RAM and be simultaneously accessed and updated by multiple
>> clients over a network with ACID properties.  Further, by copying the
>> database files to another machine on same network and starting a
>> server on them, uninterrupted 24x7 service is gained automatically --
>> either server can go down at any time and will be automatically sync'd
>> from the other when restarted.
>>
>> Magma regards data-integrity as a top priority.  My oldest critical
>> database still running today was "born" in 2004 and has survived major
>> domain refactorings, 8 years of Magma upgrades, two hard-drive crashes
>> and several power-outages.  By hashing the contents of every commit,
>> and writing them atomically to disk (among other security measures),
>> Magma is an ultra-safe place to develop and store mission-critical
>> objects.  Correct mcz versions of domain code can be co-located in the
>> same repository as the model it runs, ensuring full application
>> recoverability even in the worst circumstances.
>>
>> I've learned that transparent persistence is a complex problem that,
>> IMO, only a mature framework can deliver in a mature way.  Magma 1.4
>> brings heightened levels of stability, robustness and performance over
>> its predecessor.  Applications just run better, faster, with better
>> memory management, usability and performance.  The change-log has all
>> of the gory details.  This, combined with the recent release of Cog
>> 2640, IMO, makes Squeak+Magma a fantastic platform.
>>
>> PS - Even if you don't use Magma for persistence in your own
>> applications, simply starting an empty database and copying all of
>> your mcz's to it allows the Squeak IDE to show all "mc versions" and
>> the "mc origin" of any method as options on the methods menu, very
>> nice for general development.
>> _______________________________________________
>> Magma mailing list
>> [hidden email]
>> http://lists.squeakfoundation.org/mailman/listinfo/magma
>
>
>
>
> --
> Milan Mimica
> http://sparklet.sf.net
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Amir Ansari
In reply to this post by Chris Muller-3
Awesome work, Chris!

Do you think there might be any issues running this latest version of Magma on Pharo?

Amir
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Chris Muller-3
I have not tried it but, almost certainly there would be..  :(

While I certainly would like for Magma to continue on Pharo, the
energy needed to maintain it cross-platform exceeds the level of
interest for that happen in the Pharo community.  Certainly, if there
is, I will assist, but Pharo seems be focused on newer solutions for
persistence and my own focus is on Squeak apps these days.



On Sun, Dec 30, 2012 at 1:59 AM, Amir Ansari <[hidden email]> wrote:
> Awesome work, Chris!
>
> Do you think there might be any issues running this latest version of Magma on Pharo?
>
> Amir
> _______________________________________________
> Magma mailing list
> [hidden email]
> http://lists.squeakfoundation.org/mailman/listinfo/magma
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Göran Krampe
Hey!

On 12/30/2012 11:57 PM, Chris Muller wrote:
> I have not tried it but, almost certainly there would be..  :(
>
> While I certainly would like for Magma to continue on Pharo, the
> energy needed to maintain it cross-platform exceeds the level of
> interest for that happen in the Pharo community.  Certainly, if there
> is, I will assist, but Pharo seems be focused on newer solutions for
> persistence and my own focus is on Squeak apps these days.

Just note - if by "newer solutions for persistence" you are somehow
perhaps referring to my blog post on Oak - I am not at all
representative of the "Pharo community". I have no clue what "they" are
focused on. My reasons for pursuing Oak instead of say Magma, is based
on my own personal interests in NoSQL etc, and has nothing to do with Pharo.

The reason for me using Pharo instead of Squeak is actually simply based
on the fact that those libraries I need for the work I am doing - runs
in Pharo.

I wish Magma all the best since I love OODBs and your work on Magma is
immense. Btw, do we have some kind of generic "benchmark" code that we
could play around with?

I think Magma would benefit strongly from showing the community what it
is capable of! :)

regards, Göran
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Chris Muller-4
Hi Göran, thanks for the note.

> Just note - if by "newer solutions for persistence" you are somehow perhaps
> referring to my blog post on Oak - I am not at all representative of the
> "Pharo community". I have no clue what "they" are focused on. My reasons for

Ah well you are a prominent, influential member of whichever community
you do work for because of your great work, accomplishments and
charisma.  Nevertheless, it was not just your Oak post but also recent
discussions in Pharo about persistence did not mention Magma at all.

I kept Magma up with Pharo up to 1.4 but now it is not converted to
the new FileDirectory replacement in 2.0.  Maybe it wouldn't be hard,
I don't have time to do it right now.

> pursuing Oak instead of say Magma, is based on my own personal interests in
> NoSQL etc, and has nothing to do with Pharo.
>
> The reason for me using Pharo instead of Squeak is actually simply based on
> the fact that those libraries I need for the work I am doing - runs in
> Pharo.
>
> I wish Magma all the best since I love OODBs and your work on Magma is
> immense. Btw, do we have some kind of generic "benchmark" code that we could
> play around with?

Mm, not generic but I'm sure you could adapt MagmaBenchmarker to
something more generic.  It's included when you install the Magma
Server 1.4 package from SqueakMap into Squeak 1.4.

> I think Magma would benefit strongly from showing the community what it is
> capable of! :)

Mmm, I wouldn't know.  I've no idea what it takes to "sell" software
these days.  I had always hoped that simply making it great and
supporting it well would lead to success but now I'm at the point
where I wish to consume Magma as a means to other goals than sell it.
 :)   But I will always keep it generic and support anyone who wants
to use it, of course.
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Göran Krampe
Hey!

On 12/31/2012 01:09 AM, Chris Muller wrote:

> Hi Göran, thanks for the note.
>
>> Just note - if by "newer solutions for persistence" you are somehow perhaps
>> referring to my blog post on Oak - I am not at all representative of the
>> "Pharo community". I have no clue what "they" are focused on. My reasons for
>
> Ah well you are a prominent, influential member of whichever community
> you do work for because of your great work, accomplishments and
> charisma.  Nevertheless, it was not just your Oak post but also recent
> discussions in Pharo about persistence did not mention Magma at all.

Well, thanks for all those big words! I hardly see myself like that.
Anyway, there are many options these days and "neglect" of Magma might
be due to other reasons (I don't really know, just guessing):

-  Is Magma available as a Metacello config? I think lots of Pharooners
are "expecting" this these days.

- The fact that Magma doesn't stand on top of any external "trusted"
technology like say MySQL or some NoSQL db etc might also be conceived
as a negative.

In my own book this last part also has some truth. I want to stand on
someone's shoulders. :)

> I kept Magma up with Pharo up to 1.4 but now it is not converted to
> the new FileDirectory replacement in 2.0.  Maybe it wouldn't be hard,
> I don't have time to do it right now.

Right.

>> pursuing Oak instead of say Magma, is based on my own personal interests in
>> NoSQL etc, and has nothing to do with Pharo.
>>
>> The reason for me using Pharo instead of Squeak is actually simply based on
>> the fact that those libraries I need for the work I am doing - runs in
>> Pharo.
>>
>> I wish Magma all the best since I love OODBs and your work on Magma is
>> immense. Btw, do we have some kind of generic "benchmark" code that we could
>> play around with?
>
> Mm, not generic but I'm sure you could adapt MagmaBenchmarker to
> something more generic.  It's included when you install the Magma
> Server 1.4 package from SqueakMap into Squeak 1.4.

Ok, interesting. Oh well, time, time... :)

>> I think Magma would benefit strongly from showing the community what it is
>> capable of! :)
>
> Mmm, I wouldn't know.  I've no idea what it takes to "sell" software
> these days.  I had always hoped that simply making it great and
> supporting it well would lead to success but now I'm at the point
> where I wish to consume Magma as a means to other goals than sell it.
>   :)   But I will always keep it generic and support anyone who wants
> to use it, of course.

I know, it's a hard game.

Anyway, I appreciate your work a lot and who knows, I might use it yet
again some day. :)

regards, Göran
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

Amir Ansari
In reply to this post by Chris Muller-4
The problem is that Smalltalk community is too small; it's not surprising there isn't a 'critical mass' of users - not including Seaside, of course. I think it's enough (for now) just to keep up awareness of Magma, particularly in the Pharo community. (I'm really surprised those persistence discussions omitted Magma!)

As for lack of time - yes, I know the problem well :-(

Anyway, your work is greatly appreciated. I happily talk about Magma (and OODBs) whenever I get the chance!
_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma
Reply | Threaded
Open this post in threaded view
|

Re: [ANN] Magma 1.4

NorbertHartl
In reply to this post by Chris Muller-4

Am 31.12.2012 um 01:09 schrieb Chris Muller <[hidden email]>:

Nevertheless, it was not just your Oak post but also recent
discussions in Pharo about persistence did not mention Magma at all.

Well, I can speak only for myself but I didn't mention magma because it was one of the obvious choices and I was sure someone will bring it up. In my current project I plan to use magma. So it would be wonderful if magma would run on pharo 1.4.

thanks for all your effort. Sometimes you don't get the attention you deserve but that doesn't tell you nobody is interested.

Norbert


_______________________________________________
Magma mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/magma