Question about sandboxing

Ruslan Zasukhin ruslan_zasukhin at valentina-db.com
Sat Sep 22 02:59:36 CDT 2012


On 9/22/12 7:24 AM, "Frank Lemke" <> wrote:

Hi Frank,

I will CC this answer to Valentina list to share info to all.

> Yup, that works, Ruslan! Thanks a lot. I have overseen this.

Very good.

> As to my journaled question, does it mean the database is not working in
> journaled mode when sandboxed?

* sandboxed application can create files only in location pointed MANUALLY
by a user on his computer, right?

* So with sandboxing - we see that each such application should on first
start or later ask user about permission for such location(s)


* Tell me please, you going deploy some database file with app right on
installation?  IF yes where it is located?  Inside of .app ?

    Or user at first installs app then CREATE NEW db file?

Note, how XCODE.app works after sandboxing.
They have add into prefs dialog  TAB-panel   DOWNLOADs,
Where user MUST self click  Install command line tools .

Not sure but it seems Exists few places on HDD where OSX allows write some
files for sandboxed app ....

Anyway, sandboxing changes something.
May be you need on first run show dialog to user and say:
    App need save some files, please show location(s) where ...



> And another one, does the database provide thread-safe read access?

Inside of vkernel there is no mutexs so far.
So you need use own mutex.

Using threads  better to use Vcursor.
Each thread has own cursor.
This is better than Vtable, because each cursor has own buffer RECORD where
loads values of field of some record of table T.

Using cursor you need mutex only Navigation operations:
       First Last Next Prev

Because they load values from disk/cache into cursor buffer.
After that you can read values of cursor fields without mutex.





>>> On 9/21/12 9:36 PM, "Frank Lemke" <> wrote:
>>> 
>>>> I checked all this, also otool. Cannot identify any problem...
>>>> OK, here is the link to the crash version:
>>>> 
>>>> http://www.knowledgeminer.eu/beta/bin/km_crash.dmg
>>>> 
>>>> For comparision, here the version that works:
>>>> 
>>>> http://www.knowledgeminer.eu/download.html
>>>> 
>>>> Both versions are identical, except this one tiny ID difference.
>>> 
>>> Hi Frank,
>>> 
>>> It seems mistake that into .app package
>>> you have specify  vcomponents name
>>> But V4CC is in 64 bit, and in fact you did use
>>> 
>>>  /usr/local/lib/vcomponents_x64
>>> 
>>> 
>>> I cannot check this on your app, because if I try rename it not starts at
>>> all, I think works protection of codesign.
>>> 
>>> So please try on your side. Correct script to create folder vcomponents_x64
>>> inside of .app


-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list