1

Topic: Redeloy Fails - Memory Allocation Failure

Hi,

I have come across the following problem several times most recently with Nware 1.4.4. After several redeploys as I am refining and debugging my program, the role on the Nion will not start after a redeployment. In fact is starts momentarily and then  stops, while the conman role runs fine. On checking the log it seems that there is a problem with RAM allocation (or rather reuse of it) in the Nion. Here is an excerpt from the log:-


12/11/2008 14:02:47    1263    note    piond/role_manager    role is stopped
12/11/2008 14:02:46    1262    fault    piond/role_manager    role fault
12/11/2008 14:02:46    1261    fault    piond/fault_policy    more than two errors in less than five minutes; stopping engine
12/11/2008 14:02:46    1260    note    project    user logged off: defaultuser
12/11/2008 14:02:46    1259    note    piond/mute    muted: menu command
12/11/2008 14:02:46    1258    fault    piond/sound_engine    exception during poll: error [player(180)] exception during player initialization: /dev/pion/sharc_stream0: ioctl -- Cannot allocate memory
12/11/2008 14:02:46    1257    error    piond/pacman    error [player(180)] exception during player initialization: /dev/pion/sharc_stream0: ioctl -- Cannot allocate memory
12/11/2008 14:02:46    1256    note    project    user logged on: defaultuser
12/11/2008 14:02:45    1255    note    piond/role_manager    role is running

If having failed to start I then power cycle the Nion it will then start fine, so it seems that there is a problem with the internal memory housekeeping on redeployment.
Also, deploying a minimal project does not help, there are message players in the project, and,  all devices within the project are 'up to date'

2

Re: Redeloy Fails - Memory Allocation Failure

Hi James-

How many message players are there in the project file?

Certainly the point that it does not start when deployed, but does start when the NION is rebooted is quite interesting. I am not sure why it would do that.

Do you need many message players in the project file?
Could you use a smaller number of message players but have them load the wave files they are going to play when they are requested?

At the InfoCom08 show I had set up a wave file playback sytem that had 16 wave files but only one player, since only one file would be played an any given time. Our booth guests used one of the prototype 7" touchscreen controllers to trigger which file they wanted to playback. This file was then loaded into the player via a snapshot device and then played. There is a very short control delay required between the loading of the snapshot and the triggering of the play button.

I'm just grasping at straws here based up on the information in your message regarding the wave players in your project. The more useful information you tell me about your situation, the more I can help you.

Good luck and have fun!

-Josh

Josh Millward
Burnt Orange Studios

3

Re: Redeloy Fails - Memory Allocation Failure

Josh,

If I remember correctly, there is a quirk in nWare/NION regarding media files. If you change them in nWare (Add, delete etc..) the old files, which can be large, are not deleted on the NION. Is this the memory error or would that show up as a 'disk full' error??

Nihilism is best done by professionals

4

Re: Redeloy Fails - Memory Allocation Failure

Josh,

I have 6 wav players looping continously generating the alarm tones whenever they are required and then 6 seperate players that play the chimes required for each of the control panels. To use less players is probably possible but considerably more complicated.

As it works at the moment I do not think it justifies changing the file, as it works well.... the only problems arise when I am in the development stage of the project when I am doing many redeploys, so really this is a pointer to what i think is a memory allocation problem when you do a redeploy.

5

Re: Redeloy Fails - Memory Allocation Failure

Interestingly though, although I have the wav file players in my project as yet I have NOT added the actual wav files. So keeping the file small and quick to deploy while I work on the logic side of my programming.

Remember everybody, that this fault only occurs after several deploy cycles with nothing having changed in any of them apart from minor file changes.

6

Re: Redeloy Fails - Memory Allocation Failure

cobraguy wrote:

Josh,

If I remember correctly, there is a quirk in nWare/NION regarding media files. If you change them in nWare (Add, delete etc..) the old files, which can be large, are not deleted on the NION. Is this the memory error or would that show up as a 'disk full' error??

Steve-

The problem you are describing happens when you try to delete media files from the project file. This will be fixed with the upcoming release of NWare 1.5.0. There is not a problem with them being removed from the NION hardware, they were just getting stuck in the project file that was being uploaded to the NION hardware upon deployment. When deploying a project anew to the NION it does a complete erase of all the files that were uploaded last time so they are no longer stored on the Compact Flash card within the NION.

This is not where James's problem lies.



tucan wrote:

Interestingly though, although I have the wav file players in my project as yet I have NOT added the actual wav files. So keeping the file small and quick to deploy while I work on the logic side of my programming.

Remember everybody, that this fault only occurs after several deploy cycles with nothing having changed in any of them apart from minor file changes.

James-

Ahh, this is a point I did not understand. This only happens after you go through several deploy cycles.

This being the case, I would say that you are on the right path with the cause of the problem.

Are you using any scripts or other media files in your project? (I know you mentioned that you have not yet added the wave files for the wave file players yet)

I do believe that I have previously heard of a situation when using python scripting this type of an error will come about because the python scripts from previous deployments are still running in the system. I will have to look back through the list and see if I can find that.

Thank you for sharing this issue with us James!

-Josh

Josh Millward
Burnt Orange Studios

7

Re: Redeloy Fails - Memory Allocation Failure

Definately using python scripts. It would simply not be possible to do what i am doing without them!

However as I have a conman, all (at least 99% anyway) of the scripts are located to run on that rather than the Nion, and those that run on the Nion are pretty trivial.

However the conman does not exhibit the same problem as far as I can see....

8

Re: Redeloy Fails - Memory Allocation Failure

That is good to know!

Thanks again for sharing this information with us, James!

-Josh

Josh Millward
Burnt Orange Studios