Holger

with guille, damien and two students we are looking at how to improve the deployment of pharo and you scenario is��
really interesting.��

Stef

On Sat, Apr 15, 2017 at 7:59 AM, Holger Freyther <holger@freyther.de> wrote:

> On 15. Apr 2017, at 00:23, Juraj Kubelka <juraj.kubelka@icloud.com> wrote:
>
> Hi,

Hey!

>> As this is a server application and I run multiple VMs with the same image and there is no home directory I would prefer that no information is persisted at all. Can this be done? Have there been any changes in Pharo6 in regard to this?
>
> Do you think that checking if `FileIdentifier home` exist solves the issue?
>
> Can we detect headless state?
>
>>
>> It also seems to change from Fuel->Ston for the identifier? Is this intended?
>
> Yes, this is intended and should not produce problems.

Thank you for your quick reply. What I find odd is that this error seems to be coming from within:


GlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>ensure:
�� �� �� �� self shouldCallPreviousPersistence ifTrue: [
�� �� �� �� �� �� �� �� previousPersistence ensure: existingDictionary ].

So there is the "Fuel" Persistence and we want to migrate things. Fair enough but in the migration we do have:


>>load: existingDictionary
�� �� �� �� "It loads stored information into existingDictionary."
�� �� �� �� self preferences exists ifFalse: [
�� �� �� �� �� �� �� �� "This is a new computer, so we define new computer UUID.
�� �� �� �� �� �� �� �� User still has to agree about sending data if it is not has been done yet."
�� �� �� �� �� �� �� �� ^ self save: existingDictionary ].


So self preferences exists is true and now the old (non-existent data?) is being saved and we crash and exit on save.

* Why isn't the migration from Ston to Fuel more explicit?
* Why is "load" trying to save?
* Why is "ensure:" used instead of load?
* Not sure why "self preferences exists" seems to end in true?



have a nice weekend

�� �� �� �� holger



>> FileLocator(AbstractFileReference)>>ensureCreateDirectory
>> GlobalIdentifierFuelPersistence(GlobalIdentifierPersistence)>>ensureDirectory
>> GlobalIdentifierFuelPersistence(GlobalIdentifierPersistence)>>save:
>> GlobalIdentifierFuelPersistence(GlobalIdentifierPersistence)>>load:
>> GlobalIdentifierFuelPersistence(GlobalIdentifierPersistence)>>ensure:
>> GlobalIdentifierStonPersistence(GlobalIdentifierPersistence)>>ensure:
>> GlobalIdentifier>>ensure